Re:Fixed Point Arithmetic
by Const-me on Monday October 18, 2021 @06:41AM
(#28904057)
> Is there still a performance win?
Sometimes. Rarely. Specifically, it's a performance win when you don't need 32 bit of precision, when 8 or 16 bits is enough in these integers. When it happens, you can pack twice as many lanes in the SIMD vectors, and use instructions which view 16-byte vectors as 8 int16_t lanes, or 16 uint8_t lanes.
FP32 is much faster to multiply and especially to divide, compared to Int32.
> Do games and similar software use them today?
Image and video processing code which for some weird reason runs on CPU definitely does.
Sometimes. Rarely. Specifically, it's a performance win when you don't need 32 bit of precision, when 8 or 16 bits is enough in these integers. When it happens, you can pack twice as many lanes in the SIMD vectors, and use instructions which view 16-byte vectors as 8 int16_t lanes, or 16 uint8_t lanes.
FP32 is much faster to multiply and especially to divide, compared to Int32.
> Do games and similar software use them today?
Image and video processing code which for some weird reason runs on CPU definitely does.