5 ms·
It's very common to write c++ in a way that will work well for GPUs. Consider that CUDA, the most used GPU language, is just a set of extensions on top of c++.
by jcelerier 1y ago
It's very common to write c++ in a way that will work well for GPUs. Consider that CUDA, the most used GPU language, is just a set of extensions on top of c++. Likewise for Metal shaders, or high-level dogs synthesis systems like Vitis
- ranger_danger 1y agohigh-level.. dogs?
- jcelerier 1y agowops! FPGAs*
- chaboud 1y agoI’m going to guess that they meant Directed Acyclic Graphs or DAGs, which is a useful way to represent data dependencies and transformations, allowing formulation for GPU, CPU, NNA, DSP, FPGA, etc. If the macrostructure of the operations can be represented appropriately, automatic platform-specific optimization is more approachable.
- ruined 1y agoyes, dogs. very high level, best-of-the-best. the elite. directed ocyclic graphs
- Pseudoboss 1y agoThe goodest boys.
- canyp 1y agoI'm pretty sure he meant dawgs. Directed acyclic woof graphs.
- pjmlp 1y agoPeople keep repeating this wrongly. CUDA is a polyglot development stack for compute, with first party support for C, C++, Fortran, Python JIT DSL, and anything PTX. With the hardware semantics, nowadays following the C++ memory model, although it wasn't originally designed that way. As NVidia blessed extensions for compiler backends targeting PTX, there are Haskell, .NET, Java, Julia tooling. For whatever reason, all of that keeps being forgotten and only either C or C++ gets a mention, which is the same mistake Intel and AMD keep doing on the CUDA porting kits.