From 3370929d81e5d1b1a6822a4ddda0858dc4ca980a Mon Sep 17 00:00:00 2001 From: masterexplorer Date: Tue, 27 Aug 2024 10:50:44 +0200 Subject: [PATCH] time measurements against vector -currently slower bit by really minor bit --- main.cpp | 30 ++++++++++++++++++++++++++++-- makefile | 4 ++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/main.cpp b/main.cpp index 2db20c0..fd3c63f 100644 --- a/main.cpp +++ b/main.cpp @@ -2,16 +2,34 @@ #include #include +#include +#include #include"TurboList.hpp" -#define PRINT_DBG 1 +// #define PRINT_DBG +#define N 65535000 + +static inline size_t ms_now() noexcept { + auto now = std::chrono::system_clock::now(); + auto dur = now.time_since_epoch(); + auto ms = std::chrono::duration_cast(dur).count(); + return ms; +} + +static inline void printt(const char *prefix, size_t before, size_t after) noexcept { + printf("%s ", prefix); + printf("took %d ms\n", (after - before)); +} int main() { TurboList list(4); - for(int i = 0; i < 65535; ++i) { + auto before_TurboList = ms_now(); + for(int i = 0; i < N; ++i) { list.insert(i); } + auto after_TurboList = ms_now(); + printt("TurboList", before_TurboList, after_TurboList); #ifdef PRINT_DBG for(int i = 0; i < list.size(); ++i) { @@ -19,5 +37,13 @@ int main() { } #endif /* PRINT_DBG */ + std::vector vec; + auto before_vector = ms_now(); + for(int i = 0; i < N; ++i) { + vec.push_back(i); + } + auto after_vector = ms_now(); + printt("vector", before_vector, after_vector); + return 0; } diff --git a/makefile b/makefile index 6f77608..3069785 100644 --- a/makefile +++ b/makefile @@ -1,4 +1,4 @@ debug: - g++ main.cpp -g -o main + g++ --std=c++17 main.cpp -g -o main release: - g++ main.cpp -O2 -o main + g++ --std=c++17 main.cpp -O2 -o main