U16 takes more time than my U32 for sine operation
You don't say what processor this is running on.  If it's a 32 bit machine, then calculations are most likely done on 32 bit values, and converting to/from 16 bit takes extra cycles.

I once did a benchmark test on a IBM workstation that had double precision floating point hardware.  Double precision (64 bit) floating point calculations took longer than 32 bit.