Skip to content

Commit 6d04f70

Browse files
author
Raghuveer Devulapalli
committed
More changes
1 parent bacb655 commit 6d04f70

File tree

2 files changed

+21
-5
lines changed

2 files changed

+21
-5
lines changed

run-bench.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,10 @@
1919
if args.benchcompare:
2020
baseline = ""
2121
contender = ""
22-
if "qsort" in args.benchcompare:
22+
if "vqsort" in args.benchcompare:
23+
baseline = "vqsort.*" + filterb
24+
contender = "simdsort.*" + filterb
25+
elif "qsort" in args.benchcompare:
2326
baseline = "scalarsort.*" + filterb
2427
contender = "simdsort.*" + filterb
2528
elif "select" in args.benchcompare:

utils/rand_array.h

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ get_uniform_rand_array_with_uniquevalues(int64_t arrsize,
6868
template <typename T>
6969
static std::vector<T>
7070
get_array(std::string arrtype,
71-
int64_t arrsize,
71+
size_t arrsize,
7272
T min = xss::fp::min<T>(),
7373
T max = xss::fp::max<T>())
7474
{
@@ -80,7 +80,7 @@ get_array(std::string arrtype,
8080
}
8181
else if (arrtype == "constant") {
8282
T temp = get_uniform_rand_array<T>(1, max, min)[0];
83-
for (auto ii = 0; ii < arrsize; ++ii) {
83+
for (size_t ii = 0; ii < arrsize; ++ii) {
8484
arr.push_back(temp);
8585
}
8686
}
@@ -90,7 +90,20 @@ get_array(std::string arrtype,
9090
std::reverse(arr.begin(), arr.end());
9191
}
9292
else if (arrtype == "smallrange") {
93-
arr = get_uniform_rand_array<T>(arrsize, 10, 1);
93+
arr = get_uniform_rand_array<T>(arrsize, 20, 1);
94+
}
95+
else if (arrtype == "random_5d") {
96+
size_t temp = std::max((size_t) 1, (size_t) (0.5 * arrsize));
97+
std::vector<T> temparr = get_uniform_rand_array<T>(temp);
98+
for (size_t ii = 0; ii < arrsize; ++ii) {
99+
if (ii < temp) {
100+
arr.push_back(temparr[ii]);
101+
}
102+
else {
103+
arr.push_back((T) 0);
104+
}
105+
}
106+
std::shuffle(arr.begin(), arr.end(), std::default_random_engine(42));
94107
}
95108
else if (arrtype == "max_at_the_end") {
96109
arr = get_uniform_rand_array<T>(arrsize, max, min);
@@ -126,7 +139,7 @@ get_array(std::string arrtype,
126139
else {
127140
val = std::numeric_limits<T>::max();
128141
}
129-
for (auto ii = 1; ii <= arrsize; ++ii) {
142+
for (size_t ii = 1; ii <= arrsize; ++ii) {
130143
if (rand() % 0x1) {
131144
arr[ii] = val;
132145
}

0 commit comments

Comments
 (0)