summaryrefslogtreecommitdiffhomepage
path: root/benchmarks
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2022-03-29 22:59:41 +0200
committerTyge Løvset <[email protected]>2022-03-29 22:59:41 +0200
commit7d2ff84910bdbb5485e39aa50d3f6096ba4a05d2 (patch)
tree44027b9fc8b53e668d3add4b1a4430b124627f12 /benchmarks
parente507d0a01fb2210913c3b546817c04c58f931b9e (diff)
downloadSTC-modified-7d2ff84910bdbb5485e39aa50d3f6096ba4a05d2.tar.gz
STC-modified-7d2ff84910bdbb5485e39aa50d3f6096ba4a05d2.zip
Refactoring in sso string.
Diffstat (limited to 'benchmarks')
-rw-r--r--benchmarks/misc/sso_bench2.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/benchmarks/misc/sso_bench2.cpp b/benchmarks/misc/sso_bench2.cpp
index 4ef03d3c..91ffe6ca 100644
--- a/benchmarks/misc/sso_bench2.cpp
+++ b/benchmarks/misc/sso_bench2.cpp
@@ -21,6 +21,14 @@ static inline uint64_t romutrio(void) {
return xp;
}
+static void sromutrio(uint64_t seed) {
+ uint64_t *s = g_romutrio;
+ s[0] = 0x26aa069ea2fb1a4dULL + seed;
+ s[1] = 0x70c72c95cd592d04ULL + seed;
+ s[2] = 0x504f333d3aa0b359ULL + seed;
+}
+
+
static const char CHARS[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=+";
static const int ARRAY_SIZE = sizeof(CHARS) - 1;
@@ -64,13 +72,15 @@ void benchmark(L& vec, const int length, R addRandomString) {
int main() {
+ sromutrio(1234);
std::cerr << "length\ttime\tstd::string\n";
-
for (int length = 1; length <= MAX_STRING_LENGTH; length++) {
std::vector<std::string> vec; vec.reserve(BENCHMARK_SIZE);
benchmark(vec, length, addRandomString_STD);
std::cout << '\t' << vec[0] << '\n';
}
+
+ sromutrio(1234);
std::cerr << "\nlength\ttime\tSTC string\n";
for (int length = 1; length <= MAX_STRING_LENGTH; length++) {
cstack_str vec = cstack_str_with_capacity(BENCHMARK_SIZE);