cjmcv / hpc

Learning and practice of high performance computing (CUDA, Vulkan, OpenCL, OpenMP, TBB, SSE/AVX, NEON, MPI, coroutines, etc. )

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Learning and practice of high performance computing

Practice

cux -- An experimental framework for performance analysis and optimization of CUDA kernel functions.

https://github.com/cjmcv/hpc/tree/master/0-frameworks/cux

tag: cuda / simd / openmp.

hcs -- A heterogeneous computing system for multi-task scheduling optimization.

https://github.com/cjmcv/hpc/tree/master/0-frameworks/hcs

!!!DEPRECATED - See ptk instead.

tag: std::thread / cuda.

vky -- A Vulkan-based computing framework.

https://github.com/cjmcv/hpc/tree/master/0-frameworks/vky

!!!DEPRECATED - See ptk instead.

tag: vulkan.

mrpc -- Mini-RPC, based on asio.

https://github.com/cjmcv/hpc/tree/master/0-frameworks/mrpc

tag: distributed computing.


Learning

Distributed computing

mpi/mpi4py

Heterogeneous computing

cuda
vulkan
opencl

Thread

std
openmp
tbb

Coroutines

libco
asyncio

SIMD

sse/avx
neon

About

Learning and practice of high performance computing (CUDA, Vulkan, OpenCL, OpenMP, TBB, SSE/AVX, NEON, MPI, coroutines, etc. )

License:Apache License 2.0


Languages

Language:C++ 72.8%Language:Cuda 20.7%Language:Assembly 1.9%Language:CMake 1.7%Language:C 1.6%Language:Python 1.1%Language:Shell 0.1%Language:Batchfile 0.1%