Re:SIMD < SIMT < SMT: Parallelism in Nvidia GPUs (2011)
by majke on Tuesday June 11, 2024 @12:44PM
(#40648477)
Last time i looked at intel scatter/gather I got the impression it only works for a very narrow use case, and getting it to perform wasn’t easy. Did I miss something?
[ Parent
| on HN ]
Re:SIMD < SIMT < SMT: Parallelism in Nvidia GPUs (2011)
by narrowbyte on Tuesday June 11, 2024 @12:57PM
(#40648681)
The post says, about SIMT / GPU programming, "This loss results from the DRAM architecture quite directly, the GPU being unable to do much about it – similarly to any other processor."
I would say that for SIMD the situation is basically the same. gather/scatter don't magically make the memory hierarchy a non-issue, but they're no longer adding any unnecessary pain on top.
Re:SIMD < SIMT < SMT: Parallelism in Nvidia GPUs (2011)
by yosefk on Tuesday June 11, 2024 @01:39PM
(#40649219)
Barrel threaded machines like GPUs have easier time hiding the latency of bank conflict resolution when gathering/scattering against local memory/cache than a machine running a single instruction thread. So pretty sure they have a fundamental advantage when it comes to the throughput of scatter/gather operations that gets bigger with a larger number of vector lanes
Re:SIMD < SIMT < SMT: Parallelism in Nvidia GPUs (2011)
by majke on Wednesday June 12, 2024 @04:20AM
(#40655793)
vpgatherdd - I think that for newer CPUs it is faster than many loads + inserts, but if you are going to fault a lot, then it becomes slow.
> The VGATHER instructions are implemented as micro-coded flow. Latency is ~50 cycles.
https://www.intel.com/content/www/us/en/content-details/8141...