|
@@ -1,7 +1,7 @@
|
|
|
#include <chrono>
|
|
|
#include <iostream>
|
|
|
|
|
|
-#define MAX_SIZE 1000000
|
|
|
+#define MAX_SIZE 200000
|
|
|
|
|
|
long getNanos() {
|
|
|
return std::chrono::high_resolution_clock::now().time_since_epoch().count();
|
|
@@ -51,10 +51,10 @@ void cacheTest() {
|
|
|
for (int i = 0; i < size; i++) {
|
|
|
a[i] = randomInt() % max;
|
|
|
}
|
|
|
- long time = -getMillis();
|
|
|
+ long time = -getNanos();
|
|
|
selectionSort(a, size, intKey);
|
|
|
- time += getMillis();
|
|
|
- printf("%10ld ms | %7.2lf ms / entry \n", time,
|
|
|
+ time += getNanos();
|
|
|
+ printf("%10ld ns | %7.2lf ns / entry \n", time,
|
|
|
(static_cast<double>(time) / size));
|
|
|
delete[] a;
|
|
|
}
|
|
@@ -78,10 +78,10 @@ void structTest() {
|
|
|
for (int i = 0; i < size; i++) {
|
|
|
a[i].key = randomInt() % max;
|
|
|
}
|
|
|
- long time = -getMillis();
|
|
|
+ long time = -getNanos();
|
|
|
selectionSort(a, size, aKey);
|
|
|
- time += getMillis();
|
|
|
- printf("%10ld ms | %7.2lf ms / entry \n", time,
|
|
|
+ time += getNanos();
|
|
|
+ printf("%10ld ns | %7.2lf ns / entry \n", time,
|
|
|
(static_cast<double>(time) / size));
|
|
|
delete[] a;
|
|
|
}
|
|
@@ -100,10 +100,10 @@ void pointerTest() {
|
|
|
for (int i = 0; i < size; i++) {
|
|
|
a[i] = new int(randomInt() % max);
|
|
|
}
|
|
|
- long time = -getMillis();
|
|
|
+ long time = -getNanos();
|
|
|
selectionSort<int*>(a, size, pointerKey);
|
|
|
- time += getMillis();
|
|
|
- printf("%10ld ms | %7.2lf ms / entry \n", time,
|
|
|
+ time += getNanos();
|
|
|
+ printf("%10ld ns | %7.2lf ns / entry \n", time,
|
|
|
(static_cast<double>(time) / size));
|
|
|
for (int i = 0; i < size; i++) {
|
|
|
delete a[i];
|