cuda-api-wrappers

Thin C++-flavored header-only wrappers for core CUDA APIs: Runtime, Driver, NVRTC, NVTX. (by eyalroz)

Cuda-api-wrappers Alternatives

Similar projects and alternatives to cuda-api-wrappers

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

cuda-api-wrappers reviews and mentions

Posts with mentions or reviews of cuda-api-wrappers. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-01.
  • VUDA: A Vulkan Implementation of CUDA
    3 projects | news.ycombinator.com | 1 Jul 2023
    1. This implements the clunky C-ish API; there's also the Modern-C++ API wrappers, with automatic error checking, RAII resource control etc.; see: https://github.com/eyalroz/cuda-api-wrappers (due disclosure: I'm the author)

    2. Implementing the _runtime_ API is not the right choice; it's important to implement the _driver_ API, otherwise you can't isolate contexts, dynamically add newly-compiled JIT kernels via modules etc.

    3. This is less than 3000 lines of code. Wrapping all of the core CUDA APIs (driver, runtime, NVTX, JIT compilation of CUDA-C++ and of PTX) took me > 14,000 LoC.

  • WezTerm is a GPU-accelerated cross-platform terminal emulator
    4 projects | news.ycombinator.com | 13 Mar 2023
    > since the underlying API's are still C/C++,

    If the use of GPUs is via CUDA, there are my https://github.com/eyalroz/cuda-api-wrappers/ which are RAII/CADRe, and therefore less unsafe. And on the Rust side - don't you need a bunch of unsafe code in the library enabling GPU support?

  • GNU Octave
    4 projects | news.ycombinator.com | 21 Jan 2023
    Given your criteria, you might want to consider (modern) C++.

    * Fast - in many cases faster than Rust, although the difference is inconsequential relative to Python-to-Rust improvement I guess.

    * _Really_ utilize CUDA, OpenCL, Vulcan etc. Specifically, Rust GPU is limited in its supported features, see: https://github.com/Rust-GPU/Rust-CUDA/blob/master/guide/src/... ...

    * Host-side use of CUDA is at least as nice, and probably nicer, than what you'll get with Rust. That is, provided you use my own Modern C++ wrappers for the CUDA APIs: https://github.com/eyalroz/cuda-api-wrappers/ :-) ... sorry for the shameless self-plug.

    * ... which brings me to another point: Richer offering of libraries for various needs than Rust, for you to possibly utilize.

    * Easier to share than Rust. A target system is less likely to have an appropriate version of Rust and the surrounding ecosystem.

    There are downsides, of course, but I was just applying your criteria.

  • Cybercriminals who breached Nvidia issue one of the most unusual demands ever
    3 projects | news.ycombinator.com | 4 Mar 2022
    Oh, I really wish those hackers would release the sources rather than pursue their dumbass crypto-mining demands... "We decided to help mining and gaming community" - hurting the gaming community, helping the get-rich-quick "community".

    My own C++ wrappers for the CUDA APIs (shameless self-plug: https://github.com/eyalroz/cuda-api-wrappers/) would really benefit a lot from behind-the-curtains access to the driver; and even if I just know how the internal logic of the driver and the runtime works, without actually being able to hook into that logic - I would already be able to leverage this somewhat in my design considerations.

  • A note from our sponsor - Mergify
    blog.mergify.com | 24 Sep 2023
    Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free. Learn more →

Stats

Basic cuda-api-wrappers repo stats
10
650
0.0
18 days ago
Updating dependencies is time-consuming.
Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free.
blog.mergify.com