Number of CPUs detected by ray on systems with different CPUs

On a Linux Ubuntu 18.04.5 system with an Intel(R) Xeon(R) Platinum 8259CL CPU, python’s (3.8.8) multiprocessing module detects 64 CPUs. If I try to initialize ray (1.13.0) on said system, it detects 2 CPUs. On a Linux system with an AMD EPYC 7R32 CPU, multiprocessing detects 192 cores, while ray (same version) detects 190 CPUs. Any thoughts as to why ray isn’t seeing all of the cores on the system with the Intel CPU?

Hey @lebedov , thanks for flagging this, this doesn’t right for sure!

When you say ray detects X CPUs, which functions/commands you used from ray?

ray.init() followed by ray.nodes(); I’m alluding to what the latter reports.


Hey @lebedov , sorry for the delay in replying (missed this reply)

ray.nodes() look at the resources currently available for scheduling, taking into account states of nodes as well. Depending on the state of the clusters (whether nodes are registered or alive), the number might appear different.

Would you confirm that the number of alive nodes are the same and the cluster is in similar states on the two environment as well?

For each of the two scenarios I mentioned, the cluster consists only of a single node (i.e., the one on which ray.init() is executed), which also is the only node reported by ray.nodes().

I just noticed that if I call ray.init() with num_cpus=X on the 64-core Intel Xeon system with X set to some number higher than 2 , ray.nodes() subsequently reports that number of CPUs in the detected node - even when X is greater than 64.