aboutsummaryrefslogtreecommitdiff
path: root/includes/benchmark.h
diff options
context:
space:
mode:
authorLucas de Castro Borges <lucas@gnuabordo.com.br>2024-04-22 00:35:53 -0300
committerLucas de Castro Borges <lucas@gnuabordo.com.br>2024-04-22 00:35:53 -0300
commit5f01c706267c595de92406a32e7f31ef5056c2d0 (patch)
treed1e74ef54efc41ada622900fe3e2a50dee44a237 /includes/benchmark.h
parent09fcc751ef158898c315ebc9299a0fa3a722d914 (diff)
New upstream version 2.0.3preupstream/2.0.3pre
Diffstat (limited to 'includes/benchmark.h')
-rw-r--r--includes/benchmark.h44
1 files changed, 38 insertions, 6 deletions
diff --git a/includes/benchmark.h b/includes/benchmark.h
index 277f0c07..08392ad2 100644
--- a/includes/benchmark.h
+++ b/includes/benchmark.h
@@ -2,22 +2,43 @@
#define __BENCHMARK_H__
#include "hardinfo.h"
+#include "util_sysobj.h" /* for SEQ() */
+
+#define BENCH_PTR_BITS ((unsigned int)sizeof(void*) * 8)
extern ProgramParameters params;
-enum {
- BENCHMARK_BLOWFISH,
+enum BenchmarkEntries {
+ BENCHMARK_BLOWFISH_SINGLE,
+ BENCHMARK_BLOWFISH_THREADS,
+ BENCHMARK_BLOWFISH_CORES,
+ BENCHMARK_ZLIB,
BENCHMARK_CRYPTOHASH,
BENCHMARK_FIB,
BENCHMARK_NQUEENS,
- BENCHMARK_ZLIB,
BENCHMARK_FFT,
BENCHMARK_RAYTRACE,
+ BENCHMARK_SBCPU_SINGLE,
+ BENCHMARK_SBCPU_ALL,
+ BENCHMARK_SBCPU_QUAD,
+ BENCHMARK_MEMORY_SINGLE,
+ BENCHMARK_MEMORY_DUAL,
+ BENCHMARK_MEMORY_QUAD,
+ BENCHMARK_MEMORY_ALL,
BENCHMARK_GUI,
BENCHMARK_N_ENTRIES
-} BenchmarkEntries;
+};
-void benchmark_bfish(void);
+void benchmark_bfish_single(void);
+void benchmark_bfish_threads(void);
+void benchmark_bfish_cores(void);
+void benchmark_memory_single(void);
+void benchmark_memory_dual(void);
+void benchmark_memory_quad(void);
+void benchmark_memory_all(void);
+void benchmark_sbcpu_single(void);
+void benchmark_sbcpu_all(void);
+void benchmark_sbcpu_quad(void);
void benchmark_cryptohash(void);
void benchmark_fft(void);
void benchmark_fib(void);
@@ -31,9 +52,12 @@ typedef struct {
double result;
double elapsed_time;
int threads_used;
+ int revision;
+ char extra[256]; /* no \n, ; or | */
+ char user_note[256]; /* no \n, ; or | */
} bench_value;
-#define EMPTY_BENCH_VALUE {-1.0f,0,0}
+#define EMPTY_BENCH_VALUE {-1.0f,0,0,-1,""}
char *bench_value_to_str(bench_value r);
bench_value bench_value_from_str(const char* str);
@@ -52,4 +76,12 @@ bench_value benchmark_crunch_for(float seconds, gint n_threads,
extern bench_value bench_results[BENCHMARK_N_ENTRIES];
+/* in bench_util.c */
+
+/* guarantee a minimum size of data
+ * or return null */
+gchar *get_test_data(gsize min_size);
+char *md5_digest_str(const char *data, unsigned int len);
+#define bench_msg(msg, ...) fprintf (stderr, "[%s] " msg "\n", __FUNCTION__, ##__VA_ARGS__)
+
#endif /* __BENCHMARK_H__ */