Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
branchless min vs Math.min vs cached min vs ternary vs if (2 values)
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Browser:
Chrome 140
Operating system:
Windows
Device Platform:
Desktop
Date tested:
5 months ago
Test name
Executions per second
branchless
26277204.0 Ops/sec
Math.min (cached)
26020846.0 Ops/sec
Math.min (uncached)
27714982.0 Ops/sec
Min w/ Ternary
29062792.0 Ops/sec
Min w/ If
25945506.0 Ops/sec
Script Preparation code:
var rnd = Math.random; var branchlessMin = (a, b) => (a > b) * b + (a <= b) * a; var mathMin = Math.min; var minTernary = (a, b) => a > b ? b : a; var minIf = (a, b) => { if (a > b) { return b; } else { return a; }; };
Tests:
branchless
return branchlessMin(rnd(), rnd());
Math.min (cached)
return mathMin(rnd(), rnd());
Math.min (uncached)
return Math.min(rnd(), rnd());
Min w/ Ternary
return minTernary(rnd(), rnd())
Min w/ If
return minIf(rnd(), rnd())