digitalmars.D.bugs - [Issue 19577] New: std.parallelism unable to use more than 64 cores
- d-bugmail puremagic.com (23/23) Jan 11 2019 https://issues.dlang.org/show_bug.cgi?id=19577
https://issues.dlang.org/show_bug.cgi?id=19577 Issue ID: 19577 Summary: std.parallelism unable to use more than 64 cores Product: D Version: D2 Hardware: x86_64 URL: http://dlang.org/phobos/ OS: Windows Status: NEW Severity: enhancement Priority: P3 Component: phobos Assignee: nobody puremagic.com Reporter: crayolist gmail.com Currently std.parallelism.totalCPUs on Windows is implemented using the system call GetSystemInfo() which can return a maximum of 64 cores. On a Xeon Phi 7250 system with 272 cores it is impossible to exploit all cores. TBB (Threading building blocks) uses the Processor Groups to correctly identify all cores, like this; https://github.com/01org/tbb/blob/314792356bf75f4a190277536aea543b9b6b310b/src/tbb/tbb_misc_ex.cpp#L241 A Xeon Phi 7250 which has 68 cores and 4 threads per core is reported as 5 Processor Groups; 4 x 64 cores + 1 x 16 cores. --
Jan 11 2019