|3 days ago||19 days ago|
|MIT License||Apache License 2.0|
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
The AMD “Aldebaran” GPU That Won Exascale
5 projects | news.ycombinator.com | 15 Nov 2021
Incorrect. Vulkan has compute shaders, which are generally usable. Libraries like VkFFT demonstrate basic signal processing in Vulkan. This can certainly be expanded upon, & there are numerous other non-graphical uses.
There is a Vulkan ML TSG (Technical Subgroup), which is supposed to be working on ML. Even Nvidia is participating, with extensions like VK_NV_cooperative_matrix, which specifically target the ml tensor cores.
There's people could probably say this better/more specifically, but I'll give it a try: Vulkan is, above all, an general standard for dispatching & orchestrating work usually on a GPU. Right now that work is most of often graphics, but that is far from a limit.
SYCL is, imo, the opposite of where we need to go. It's the old historical legacy that CUDA has, of writing really dumb ignorant code & hoping the tools can make it run well on a GPU. Vulkan, on the other hand, asks us to consider deeply what near-to-the-metal resources we are going to need, and demands that we define, dispatch, & complete the actual processing engines on the GPU that will do the work. It's a much much much harder task, but it invites in fantastic levels of close optimization & tuning, allows for far more advanced pipelining & possibilities. If the future is good, it should abandon SYCL and CUDA, and bother to get good at Vulkan.
VkFFT - GPU Fast Fourier Transform library API guide release
1 project | reddit.com/r/programming | 22 Aug 20211 project | reddit.com/r/vulkan | 22 Aug 2021
Hello, I am the creator of the VkFFT - GPU Fast Fourier Transform library for Vulkan/CUDA/HIP and OpenCL. In the last update, I have released explicit 50-page documentation on how to use the VkFFT API. It describes all the necessary steps needed to set up the VkFFT library and explains the core design of the VkFFT. This is a very important update, as it should make VkFFT easier to use.
VkFFT can now perform Fast Fourier Transforms of arbitrary length
1 project | reddit.com/r/CUDA | 26 Jul 2021
For general optimized radix transforms, you might want to check the benchmark plots on GitHub or my Nvidia GTC talk where I describe them in detail.1 project | reddit.com/r/programming | 25 Jul 20211 project | reddit.com/r/vulkan | 25 Jul 2021
Performace-wise, VkFFT achieves up to half of the device bandwidth in Bluestein's FFTs, which is up to up to 4x faster on <1MB systems, similar in performance on 1MB-8MB systems and up to 2x faster on big systems than Nvidia's cuFFT. VkFFT is also >5x times faster than AMD's rocFFT for Bluestein's systems. You can check the benchmark and precision scripts on VkFFT's GitHub repo.
VkFFT now supports Discrete Cosine Transforms
2 projects | reddit.com/r/vulkan | 19 Jun 2021
VkFFT supports convolution calculations - see samples 7, 8 and 9 in the VkFFT repository.
VkFFT now supports Discrete Cosine Transforms on GPU
1 project | reddit.com/r/programming | 19 Jun 2021
Announcing neuronika 0.1.0, a deep learning framework in Rust
7 projects | reddit.com/r/rust | 15 Jun 2021
The Vulkan docs online are quite good; if i remember they have "hello world" type tutorials as well. An take a look at something like Vulkan fft that has both Vulkan and opencl backends. Looking at "real" projects will of course tens to obscure the main points, but can be helpful for comparison.
Vulkan and HPC
1 project | reddit.com/r/vulkan | 6 Jun 2021
It's still pretty niche, honestly. Though https://github.com/DTolm/VkFFT is a good counterexample.
Blender 3.0 takes support for AMD GPUs to the next level
5 projects | news.ycombinator.com | 16 Nov 2021
Kompute: General purpose GPU compute framework for cross vendor graphics cards
1 project | news.ycombinator.com | 30 Oct 2021
[D] Deep Learning Framework Benchmark
3 projects | reddit.com/r/MachineLearning | 6 Oct 2021
There is also kompute that could be interesting (I participated a bit on making some examples).
AMD pays Blender at least $140,000 annually and after two years still no Vulkan support and Blender removes all support for AMD GPUs and optimized Blender for Nvidia exclusively. (Cycles X)
1 project | reddit.com/r/AMDGPU | 23 Sep 2021
Kompute: kompute API is litterally what you said doesn't exist; a fast hardware vender independent compute API. Its built on Vulkan compute, its open source and its backed by the Linux foundation. https://kompute.cc/
Vulkan Kompute v0.8.0 Released: General Purpose GPU Accelerated Compute for Cross Vendor Graphic Cards (AMD, NVIDIA, Qualcomm & Friends). Adding Convolutional Neural Network (CNN) Implementations, Edge-Device Support, Variable Types Extension, MatMul Benchmarks, Binary Optimisations and more 🚀
2 projects | reddit.com/r/programming | 18 Sep 2021
Adding to u/axzxc1236's answer and the further detail from the answer confirming tested in Vulkan 1.1.x - 1.2.x, I can see that your GPU GeForce GT 640M would indeed be supported https://vulkan.gpuinfo.org/listreports.php?devicename=GeForce+GT+640. You can just try to run the hello world for Kompute once you install the Vulkan drivers. Please do feel free to add any general thoughts or suggestions in this open issue https://github.com/KomputeProject/kompute/issues/522 projects | reddit.com/r/programming | 18 Sep 2021
Thank you very much again for opening the issue - it seems it was mainly out of date docs, which has now been addressed https://github.com/KomputeProject/kompute/issues/2481 project | reddit.com/r/cpp | 18 Sep 2021
Would be great to hear your thoughts if you do get a chance to try it out! Feel free to add your thoughts in this open issue for general suggestions https://github.com/KomputeProject/kompute/issues/52. I agree there are multiple (very deep) rabbit-holes when it comes to GPU computing. If you are interested there are some high level summary videos that should provide at least some intuition, namely this one which focuses on C++ and the Vulkan SDK (https://www.youtube.com/watch?v=Xz4fiQNmGSA), and this one that focuses on the higher level Python interface and ML usecase (https://www.youtube.com/watch?v=AJRyZ09IUdg)
Spectrum OS: a declarative, reproducible, compartmentalized Linux
7 projects | news.ycombinator.com | 14 Sep 2021
What I miss most in QubesOS is ability to connect my GPU hardware to a specific VM (or app, or container) the way I do the mic, camera, and USB peripherals. I don't need it for rendering the browser GUI, where the CPU is wholly adequate, but it would be helpful for e.g. mpv, and as a back-end for OpenCL/OpenMP programs. This seems like it ought to be much easier than trying to share such a GPU with multiple VMs simultaneously.
The problem seems to be how to do it securely. You could imagine faking GPU hardware for the VM image to talk to. But maybe Vulkan would be a better API? Has any work been done on such a wrapper?
I find Kompute (https://github.com/KomputeProject/kompute) that seems to be a serious attempt at building general computation infrastructure on top of Vulkan. Is exposing a Vulkan wrapper, and building the rest top of that, a practical avenue?
Can I decompress on the GPU?
3 projects | reddit.com/r/GraphicsProgramming | 19 Aug 2021
You can use Vulkan Kompute, Futhark, HIP (which just got official CMake support with CMake 3.21), or plain-old OpenCL.
What tools are missing in Python?
10 projects | reddit.com/r/Python | 5 Aug 2021
Check out Kompute.
What are some alternatives?
ROCm - ROCm - Open Source Platform for HPC and Ultrascale GPU Computing
rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU code 🚧
OpenCLOn12 - The OpenCL-on-D3D12 mapping layer
wgpu - Safe and portable GPU abstraction in Rust, implementing WebGPU API.
futhark - :boom::computer::boom: A data-parallel functional programming language
godot-proposals - Godot Improvement Proposals (GIPs)
hotwire-rails - Use Hotwire in your Ruby on Rails app
HIPIFY - HIPIFY: Convert CUDA to Portable C++ Code
neuronika - Tensors and dynamic neural networks in pure Rust.
clspv - Clspv is a prototype compiler for a subset of OpenCL C to Vulkan compute shaders
datoviz - ⚡ High-performance GPU interactive scientific data visualization with Vulkan
clvk - Experimental implementation of OpenCL on Vulkan