diff options
author | Leandro A. F. Pereira <leandro@hardinfo.org> | 2009-03-08 17:21:08 -0300 |
---|---|---|
committer | Leandro A. F. Pereira <leandro@hardinfo.org> | 2009-03-08 17:21:08 -0300 |
commit | 2618d2516b55f2e89cf076428a1b9b0428877b89 (patch) | |
tree | fed73b6b9db0c8e02ba7f0bed714787a1729f1e7 /hardinfo2/benchmark.c | |
parent | 088f59d46f6dd2ef940bc704f4e7c2b4fd95eee4 (diff) |
Add FFT benchmark
Diffstat (limited to 'hardinfo2/benchmark.c')
-rw-r--r-- | hardinfo2/benchmark.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/hardinfo2/benchmark.c b/hardinfo2/benchmark.c index d03ce531..f115afe5 100644 --- a/hardinfo2/benchmark.c +++ b/hardinfo2/benchmark.c @@ -26,6 +26,7 @@ #include <sys/resource.h> enum { + BENCHMARK_FFT, BENCHMARK_FIB, BENCHMARK_CRYPTOHASH, BENCHMARK_BLOWFISH, @@ -34,12 +35,14 @@ enum { BENCHMARK_N_ENTRIES } Entries; +void scan_fft(gboolean reload); void scan_raytr(gboolean reload); void scan_bfsh(gboolean reload); void scan_cryptohash(gboolean reload); void scan_fib(gboolean reload); void scan_nqueens(gboolean reload); +gchar *callback_fft(); gchar *callback_raytr(); gchar *callback_bfsh(); gchar *callback_fib(); @@ -47,10 +50,11 @@ gchar *callback_cryptohash(); gchar *callback_nqueens(); static ModuleEntry entries[] = { - {"CPU Fibonacci", "nautilus.png", callback_fib, scan_fib}, - {"CPU CryptoHash", "cryptohash.png", callback_cryptohash, scan_cryptohash}, {"CPU Blowfish", "blowfish.png", callback_bfsh, scan_bfsh}, + {"CPU CryptoHash", "cryptohash.png", callback_cryptohash, scan_cryptohash}, + {"CPU Fibonacci", "nautilus.png", callback_fib, scan_fib}, {"CPU N-Queens", "nqueens.png", callback_nqueens, scan_nqueens}, + {"FPU FFT", "fft.png", callback_fft, scan_fft}, {"FPU Raytracing", "raytrace.png", callback_raytr, scan_raytr}, {NULL} }; @@ -118,7 +122,7 @@ gdouble benchmark_parallel_for(guint start, guint end, DEBUG("launching thread %d", 1 + (iter / iter_per_core)); pbt->start = iter == 0 ? 0 : iter + 1; - pbt->end = iter + iter_per_core; + pbt->end = iter + iter_per_core - 1; pbt->data = callback_data; pbt->callback = callback; @@ -222,6 +226,13 @@ static gdouble bench_results[BENCHMARK_N_ENTRIES]; #include <arch/common/blowfish.h> #include <arch/common/raytrace.h> #include <arch/common/nqueens.h> +#include <arch/common/fft.h> + +gchar *callback_fft() +{ + return benchmark_include_results(bench_results[BENCHMARK_FFT], + "CPU FFT"); +} gchar *callback_nqueens() { @@ -261,6 +272,13 @@ gchar *callback_fib() setpriority(PRIO_PROCESS, 0, old_priority); \ } while (0); +void scan_fft(gboolean reload) +{ + SCAN_START(); + RUN_WITH_HIGH_PRIORITY(benchmark_fft); + SCAN_END(); +} + void scan_nqueens(gboolean reload) { SCAN_START(); |