diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-12-22 18:37:05 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-12-22 18:37:05 +0300 |
commit | 3719c196c88723c0d9f05a92ef30454429a4b82f (patch) | |
tree | 62d9d972f2d000c78b27bcd7d601a68f92617896 | |
parent | 19aec4ec37cffa2b3f7ab84165728dfcceac008e (diff) | |
download | manaverse-3719c196c88723c0d9f05a92ef30454429a4b82f.tar.gz manaverse-3719c196c88723c0d9f05a92ef30454429a4b82f.tar.bz2 manaverse-3719c196c88723c0d9f05a92ef30454429a4b82f.tar.xz manaverse-3719c196c88723c0d9f05a92ef30454429a4b82f.zip |
Improve dye speed tests.
-rw-r--r-- | src/test/testlauncher.cpp | 45 |
1 files changed, 41 insertions, 4 deletions
diff --git a/src/test/testlauncher.cpp b/src/test/testlauncher.cpp index 313986c8c..661960b1d 100644 --- a/src/test/testlauncher.cpp +++ b/src/test/testlauncher.cpp @@ -497,7 +497,7 @@ int TestLauncher::testDyeSSpeed() clock_gettime(CLOCK_MONOTONIC, &time1); for (int f = 0; f < 50000; f ++) - pal.replaceSColor(buf, sz); + pal.replaceSColorDefault(buf, sz); clock_gettime(CLOCK_MONOTONIC, &time2); long diff = ((static_cast<long int>(time2.tv_sec) * 1000000000L @@ -505,7 +505,25 @@ int TestLauncher::testDyeSSpeed() ((static_cast<long int>(time1.tv_sec) * 1000000000L + static_cast<long int>(time1.tv_nsec)) / 1); printf("dye s salt: %u\n", buf[0]); - printf("time: %ld\n", diff); + printf("default time: %011ld\n", diff); + + for (int f = 0; f < sz; f ++) + buf[f] = f; + + pal.replaceSColor(buf, sz); + + clock_gettime(CLOCK_MONOTONIC, &time1); + + for (int f = 0; f < 50000; f ++) + pal.replaceSColorSimd(buf, sz); + + clock_gettime(CLOCK_MONOTONIC, &time2); + diff = ((static_cast<long int>(time2.tv_sec) * 1000000000L + + static_cast<long int>(time2.tv_nsec)) / 1) - + ((static_cast<long int>(time1.tv_sec) * 1000000000L + + static_cast<long int>(time1.tv_nsec)) / 1); + printf("dye s salt: %u\n", buf[0]); + printf("simd time : %011ld\n", diff); #endif // defined __linux__ || defined __linux return 0; @@ -529,7 +547,7 @@ int TestLauncher::testDyeASpeed() clock_gettime(CLOCK_MONOTONIC, &time1); for (int f = 0; f < 50000; f ++) - pal.replaceSColor(buf, sz); + pal.replaceSColorDefault(buf, sz); clock_gettime(CLOCK_MONOTONIC, &time2); long diff = ((static_cast<long int>(time2.tv_sec) * 1000000000L @@ -537,7 +555,26 @@ int TestLauncher::testDyeASpeed() ((static_cast<long int>(time1.tv_sec) * 1000000000L + static_cast<long int>(time1.tv_nsec)) / 1); printf("dye a salt: %u\n", buf[0]); - printf("time: %ld\n", diff); + printf("default time: %011ld\n", diff); + + for (int f = 0; f < sz; f ++) + buf[f] = f; + + pal.replaceAColor(buf, sz); + + clock_gettime(CLOCK_MONOTONIC, &time1); + + for (int f = 0; f < 50000; f ++) + pal.replaceSColorSimd(buf, sz); + + clock_gettime(CLOCK_MONOTONIC, &time2); + diff = ((static_cast<long int>(time2.tv_sec) * 1000000000L + + static_cast<long int>(time2.tv_nsec)) / 1) - + ((static_cast<long int>(time1.tv_sec) * 1000000000L + + static_cast<long int>(time1.tv_nsec)) / 1); + printf("dye a salt: %u\n", buf[0]); + printf("simd time : %011ld\n", diff); + #endif // defined __linux__ || defined __linux return 0; |