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

Multiple CPUs not supported! #3314

Closed
GabeAl opened this issue Jun 19, 2018 · 13 comments
Closed

Multiple CPUs not supported! #3314

GabeAl opened this issue Jun 19, 2018 · 13 comments

Comments

@GabeAl
Copy link

GabeAl commented Jun 19, 2018

  • Your Windows build number: (Type ver at a Windows Command Prompt)
    Microsoft Windows [Version 10.0.17134.112]

  • What you're doing and what's happening: (Copy&paste specific commands and their output, or include screen shots)
    image
    image

gabe@LLLightning:/mnt/c/Users/Admin/Desktop$ nproc

56
gabe@LLLightning:/mnt/c/Users/Admin/Desktop$ numactl -s

physcpubind: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
No NUMA support available on this system.


  • What's wrong / what should be happening instead:
    I should be able to see and use both CPUs as any Linux system.
    nproc returns 56 when it should be returning 112
    What's wrong? Processes that should use all cores are only use the cores and threads on a single processor. The other sits there idle.
@Biswa96
Copy link

Biswa96 commented Jun 19, 2018

OMG! WSL in Intel Xeon! 🤯 Did you try cat /proc/cpuinfo?

@GabeAl
Copy link
Author

GabeAl commented Jun 19, 2018

Yes! It only shows 56 processors.
cpuinfo.txt

Interestingly, top sees all 1.61 terabytes of RAM. Half of this RAM belongs to the processor it can't see!

top - 14:17:10 up 5 days, 13:25,  0 users,  load average: 0.52, 0.58, 0.59
Tasks:   4 total,   1 running,   3 sleeping,   0 stopped,   0 zombie
%Cpu(s): 29.9 us,  0.5 sy,  0.0 ni, 69.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 16092565+total, 15366054+free, 72421712 used,   229352 buff/cache
KiB Swap: 37108825+total, 37108825+free,        0 used. 15367010+avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    1 root      20   0    8304    108     80 S   0.0  0.0   0:00.09 init
    3 root      20   0    8304     52     16 S   0.0  0.0   0:00.00 init
    4 gabe      20   0   16916   2800   2704 S   0.0  0.0   0:00.44 bash
 4226 gabe      20   0   17628   2112   1500 R   0.0  0.0   0:00.01 top
...

@onomatopellan
Copy link

onomatopellan commented Jun 19, 2018

sockets: 2

Currently only a single socket is supported. Same as #1115

@therealkenc
Copy link
Collaborator

#1115 is an oldie but a goodie. I see we've gone from 88 to 112 logical cores since the previous rig.

@therealkenc
Copy link
Collaborator

Also -- and this is just me -- I think the dev team is prioritising #1115 all wrong. It seems to me that the whole team should get new dual socket Platinum 8180s so the problem can be thoroughly investigated. 😉

@GabeAl
Copy link
Author

GabeAl commented Jun 19, 2018

Don't forget at least a terabyte or three of RAM!

Funny you should say this about the core count -- seems to work fine on the Knights Landing CPU (mine has 272 threads -- though I don't know if all were recognized)

@0xbadfca11
Copy link

This is just curiosity, what happens when disable hyper-threading?
Do you see only 28 cores?

@GabeAl
Copy link
Author

GabeAl commented Jun 20, 2018 via email

@0xbadfca11
Copy link

Thank you for try.
I anticipated that it will recognize well if it is less than 64 cores that can fit in one Processor Group, but it is out of forecast.

@GabeAl
Copy link
Author

GabeAl commented Aug 12, 2018

Update on this. After the latest BIOS updates and windows updates, I did some more digging.

I found the following (HT=hyperthreading, NUMA=non-uniform memory access):
+HT+NUMA = 56 recognized; one cpu
+HT - NUMA = 48 recognized; unknown cpu
-HT -NUMA = 56 recognized, BOTH CPUs
-HT +NUMA = 28 recognized, one CPU

I think whatever this "processor group" thing you mentioned is, probably holds the key here.

@NablaCFD
Copy link

NablaCFD commented Sep 5, 2018

Some information:

I encounter the same problem, but maybe there is some information to be useful.

I have two workstations. The one of two has two sockets with Intel Xeon CPU E5-2699 v3 2.3 GHz, so in the machine, named as WORKSTATION, I have a 72 logical processors workstation (2 sockets * 18 physical cores per socket* 2 hyper-thread per core). Another machine I have is with two sockets with Intel Xeon CPU X5650 2.67 GHz, named as HOME, totally 24 logical processors (2 sockets * 12 physical cores per socket* 2 hyper-thread per core).

In the WORKSTATION machine, installed Windows 10 Pro with 1803 update and type ver in CMD:
Microsoft Windows [Version 10.0.17134.228]
In the HOME machine, installed Windows 10 Enterprise with 1803 update and type ver in CMD:
Microsoft Windows [version 10.0.17134.228]

The WSL installed on HOME is Ubuntu 16.04.5 LTS.
The WSL installed on WORKSTATION have several versions, include Ubuntu 16.04.5 LTS, Ubuntu 18.04.1 LTS, Kali GNU/Linux Rolling, Alpine Linux v3.6, CentOS 7.

On WORKSTATION, ONLY one socket can be recognized by WSL, thus I only can use the half of this machine power to computing something.

but on HOME, Two sockets can be fully recognized by WSL. I don't know why it happens. I can think the differences are either OS version (Pro vs Enterprise) or the supported max cores limit by WSL.

Some related COMMANDS:
Check sockets/physical cores per CPU/Logical processors, using the following commands in Windows 10 CMD:

  1. systeminfo
  2. wmic and enter: cpu get, then check item number(sockets number), numberoflogicalprocessors, numberofcores
  3. Windows task manager

In WSL:
lscpu
or
//The socket number or CPU number
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
//The physical processors
cat /proc/cpuinfo| grep "cpu cores"| uniq
//The logical processors
cat /proc/cpuinfo| grep "processor"| wc -l

@muratyurdakul75
Copy link

Hi

Unfortunately, there is no development on this issue. There are constant requests on this issue, but they are marked as "duplicate requests" and directed to old notifications. Is there any development?

Actually, there are multiple expectations regarding this NUMA issue;
1> More than one NUMA needs to be supported.
2> It needs to be able to work with more than 64 processors.
3> We need to be able to decide which NUMA it will work on. (There may be those who want it to work on only one NUMA)

It would be really great if such a development could be made.

Thank you in advance for your efforts.

@benhillis
Copy link
Member

hanks for your patience on this - we have identified a fix for this and will be releasing it as an update soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants