package org.simantics.databoard.tests; /** * * @author Toni Kalajainen */ public class TestByteVsInt { public static byte sum(byte a, byte b, byte c, byte d, byte e, byte f) { return (byte) (a+b+c+d+e+f); } public static int sum(int a, int b, int c, int d, int e, int f) { return a+b+c+d+e+f; } public static long sum(long a, long b, long c, long d, long e, long f) { return a+b+c+d+e+f; } public static void byteTest() { System.gc(); { long x = System.nanoTime(); byte a = 6, b=3, c=67, d=2, e=-53, f=1; for (int i=0; i<1000000; i++) { a = sum(a, b, c, d, e, f); b = sum(b, c, d, e, f, a); c = sum(c, d, e, f, a, b); d = sum(d, e, f, a, b, c); e = sum(e, f, a, b, c, d); f = sum(f, a, b, c, d, e); } long y = System.nanoTime(); System.out.println("byte: "+(y-x)/*+" (sum="+(a+b+c+d+e+f)+")"*/); } } public static void intTest() { System.gc(); { long x = System.nanoTime(); int a = 6, b=3, c=67, d=2, e=-53, f=1; for (int i=0; i<1000000; i++) { a = sum(a, b, c, d, e, f); b = sum(b, c, d, e, f, a); c = sum(c, d, e, f, a, b); d = sum(d, e, f, a, b, c); e = sum(e, f, a, b, c, d); f = sum(f, a, b, c, d, e); } long y = System.nanoTime(); System.out.println("int : "+(y-x)/*+" (sum="+(a+b+c+d+e+f)+")"*/); } } public static void longTest() { System.gc(); { long x = System.nanoTime(); long a = 6, b=3, c=67, d=2, e=-53, f=1; for (int i=0; i<1000000; i++) { a = sum(a, b, c, d, e, f); b = sum(b, c, d, e, f, a); c = sum(c, d, e, f, a, b); d = sum(d, e, f, a, b, c); e = sum(e, f, a, b, c, d); f = sum(f, a, b, c, d, e); } long y = System.nanoTime(); System.out.println("long: "+(y-x)/*+" (sum="+(a+b+c+d+e+f)+")"*/); } } public static void main(String[] args) { byteTest(); intTest(); longTest(); byteTest(); intTest(); longTest(); byteTest(); intTest(); longTest(); byteTest(); intTest(); longTest(); byteTest(); intTest(); longTest(); byteTest(); intTest(); longTest(); } }