int8, int16 :
when working with large data sets.
CPU packs multiple variables into its registers.
requires less bits
int16, int32 :
If you're dealing with a file format or protocol
CPU uses more registers or more space in a single register.
it requires more number of bits to store the data internally