Multiple GPUs and Python#
Partial list of projects that @bkj worked on from Nov 2020 - May 2021.
If you have any questions about these projects, please open an issue tagging @bkj.
Documentation#
-
Markdown guides to getting started w/ essentials
Applications#
mgpu_sssp - MultiGPU SSSP implementation, using thrust + NCCL. Equivalent to VN HIVE workload.
cuda_ppr - CUDA PPR (Parallel PageRank Nibble) implementation, using
thrust
-
branch:master - re-worked single GPU implementation of application classification
branch:dev/mgpu - MGPU implementation using thrust. Performance issues because of blocking
cudaMalloc
andcudaFree
branch:dev/mgpu_manual_reduce - changes to
dev/mgpu
to remove performance issues by doing manual memory management. A little ugly, so haven’t merged todev/mgpu
ormaster
yet.
-
branch:dev/mgpu2 – MGPU implementation of
graph_projections
HIVE workload
Python bindings#
python_essentials - Python wrappers for
essentials
usingpybind11
andpytorch
Works, but may be difficult to install given version (in)compatabilities between
pytorch
,cudnn
, andcuda
versions
Scratch#
bkj/essentials - workspace for all of my
essentials
experimentsI think most everything interesting here has been merged to
gunrock/essentials
-
Scratch repository for experiments w/ MGPU filters in
thrust
Unstable#
https://github.com/cfld/cugraph
Fork of
cugraph
showing how to bind toessentials
APIsNeeds to be updated to work w/ current versions of
cugraph
and `essentials
https://github.com/bkj/async-queue-paper (private – can give access)
Scratch repository for async cuda experiments
https://github.com/cfld/cuda-async-bfs (private – can give access)
Minimal implementation of async BFS in CUDA