From a98a8131896912ff68f652ed082e64422620b992 Mon Sep 17 00:00:00 2001 From: EntireTwix Date: Mon, 5 Jul 2021 16:27:26 -0700 Subject: [PATCH] :zap: fixed benchmark --- benchmarking.cpp | 108 ++++++++++------------------------------------- 1 file changed, 23 insertions(+), 85 deletions(-) diff --git a/benchmarking.cpp b/benchmarking.cpp index 05c7653..0fd08db 100644 --- a/benchmarking.cpp +++ b/benchmarking.cpp @@ -1,86 +1,24 @@ -#include -#include -#include -#include -#include -#include -#include "bank.h" - -#include -#include -#include -#include - -using namespace std::chrono; - -static Bank bank; - -#include -#include -#include - -#define time_func_a(f, a, x) \ - { \ - using namespace std::chrono; \ - uint32_t timer = 0; \ - for (int i = 0; i < x; ++i) \ - { \ - auto t1 = high_resolution_clock::now().time_since_epoch(); \ - f; \ - auto t2 = high_resolution_clock::now().time_since_epoch(); \ - a; \ - timer += std::chrono::duration_cast((t2 - t1)).count(); \ - } \ - std::cout << timer / x << '\n'; \ - } - -#define time_func(f, x) \ - { \ - using namespace std::chrono; \ - uint32_t timer = 0; \ - for (int i = 0; i < x; ++i) \ - { \ - auto t1 = high_resolution_clock::now().time_since_epoch(); \ - f; \ - auto t2 = high_resolution_clock::now().time_since_epoch(); \ - timer += std::chrono::duration_cast((t2 - t1)).count(); \ - } \ - std::cout << timer / x << '\n'; \ - } - -#define Op_a(v, name, x, a) \ - { \ - std::cout << name; \ - time_func_a(v, a, x); \ - } - -#define Op(v, name, x) \ - { \ - std::cout << name; \ - time_func(v, x); \ - } - int main(int argc, char **argv) { bank.AddUser("twix", 0, "root"); bank.AddUser("jolly", 0, "root"); bank.admin_account = "twix"; - Op_a(bank.AddUser("", 0, ""), "add user: ", 1000000, bank.DelUser("")); - Op(bank.AddBal("twix", 1), "give bal: ", 1000000); - Op(bank.SubBal("twix", 1), "give bal: ", 1000000); - Op(bank.SetBal("twix", 1000000), "set bal: ", 1000000); - Op(bank.SendFunds("twix", "jolly", 1), "send funds: ", 1000000); - Op(bank.SendFunds("twix", "twix", 1), "invalid send funds: ", 1000000); + Op_a(bank.AddUser("", 0, ""), "add user: ", 100000, bank.DelUser("")); + Op(bank.AddBal("twix", 1), "give bal: ", 100000); + Op(bank.SubBal("twix", 1), "sub bal: ", 100000); + Op(bank.SetBal("twix", 100000), "set bal: ", 100000); + Op(bank.SendFunds("twix", "jolly", 1), "send funds: ", 100000); + Op(bank.SendFunds("twix", "twix", 1), "invalid send funds: ", 100000); bank.AddUser("", 0, ""); - Op_a(bank.DelUser(""), "del user: ", 1000000, bank.AddUser("", 0, "")); + Op_a(bank.DelUser(""), "del user: ", 100000, bank.AddUser("", 0, "")); bank.DelUser(""); - Op(bank.Contains("twix"), "contains: ", 1000000); - Op(bank.AdminVerifyAccount("twix"), "admin verify pass: ", 1000000); - Op(bank.GetBal("twix"), "get bal: ", 1000000); - Op(bank.VerifyPassword("twix", "root"), "verify pass: ", 1000000); - Op(bank.ChangePassword("twix", "root"), "change pass: ", 1000000); + Op(bank.Contains("twix"), "contains: ", 100000); + Op(bank.AdminVerifyAccount("twix"), "admin verify pass: ", 100000); + Op(bank.GetBal("twix"), "get bal: ", 100000); + Op(bank.VerifyPassword("twix", "root"), "verify pass: ", 100000); + Op(bank.ChangePassword("twix", "root"), "change pass: ", 100000); Op(bank.GetLogs("twix"), "get logs: ", 10000); Op(bank.Save(), "saving: ", 1); #if CONSERVATIVE_DISK_SAVE @@ -88,18 +26,18 @@ int main(int argc, char **argv) #endif //GetBal scalining test - // std::default_random_engine generator; - // std::uniform_real_distribution distribution(0.0, 1.0); + std::default_random_engine generator; + std::uniform_real_distribution distribution(0.0, 1.0); - // for (size_t i = 0; i < 10000000; ++i) - // { - // bank.AddUser(std::to_string(i), 0, "root"); - // if (i % 10000 == 0) - // { - // auto u = std::to_string(distribution(generator) * i); - // Op(bank.GetBal(u), std::to_string(i) + ", ", 100000); - // } - // } + for (size_t i = 0; i < 10000000; ++i) + { + bank.AddUser(std::to_string(i), 100000, "root"); + if (i % 10000 == 0) + { + auto u = std::to_string((int)(distribution(generator) * i)); + Op(bank.GetBal(u), std::to_string(i) + ", ", 100000); + } + } return 0; }