Deleted Added
full compact
tuklib_cpucores.c (292588) tuklib_cpucores.c (312518)
1///////////////////////////////////////////////////////////////////////////////
2//
3/// \file tuklib_cpucores.c
4/// \brief Get the number of CPU cores online
5//
6// Author: Lasse Collin
7//
8// This file has been put into the public domain.

--- 4 unchanged lines hidden (view full) ---

13#include "tuklib_cpucores.h"
14
15#if defined(_WIN32) || defined(__CYGWIN__)
16# ifndef _WIN32_WINNT
17# define _WIN32_WINNT 0x0500
18# endif
19# include <windows.h>
20
1///////////////////////////////////////////////////////////////////////////////
2//
3/// \file tuklib_cpucores.c
4/// \brief Get the number of CPU cores online
5//
6// Author: Lasse Collin
7//
8// This file has been put into the public domain.

--- 4 unchanged lines hidden (view full) ---

13#include "tuklib_cpucores.h"
14
15#if defined(_WIN32) || defined(__CYGWIN__)
16# ifndef _WIN32_WINNT
17# define _WIN32_WINNT 0x0500
18# endif
19# include <windows.h>
20
21// glibc >= 2.9
22#elif defined(TUKLIB_CPUCORES_SCHED_GETAFFINITY)
23# include <sched.h>
24
21// FreeBSD
22#elif defined(TUKLIB_CPUCORES_CPUSET)
23# include <sys/param.h>
24# include <sys/cpuset.h>
25
26#elif defined(TUKLIB_CPUCORES_SYSCTL)
27# ifdef HAVE_SYS_PARAM_H
28# include <sys/param.h>

--- 15 unchanged lines hidden (view full) ---

44{
45 uint32_t ret = 0;
46
47#if defined(_WIN32) || defined(__CYGWIN__)
48 SYSTEM_INFO sysinfo;
49 GetSystemInfo(&sysinfo);
50 ret = sysinfo.dwNumberOfProcessors;
51
25// FreeBSD
26#elif defined(TUKLIB_CPUCORES_CPUSET)
27# include <sys/param.h>
28# include <sys/cpuset.h>
29
30#elif defined(TUKLIB_CPUCORES_SYSCTL)
31# ifdef HAVE_SYS_PARAM_H
32# include <sys/param.h>

--- 15 unchanged lines hidden (view full) ---

48{
49 uint32_t ret = 0;
50
51#if defined(_WIN32) || defined(__CYGWIN__)
52 SYSTEM_INFO sysinfo;
53 GetSystemInfo(&sysinfo);
54 ret = sysinfo.dwNumberOfProcessors;
55
56#elif defined(TUKLIB_CPUCORES_SCHED_GETAFFINITY)
57 cpu_set_t cpu_mask;
58 if (sched_getaffinity(0, sizeof(cpu_mask), &cpu_mask) == 0)
59 ret = CPU_COUNT(&cpu_mask);
60
52#elif defined(TUKLIB_CPUCORES_CPUSET)
53 cpuset_t set;
54 if (cpuset_getaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, -1,
55 sizeof(set), &set) == 0) {
56# ifdef CPU_COUNT
57 ret = CPU_COUNT(&set);
58# else
59 for (unsigned i = 0; i < CPU_SETSIZE; ++i)

--- 32 unchanged lines hidden ---
61#elif defined(TUKLIB_CPUCORES_CPUSET)
62 cpuset_t set;
63 if (cpuset_getaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, -1,
64 sizeof(set), &set) == 0) {
65# ifdef CPU_COUNT
66 ret = CPU_COUNT(&set);
67# else
68 for (unsigned i = 0; i < CPU_SETSIZE; ++i)

--- 32 unchanged lines hidden ---