diff options
author | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2024-04-22 00:35:53 -0300 |
---|---|---|
committer | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2024-04-22 00:35:53 -0300 |
commit | 5f01c706267c595de92406a32e7f31ef5056c2d0 (patch) | |
tree | d1e74ef54efc41ada622900fe3e2a50dee44a237 /modules/benchmark/benches.c | |
parent | 09fcc751ef158898c315ebc9299a0fa3a722d914 (diff) |
New upstream version 2.0.3preupstream/2.0.3pre
Diffstat (limited to 'modules/benchmark/benches.c')
-rw-r--r-- | modules/benchmark/benches.c | 220 |
1 files changed, 184 insertions, 36 deletions
diff --git a/modules/benchmark/benches.c b/modules/benchmark/benches.c index e09dedcc..c621d695 100644 --- a/modules/benchmark/benches.c +++ b/modules/benchmark/benches.c @@ -1,10 +1,10 @@ /* - * HardInfo - Displays System Information - * Copyright (C) 2003-2017 Leandro A. F. Pereira <leandro@hardinfo.org> + * HardInfo - System Information and Benchmark + * Copyright (C) 2003-2017 L. A. F. Pereira <l@tia.mat.br> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 2. + * the Free Software Foundation, version 2 or later. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -26,15 +26,6 @@ gchar *CN() { \ return benchmark_include_results(bench_results[BID], BN); \ } -BENCH_CALLBACK(callback_gui, "GPU Drawing", BENCHMARK_GUI, 1); -BENCH_CALLBACK(callback_fft, "FPU FFT", BENCHMARK_FFT, 0); -BENCH_CALLBACK(callback_nqueens, "CPU N-Queens", BENCHMARK_NQUEENS, 0); -BENCH_CALLBACK(callback_raytr, "FPU Raytracing", BENCHMARK_RAYTRACE, 0); -BENCH_CALLBACK(callback_bfsh, "CPU Blowfish", BENCHMARK_BLOWFISH, 0); -BENCH_CALLBACK(callback_cryptohash, "CPU CryptoHash", BENCHMARK_CRYPTOHASH, 1); -BENCH_CALLBACK(callback_fib, "CPU Fibonacci", BENCHMARK_FIB, 0); -BENCH_CALLBACK(callback_zlib, "CPU Zlib", BENCHMARK_ZLIB, 0); - #define BENCH_SCAN_SIMPLE(SN, BF, BID) \ void SN(gboolean reload) { \ SCAN_START(); \ @@ -42,14 +33,30 @@ void SN(gboolean reload) { \ SCAN_END(); \ } -BENCH_SCAN_SIMPLE(scan_fft, benchmark_fft, BENCHMARK_FFT); -BENCH_SCAN_SIMPLE(scan_nqueens, benchmark_nqueens, BENCHMARK_NQUEENS); -BENCH_SCAN_SIMPLE(scan_raytr, benchmark_raytrace, BENCHMARK_RAYTRACE); -BENCH_SCAN_SIMPLE(scan_bfsh, benchmark_fish, BENCHMARK_BLOWFISH); -BENCH_SCAN_SIMPLE(scan_cryptohash, benchmark_cryptohash, BENCHMARK_CRYPTOHASH); -BENCH_SCAN_SIMPLE(scan_fib, benchmark_fib, BENCHMARK_FIB); -BENCH_SCAN_SIMPLE(scan_zlib, benchmark_zlib, BENCHMARK_ZLIB); +#define BENCH_SIMPLE(BID, BN, BF, R) \ + BENCH_CALLBACK(callback_##BF, BN, BID, R); \ + BENCH_SCAN_SIMPLE(scan_##BF, BF, BID); +// ID, NAME, FUNCTION, R (0 = lower is better, 1 = higher is better) +BENCH_SIMPLE(BENCHMARK_FIB, "CPU Fibonacci", benchmark_fib, 1); +BENCH_SIMPLE(BENCHMARK_NQUEENS, "CPU N-Queens", benchmark_nqueens, 1); +BENCH_SIMPLE(BENCHMARK_FFT, "FPU FFT", benchmark_fft, 1); +BENCH_SIMPLE(BENCHMARK_RAYTRACE, "FPU Raytracing (Single-thread)", benchmark_raytrace, 1); +BENCH_SIMPLE(BENCHMARK_BLOWFISH_SINGLE, "CPU Blowfish (Single-thread)", benchmark_bfish_single, 1); +BENCH_SIMPLE(BENCHMARK_BLOWFISH_THREADS, "CPU Blowfish (Multi-thread)", benchmark_bfish_threads, 1); +BENCH_SIMPLE(BENCHMARK_BLOWFISH_CORES, "CPU Blowfish (Multi-core)", benchmark_bfish_cores, 1); +BENCH_SIMPLE(BENCHMARK_ZLIB, "CPU Zlib", benchmark_zlib, 1); +BENCH_SIMPLE(BENCHMARK_CRYPTOHASH, "CPU CryptoHash", benchmark_cryptohash, 1); +BENCH_SIMPLE(BENCHMARK_SBCPU_SINGLE, "SysBench CPU (Single-thread)", benchmark_sbcpu_single, 1); +BENCH_SIMPLE(BENCHMARK_SBCPU_ALL, "SysBench CPU (Multi-thread)", benchmark_sbcpu_all, 1); +BENCH_SIMPLE(BENCHMARK_SBCPU_QUAD, "SysBench CPU (Four threads)", benchmark_sbcpu_quad, 1); +BENCH_SIMPLE(BENCHMARK_MEMORY_SINGLE, "SysBench Memory (Single-thread)", benchmark_memory_single, 1); +BENCH_SIMPLE(BENCHMARK_MEMORY_DUAL, "SysBench Memory (Two threads)", benchmark_memory_dual, 1); +BENCH_SIMPLE(BENCHMARK_MEMORY_QUAD, "SysBench Memory (Quad threads)", benchmark_memory_quad, 1); +BENCH_SIMPLE(BENCHMARK_MEMORY_ALL, "SysBench Memory (Multi-thread)", benchmark_memory_all, 1); + +#if !GTK_CHECK_VERSION(3,0,0) +BENCH_CALLBACK(callback_gui, "GPU Drawing", BENCHMARK_GUI, 1); void scan_gui(gboolean reload) { SCAN_START(); @@ -69,37 +76,178 @@ void scan_gui(gboolean reload) } SCAN_END(); } +#endif static ModuleEntry entries[] = { - {N_("CPU Blowfish"), "blowfish.png", callback_bfsh, scan_bfsh, MODULE_FLAG_NONE}, - {N_("CPU CryptoHash"), "cryptohash.png", callback_cryptohash, scan_cryptohash, MODULE_FLAG_NONE}, - {N_("CPU Fibonacci"), "nautilus.png", callback_fib, scan_fib, MODULE_FLAG_NONE}, - {N_("CPU N-Queens"), "nqueens.png", callback_nqueens, scan_nqueens, MODULE_FLAG_NONE}, - {N_("CPU Zlib"), "file-roller.png", callback_zlib, scan_zlib, MODULE_FLAG_NONE}, - {N_("FPU FFT"), "fft.png", callback_fft, scan_fft, MODULE_FLAG_NONE}, - {N_("FPU Raytracing"), "raytrace.png", callback_raytr, scan_raytr, MODULE_FLAG_NONE}, -#if !GTK_CHECK_VERSION(3,0,0) - {N_("GPU Drawing"), "module.png", callback_gui, scan_gui, MODULE_FLAG_NO_REMOTE}, + [BENCHMARK_BLOWFISH_SINGLE] = + { + N_("CPU Blowfish (Single-thread)"), + "blowfish.png", + callback_benchmark_bfish_single, + scan_benchmark_bfish_single, + MODULE_FLAG_NONE, + }, + [BENCHMARK_BLOWFISH_THREADS] = + { + N_("CPU Blowfish (Multi-thread)"), + "blowfish.png", + callback_benchmark_bfish_threads, + scan_benchmark_bfish_threads, + MODULE_FLAG_NONE, + }, + [BENCHMARK_BLOWFISH_CORES] = + { + N_("CPU Blowfish (Multi-core)"), + "blowfish.png", + callback_benchmark_bfish_cores, + scan_benchmark_bfish_cores, + MODULE_FLAG_NONE, + }, + [BENCHMARK_ZLIB] = + { + N_("CPU Zlib"), + "file-roller.png", + callback_benchmark_zlib, + scan_benchmark_zlib, + MODULE_FLAG_NONE, + }, + [BENCHMARK_CRYPTOHASH] = + { + N_("CPU CryptoHash"), + "cryptohash.png", + callback_benchmark_cryptohash, + scan_benchmark_cryptohash, + MODULE_FLAG_NONE, + }, + [BENCHMARK_FIB] = + { + N_("CPU Fibonacci"), + "nautilus.png", + callback_benchmark_fib, + scan_benchmark_fib, + MODULE_FLAG_NONE, + }, + [BENCHMARK_NQUEENS] = + { + N_("CPU N-Queens"), + "nqueens.png", + callback_benchmark_nqueens, + scan_benchmark_nqueens, + MODULE_FLAG_NONE, + }, + [BENCHMARK_FFT] = + { + N_("FPU FFT"), + "fft.png", + callback_benchmark_fft, + scan_benchmark_fft, + MODULE_FLAG_NONE, + }, + [BENCHMARK_RAYTRACE] = + { + N_("FPU Raytracing (Single-thread)"), + "raytrace.png", + callback_benchmark_raytrace, + scan_benchmark_raytrace, + MODULE_FLAG_NONE, + }, + [BENCHMARK_SBCPU_SINGLE] = + { + N_("SysBench CPU (Single-thread)"), + "processor.png", + callback_benchmark_sbcpu_single, + scan_benchmark_sbcpu_single, + MODULE_FLAG_NONE, + }, + [BENCHMARK_SBCPU_ALL] = + { + N_("SysBench CPU (Multi-thread)"), + "processor.png", + callback_benchmark_sbcpu_all, + scan_benchmark_sbcpu_all, + MODULE_FLAG_NONE, + }, + [BENCHMARK_SBCPU_QUAD] = + { + N_("SysBench CPU (Four threads)"), + "processor.png", + callback_benchmark_sbcpu_quad, + scan_benchmark_sbcpu_quad, + MODULE_FLAG_HIDE, + }, + [BENCHMARK_MEMORY_SINGLE] = + { + N_("SysBench Memory (Single-thread)"), + "memory.png", + callback_benchmark_memory_single, + scan_benchmark_memory_single, + MODULE_FLAG_NONE, + }, + [BENCHMARK_MEMORY_DUAL] = + { + N_("SysBench Memory (Two threads)"), + "memory.png", + callback_benchmark_memory_dual, + scan_benchmark_memory_dual, + MODULE_FLAG_HIDE, + }, + [BENCHMARK_MEMORY_QUAD] = + { + N_("SysBench Memory (Quad threads)"), + "memory.png", + callback_benchmark_memory_quad, + scan_benchmark_memory_quad, + MODULE_FLAG_HIDE, + }, + [BENCHMARK_MEMORY_ALL] = + { + N_("SysBench Memory (Multi-thread)"), + "memory.png", + callback_benchmark_memory_all, + scan_benchmark_memory_all, + MODULE_FLAG_NONE, + }, +#if !GTK_CHECK_VERSION(3, 0, 0) + [BENCHMARK_GUI] = + { + N_("GPU Drawing"), + "module.png", + callback_gui, + scan_gui, + MODULE_FLAG_NO_REMOTE | MODULE_FLAG_HIDE, + }, +#else + [BENCHMARK_GUI] = {"#"}, #endif - {NULL} -}; + {NULL}}; const gchar *hi_note_func(gint entry) { switch (entry) { - case BENCHMARK_CRYPTOHASH: - return _("Results in MiB/second. Higher is better."); + case BENCHMARK_SBCPU_SINGLE: + case BENCHMARK_SBCPU_QUAD: + case BENCHMARK_SBCPU_ALL: + return _("Alexey Kopytov's <i><b>sysbench</b></i> is required.\n" + "Results in events/second. Higher is better."); + + case BENCHMARK_MEMORY_SINGLE: + case BENCHMARK_MEMORY_DUAL: + case BENCHMARK_MEMORY_QUAD: + case BENCHMARK_MEMORY_ALL: + return _("Alexey Kopytov's <i><b>sysbench</b></i> is required.\n" + "Results in MiB/second. Higher is better."); + case BENCHMARK_CRYPTOHASH: + case BENCHMARK_BLOWFISH_SINGLE: + case BENCHMARK_BLOWFISH_THREADS: + case BENCHMARK_BLOWFISH_CORES: case BENCHMARK_ZLIB: case BENCHMARK_GUI: - return _("Results in HIMarks. Higher is better."); - case BENCHMARK_FFT: case BENCHMARK_RAYTRACE: - case BENCHMARK_BLOWFISH: case BENCHMARK_FIB: case BENCHMARK_NQUEENS: - return _("Results in seconds. Lower is better."); + return _("Results in HIMarks. Higher is better."); } return NULL; |