Vulkan/CUDA/HIP/OpenCL/Level Zero/Metal Fast Fourier Transform library (by DTolm)

VkFFT Alternatives

Similar projects and alternatives to VkFFT

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better VkFFT alternative or higher similarity.

VkFFT reviews and mentions

Posts with mentions or reviews of VkFFT. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-06.
  • VkFFT now supports Apple Metal API - M1 Pro GPU FFT benchmarking
    2 projects | reddit.com/r/programming | 6 Oct 2022
    Hello, I am the creator of the VkFFT - GPU Fast Fourier Transform library for Vulkan/CUDA/HIP/OpenCL and Level Zero. In the latest update, I have added support for Apple Metal API, which will allow VkFFT to run natively on modern Apple SoC. I have tested it on MacBook Pro with an M1 Pro 8c CPU/14c GPU SoC single precision on 1D batched FFT test of all systems from 2 to 4096. Achieved bandwidth is calculated as 2*system size divided by the time taken per FFT - minimum memory that has to be transferred between DRAM and GPU:
    2 projects | reddit.com/r/programming | 6 Oct 2022
  • Any good compute shader tutorials?
    2 projects | reddit.com/r/vulkan | 8 Sep 2022
    Another possible project to look at is https://github.com/DTolm/VkFFT
  • [R] Differentiable Conv Layer using FFT
    2 projects | reddit.com/r/MachineLearning | 30 Mar 2022
    Source: I have some of these things implemented in VkFFT that confirm the mentioned scaling of execution times.
  • Resources for Vulkan GPGPU searched
    6 projects | reddit.com/r/vulkan | 12 Jan 2022
  • Where to Learn Vulkan for parallel computation (with references to porting from CUDA)
    5 projects | reddit.com/r/vulkan | 4 Jan 2022
    https://github.com/DTolm/VkFFT is a project to look at.
  • The AMD “Aldebaran” GPU That Won Exascale
    5 projects | news.ycombinator.com | 15 Nov 2021
    Incorrect. Vulkan has compute shaders[1], which are generally usable. Libraries like VkFFT[2] 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.

    [1] https://vkguide.dev/docs/gpudriven/compute_shaders/

    [2] https://github.com/DTolm/VkFFT

    [3] https://www.khronos.org/assets/uploads/developers/presentati...

  • 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.
  • 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.
  • L5's back camera now taking photos at 4208x3120 resolution
    2 projects | reddit.com/r/Purism | 25 Mar 2021
    I can only provide some examples what's possible. I haven't looked into video encoding algorithms enough to say if it's possible or not or how performance would be. But for example you can calculate a fast fourier transform using Vulkan compute shaders (VkFFT) and even beat CUDA performance. FFT is something which can be used to compress images in a similar way to JPEG. Also encoding a video is mostly image processing which can be parallelized quite efficiently many times.
  • A note from our sponsor - SonarLint
    www.sonarlint.org | 7 Dec 2022
    Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today. Learn more →


Basic VkFFT repo stats
about 1 month ago
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.