aboutsummaryrefslogtreecommitdiff
path: root/modules/benchmark/bench_results.c
diff options
context:
space:
mode:
authorBurt P <pburt0@gmail.com>2017-08-15 20:22:51 -0500
committerLeandro A. F. Pereira <leandro@hardinfo.org>2017-08-21 05:47:00 -0700
commit72cd4f205211b7fffc6c5cd8926921d4eef6ab6a (patch)
tree5ebf18d7dff6d49552c26a52581975fb48aec367 /modules/benchmark/bench_results.c
parentf85e67ca2f75b939d85de2a92be11214f62ea7ef (diff)
bench_results: store int processors/cores/threads
In the future, won't have to rely on a translated string. Signed-off-by: Burt P <pburt0@gmail.com>
Diffstat (limited to 'modules/benchmark/bench_results.c')
-rw-r--r--modules/benchmark/bench_results.c28
1 files changed, 22 insertions, 6 deletions
diff --git a/modules/benchmark/bench_results.c b/modules/benchmark/bench_results.c
index 4c7b3dca..b69c1767 100644
--- a/modules/benchmark/bench_results.c
+++ b/modules/benchmark/bench_results.c
@@ -25,6 +25,8 @@ typedef struct {
char *cpu_desc;
char *cpu_config;
char *ogl_renderer;
+ int processors;
+ int cores;
int threads;
char *mid;
} simple_machine;
@@ -141,6 +143,7 @@ simple_machine *simple_machine_new() {
simple_machine *simple_machine_this() {
simple_machine *m = NULL;
char *tmp;
+
m = simple_machine_new();
if (m) {
m->board = module_call_method("devices::getMotherboard");
@@ -151,9 +154,14 @@ simple_machine *simple_machine_this() {
tmp = module_call_method("devices::getMemoryTotal");
m->memory_kiB = atoi(tmp);
free(tmp);
+
+ cpu_procs_cores_threads(&m->processors, &m->cores, &m->threads);
+ /*
tmp = module_call_method("devices::getProcessorCount");
m->threads = atoi(tmp);
free(tmp);
+ */
+
gen_machine_id(m);
}
return m;
@@ -224,7 +232,7 @@ bench_result *bench_result_benchmarkconf(const char *section, const char *key, c
b->machine = simple_machine_new();
b->name = strdup(section);
- if (vl >= 8) { /* the 9th could be empty */
+ if (vl >= 10) { /* the 11th could be empty */
b->machine->mid = strdup(key);
b->result = atof(values[0]);
b->threads = atoi(values[1]);
@@ -233,9 +241,11 @@ bench_result *bench_result_benchmarkconf(const char *section, const char *key, c
b->machine->cpu_desc = strdup(values[4]);
b->machine->cpu_config = strdup(values[5]);
b->machine->memory_kiB = atoi(values[6]);
- b->machine->threads = atoi(values[7]);
- if (vl >= 9)
- b->machine->ogl_renderer = strdup(values[8]);
+ b->machine->processors = atoi(values[7]);
+ b->machine->cores = atoi(values[8]);
+ b->machine->threads = atoi(values[9]);
+ if (vl >= 11)
+ b->machine->ogl_renderer = strdup(values[10]);
b->legacy = 0;
} else if (vl >= 2) {
b->result = atof(values[0]);
@@ -292,7 +302,12 @@ bench_result *bench_result_benchmarkconf(const char *section, const char *key, c
}
}
}
+
+ /* old results only give threads */
+ b->machine->processors = -1;
+ b->machine->cores = -1;
}
+
b->machine->cpu_config = cpu_config_retranslate(b->machine->cpu_config, 0, 1);
if (b->machine->board != NULL && strlen(b->machine->board) == 0) {
free(b->machine->board);
@@ -309,13 +324,14 @@ bench_result *bench_result_benchmarkconf(const char *section, const char *key, c
char *bench_result_benchmarkconf_line(bench_result *b) {
char *cpu_config = cpu_config_retranslate(b->machine->cpu_config, 1, 0);
- char *ret = g_strdup_printf("%s=%.2f|%d|%s|%s|%s|%s|%d|%d|%s\n",
+ char *ret = g_strdup_printf("%s=%.2f|%d|%s|%s|%s|%s|%d|%d|%d|%d|%s\n",
b->machine->mid, b->result, b->threads,
(b->machine->board != NULL) ? b->machine->board : "",
b->machine->cpu_name,
(b->machine->cpu_desc != NULL) ? b->machine->cpu_desc : "",
cpu_config,
- b->machine->memory_kiB, b->machine->threads,
+ b->machine->memory_kiB,
+ b->machine->processors, b->machine->cores, b->machine->threads,
(b->machine->ogl_renderer != NULL) ? b->machine->ogl_renderer : ""
);
free(cpu_config);