Skip to content

Instantly share code, notes, and snippets.

@NiKoTron
Created August 20, 2020 19:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NiKoTron/b311b9781364835cff46f3e9c6341f67 to your computer and use it in GitHub Desktop.
Save NiKoTron/b311b9781364835cff46f3e9c6341f67 to your computer and use it in GitHub Desktop.
bitwise perfomance
void main() {
final x = 256;
var s = Stopwatch();
var bitwiseSumm = 0;
var intDivSumm = 0;
var divSumm = 0;
for (var i = 0; i < 257; i++) {
s.start();
bitwise(x);
var be = s.elapsedTicks;
if (i >= 2) {
bitwiseSumm += be;
}
print('bitwise: ${be}');
s.reset();
s.start();
intDiv(x);
var ide = s.elapsedTicks;
if (i >= 2) {
intDivSumm += ide;
}
print('int-div: ${ide}');
s.reset();
s.start();
div(x);
var de = s.elapsedTicks;
if (i >= 2) {
divSumm += de;
}
print('divison: ${de}');
s.reset();
}
print('avg bitwise: ${bitwiseSumm / 256}');
print('avg int-div: ${intDivSumm / 256}');
print('avg divison: ${divSumm / 256}');
}
void bitwise(int x) {
x >> 4;
}
void intDiv(int x) {
x ~/ 16;
}
void div(int x) {
x / 16;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment