[issue23037] cpu_count() unreliable on Windows

STINNER Victor report at bugs.python.org
Fri Dec 12 14:13:57 CET 2014


STINNER Victor added the comment:

The code getting the number of processors on Windows is different between the multiprocessing (Python 3.3) and os (Python 3.5) modules.

multiprocessing (old code):

        try:
            num = int(os.environ['NUMBER_OF_PROCESSORS'])
        except (ValueError, KeyError):
            num = 0

os (new code):

    SYSTEM_INFO sysinfo;
    GetSystemInfo(&sysinfo);
    ncpu = sysinfo.dwNumberOfProcessors;

os.cpu_count() is already implemented with GetSystemInfo() in Python 3.5, so this issue can be closed. Thanks for the reminder Mark, it was useful to double check.

If you want to take a look at the source code:
https://hg.python.org/cpython/file/35b7dde7fd53/Modules/posixmodule.c#l16064

----------
nosy: +haypo
resolution:  -> fixed
status: open -> closed

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue23037>
_______________________________________


More information about the Python-bugs-list mailing list