Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

std.parallelism unable to use more than 64 cores #10365

Open
dlangBugzillaToGithub opened this issue Jan 11, 2019 · 0 comments
Open

std.parallelism unable to use more than 64 cores #10365

dlangBugzillaToGithub opened this issue Jan 11, 2019 · 0 comments
Labels
Arch:x86_64 Issues specific to x86_64 OS:Windows Issues Specific to Windows Severity:Enhancement

Comments

@dlangBugzillaToGithub
Copy link

crayolist reported this on 2019-01-11T19:56:42Z

Transfered from https://issues.dlang.org/show_bug.cgi?id=19577

Description

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.
@LightBender LightBender removed the P4 label Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Arch:x86_64 Issues specific to x86_64 OS:Windows Issues Specific to Windows Severity:Enhancement
Projects
None yet
Development

No branches or pull requests

2 participants