22 #include "libpbd-config.h"
27 #elif defined(__APPLE__) || defined(__FreeBSD__)
29 #include <sys/types.h>
30 #include <sys/sysctl.h>
31 #elif defined(PLATFORM_WINDOWS)
37 #if defined(COMPILER_MSVC) && !defined(PTW32_VERSION)
38 #include <ardourext/pthread.h>
44 #if defined(PTW32_VERSION) || defined(__hpux)
45 return pthread_num_processors_np();
46 #elif defined(__APPLE__) || defined(__FreeBSD__)
48 size_t size=
sizeof(count);
49 return sysctlbyname(
"hw.physicalcpu",&count,&size,NULL,0)?0:count;
50 #elif defined(HAVE_UNISTD) && defined(_SC_NPROCESSORS_ONLN)
51 int const count=sysconf(_SC_NPROCESSORS_ONLN);
52 return (count>0)?count:0;
53 #elif defined(PLATFORM_WINDOWS)
55 GetSystemInfo( &sys_info );
56 return sys_info.dwNumberOfProcessors;
uint32_t hardware_concurrency()