3 ms·
When writing GPU code I often optimize/ tailor the algorithm to the details of the architecture. Trying to write generic GPU code that is performant across mult
by waynecochran 4y ago
When writing GPU code I often optimize/ tailor the algorithm to the details of the architecture. Trying to write generic GPU code that is performant across multiple platforms is ugly, painful and produces larger and less maintainable code. One actually chooses different algorithms based on the architecture.
- moab 4y agoThat sounds awful and a big reason why I think GPUs will go the way of the dinosaur in the near future.
- skavi 4y agoNothing about GPUs technically forces you to code for specific architectures. It’s really no different than optimizing your code for a specific CPU.
- moab 4y agoI think it's quite different. For GPUs these archiecture-specific optimizations / primitives make orders of magnitude difference (and also change from version to version). On the other hand, multicore code I wrote ~8 years ago in TBB or Cilk is still extremely fast compared to hand-optimized code customized for current CPU architectures. To summarize my gripe, it's is that the abstractions on GPUs seem broken, and we still don't have a good model for how to write high performance GPU code that just works and keeps getting faster as GPUs get faster.