summaryrefslogtreecommitdiff
path: root/hardinfo2/arch
diff options
context:
space:
mode:
authorLeandro A. F. Pereira <leandro@hardinfo.org>2006-12-29 17:11:42 +0000
committerLeandro A. F. Pereira <leandro@hardinfo.org>2006-12-29 17:11:42 +0000
commit2fd7db664a595d2028584362570c73b102e332fd (patch)
treede8fcf7b5382ced07077063e172de89b4c5559e8 /hardinfo2/arch
parent47f51994edbe05d128a6e5d88d726902f1f46135 (diff)
Add John Walker's FBENCH FPU benchmark.
Diffstat (limited to 'hardinfo2/arch')
-rw-r--r--hardinfo2/arch/common/raytrace.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/hardinfo2/arch/common/raytrace.h b/hardinfo2/arch/common/raytrace.h
new file mode 100644
index 00000000..8cabcbbb
--- /dev/null
+++ b/hardinfo2/arch/common/raytrace.h
@@ -0,0 +1,48 @@
+/*
+ * HardInfo - Displays System Information
+ * Copyright (C) 2003-2006 Leandro A. F. Pereira <leandro@linuxmag.com.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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+void fbench(); /* fbench.c */
+
+static gchar *
+benchmark_raytrace(void)
+{
+ int i;
+ GTimer *timer = g_timer_new();
+ gdouble elapsed = 0;
+
+ shell_view_set_enabled(FALSE);
+ shell_status_update("Performing John Walker's FBENCH...");
+
+ for (i = 0; i <= 1000; i++) {
+ g_timer_start(timer);
+
+ fbench();
+
+ g_timer_stop(timer);
+ elapsed += g_timer_elapsed(timer, NULL);
+
+ shell_status_set_percentage(i/10);
+ }
+
+ g_timer_destroy(timer);
+
+ gchar *retval = g_strdup_printf("[Results <i>(in seconds; lower is better)</i>]\n"
+ "<i>This Machine</i>=%.2f\n", elapsed);
+ return benchmark_include_results(retval, "FBENCH");
+}
+