3 ms·
Vector instructions come at a cost, though — there’s implications on power budget and on thermals, so it’s very much a “just because you can doesn’t mean you s
by pdpi 7y ago
Vector instructions come at a cost, though — there’s implications on power budget and on thermals, so it’s very much a “just because you can doesn’t mean you should” piece of tech. Specifically, sustained use of AVX instructions on 256 and 512 bit registers will cost you a chunk of clock frequency even for all, so you have to pass the hurdle of having enough AVX instructions that the downclocking is worth it overall
- dr_zoidberg 7y agoAVX(1) and AVX2 don't cause throttling, just AVX512. Even so, on code that can do the best of them[0], they still result in better performance. Eventually they will implemented in a way that doesn't require throttling, maybe AMD when it finally supports them or Intel when the famed 7nm[1] process arrives. [0] numerical code usually, but go ahead and use them if you can express your problem in a way that makes sense in AVX512 [1] 7 as in "seven" since the 10nm is so troublesome that apparently no desktop/server chips will be made on it and just skips to 7, which should be comparable to TMSCs 5nm
- gameswithgo 7y ago>AVX(1) and AVX2 don't cause throttling, yes they do, on intel cpus anyway. On Ryzen anything that makes more heat will cause throttling, rather than a step change in mode. >. Eventually they will implemented in a way that doesn't require throttling Probably not, there are fundamental physical limitations. I mean, you can put a good cooler on the cpu and disable the throttling, but then you could raise the non SIMD clock rate too.
- gameswithgo 7y ago>Specifically, sustained use of AVX instructions on 256 and 512 bit registers will cost you a chunk of clock frequency even for all, so you have to pass the hurdle of having enough AVX instructions that the downclocking is worth it overall I feel like people who say this have read about it but never actually worked with the instructions. Yes it is true you have to be sure to batch up enough vectorized instructions or you could get an overall slowdown, and that does happen sometimes, but you won't be turning to AVX2 and dealing with all the complications of that if you don't have a lot of work to be done anyway! The net speedup is usually very big