Introduction
Introduction Statistics Contact Development Disclaimer Help
util.c - libzahl - big integer library
git clone git://git.suckless.org/libzahl
Log
Files
Refs
README
LICENSE
---
util.c (798B)
---
1 #define COMPILING_UTIL_C
2 #include "util.h"
3
4
5 char timebuf[512];
6 unsigned long long int freq;
7
8
9 void
10 benchmark_init(void)
11 {
12 #if defined(__linux__) && defined(USE_RDTSC)
13 cpu_set_t cpuset;
14 FILE *f;
15 char *line = 0;
16 size_t size = 0;
17 char path[PATH_MAX];
18 CPU_ZERO(&cpuset);
19 CPU_SET(USE_CPU, &cpuset);
20 sched_setaffinity(getpid(), sizeof(cpuset), &cpuset);
21 sprintf(path, "/sys/devices/system/cpu/cpu%i/cpufreq/cpuinfo_max…
22 f = fopen(path, "r");
23 if (getline(&line, &size, f) < 0)
24 abort();
25 fclose(f);
26 freq = strtoull(line, 0, 10);
27 free(line);
28
29 #elif defined(__linux__)
30 cpu_set_t cpuset;
31 CPU_ZERO(&cpuset);
32 CPU_SET(USE_CPU, &cpuset);
33 sched_setaffinity(getpid(), sizeof(cpuset), &cpuset);
34
35 #else
36 fprintf(stderr, "WARNING: Don't know how to set CPU affinity.\n"…
37
38 #endif
39 }
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.