Benchmark: timing 1000 iterations of f_alpha, f_cmp, f_owtdi, f_sship, i_alpha, i_cmp, i_owtdi, i_sship... f_alpha: 48 wallclock secs (48.24 usr + 0.00 sys = 48.24 CPU) @ 20.73/s (n=1000) f_cmp: 48 wallclock secs (48.23 usr + 0.01 sys = 48.24 CPU) @ 20.73/s (n=1000) f_owtdi: 67 wallclock secs (66.64 usr + 0.00 sys = 66.64 CPU) @ 15.01/s (n=1000) f_sship: 30 wallclock secs (29.58 usr + 0.29 sys = 29.87 CPU) @ 33.48/s (n=1000) i_alpha: 38 wallclock secs (38.22 usr + 0.01 sys = 38.23 CPU) @ 26.16/s (n=1000) i_cmp: 38 wallclock secs (38.11 usr + 0.05 sys = 38.16 CPU) @ 26.21/s (n=1000) i_owtdi: 66 wallclock secs (65.85 usr + 0.03 sys = 65.88 CPU) @ 15.18/s (n=1000) i_sship: 29 wallclock secs (28.70 usr + 0.31 sys = 29.01 CPU) @ 34.47/s (n=1000) Rate f_owtdi i_owtdi f_alpha f_cmp i_alpha i_cmp f_sship i_sship f_owtdi 15.0/s -- -1% -28% -28% -43% -43% -55% -56% i_owtdi 15.2/s 1% -- -27% -27% -42% -42% -55% -56% f_alpha 20.7/s 38% 37% -- 0% -21% -21% -38% -40% f_cmp 20.7/s 38% 37% 0% -- -21% -21% -38% -40% i_alpha 26.2/s 74% 72% 26% 26% -- -0% -22% -24% i_cmp 26.2/s 75% 73% 26% 26% 0% -- -22% -24% f_sship 33.5/s 123% 121% 61% 61% 28% 28% -- -3% i_sship 34.5/s 130% 127% 66% 66% 32% 32% 3% --