Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

List GPU Devices on Linux

You can list GPU devices using the following command on linux.

:::bash
lspci -v | grep VGA

Machine Learning Frameworks Supporting Managing GPU Resources

High-level Scientific Libraries with Built-in GPU Support

Low-level Libraries for General Purpose GPU Computing

  1. CUDA and Vulkan (successor to OpenCL) are the 2 most popular frameworks for GPU computing. CUDA is commerical and for Nvidia GPUs only while Vulkan is opensource and support more brand of GPUs. Generally speaking, CUDA has slight better performance than Vulkan on Nvidia GPUs. It is suggested that you go with CUDA if you want to squeeze the most out of performance.

Rust

https://github.com/zakarumych/gpu-alloc

https://github.com/zakarumych/gpu-descriptor Backend agnostic descriptor allocator for Vulkan-like APIs

pathfinder

pathfinder is a fast, practical, GPU-based rasterizer for fonts and vector graphics using OpenGL 3.0+, OpenGL ES 3.0+, WebGL 2, and Metal.

GPU Computing in Python

Please refer to GPU Computing in Python for more details.

https://weeraman.com/put-that-gpu-to-good-use-with-python-e5a437168c01

https://docs.anaconda.com/anaconda/user-guide/tasks/gpu-packages/

https://towardsdatascience.com/python-performance-and-gpus-1be860ffd58d

https://developer.nvidia.com/how-to-cuda-python

https://devblogs.nvidia.com/numba-python-cuda-acceleration/

mandelbrot_numba.ipynb

https://gabdube.github.io/python/vulkan/2019/01/10/python-and-vulkan-01.html

Beyond CUDA: GPU Accelerated Python for Machine Learning on Cross-Vendor Graphics Cards Made Simple

C++

Java

Graphics Rendering

OpenGL https://github.com/mcfletch/pyopengl

PyOpenGL

GLFW https://github.com/glfw/glfw GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan application development. It provides a simple, platform-independent API for creating windows, contexts and surfaces, reading input, handling events, etc.

vulkano

External Graphics Card

https://www.pcworld.com/article/2984716/how-to-transform-your-laptop-into-a-gaming-powerhouse-with-an-external-graphics-card.html

https://www.laptopmag.com/articles/best-egpus

References