dcompute

DCompute: Native execution of D on GPUs and other Accelerators (by libmir)

Dcompute Alternatives

Similar projects and alternatives to dcompute

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

dcompute reviews and mentions

Posts with mentions or reviews of dcompute. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-06-15.
  • DCompute: Native execution of D on GPUs and other Accelerators
    1 project | news.ycombinator.com | 24 Mar 2024
  • Let's learn D game programming development
    4 projects | news.ycombinator.com | 15 Jun 2022
    Shameless plug: LDC (the LLVM based D compiler) can already target CUDA (and OpenCL) and wraps its API and all of the nasty details involved in replicating <<<>>> kernel launches with https://github.com/libmir/dcompute/ with a sane syntax that's type safe. LLVM handles the codegen, and all of the "magic" is done in the library.
  • Compile-Time Sort in D
    3 projects | news.ycombinator.com | 12 Feb 2022
    As noted elsewhere it seems your experience is somewhat outdated: the releases of the LLVM D Compiler (one of the two compilers worth using for production builds, the other being GDC) are buffered to the bugs introduced in DMD (which is more stable than it used to be although there are still regressions), and there is a fork based GC available for linux, but as the GC will only ever trigger on allocation, don't use it and it won't collect.

    > While C++ is not by any means a great meta-language, it's improved considerably since that time.

    C++ has also painted itself into a corner multiple times too, which despite being technically an improvement over the status quo are lacking severely in their utility. C++ screwed up "constexpr if" big time by always introducing a scope (which costs you a pair of {}'s in the rare occasion you need one) which means you can't conditionally insert declarations (i.e. variables, structs/classes, functions).

    > but beyond the novelty you'd hardly find a mature or reliable codebase written by a team of professionals using hacks like [string manipulation and mixins].

    They are a wonderful hack when you need them and nothing else will do what you want. This is not unlike resorting to macros in C++, except that its hygienic, unlike macros.

    I'm not claiming the project is mature and I'm only one person, but reliable definitely out there. The most heinous set of string mixins i've ever written[1] has definitely got to be the code for generating wrappers to call the OpenCL object property querying functions (clGetDeviceInfo & friends). You need to pass a size and a void pointer to the address of the return object that you have to call once, twice or more (depending on the type of the queried property) to figure out how much memory you need to allocate to call it again.

    The important thing is that the interface[2] you use to drive this code generation is very clean and return on investment for getting the generic case correct is large.

    [1]: https://github.com/libmir/dcompute/blob/master/source/dcompu...

  • Why I Like D
    5 projects | news.ycombinator.com | 11 Jan 2022
  • Unified Shader Programming in C++
    13 projects | news.ycombinator.com | 3 Oct 2021
  • A note from our sponsor - WorkOS
    workos.com | 19 Apr 2024
    The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →

Stats

Basic dcompute repo stats
5
133
0.0
over 1 year ago
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com