Thanks to visit codestin.com
Credit goes to github.com

Skip to content

f2py throws error on VM #12136

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

Closed
briantoby opened this issue Oct 10, 2018 · 1 comment
Closed

f2py throws error on VM #12136

briantoby opened this issue Oct 10, 2018 · 1 comment

Comments

@briantoby
Copy link

briantoby commented Oct 10, 2018

f2py fails on VM that is not configured for multiple CPUs

File "...\numpy\distutils\misc_util.py" (line 99, function get_num_build_jobs) assumes that multiprocessing multiprocessing.cpu_count will always return a number. At least on the VM I use to do windows builds, I get an exception, as below.

Solution is a patch to put the call in a try/except block and recover:

    try:
        cpu_count = len(os.sched_getaffinity(0))
    except AttributeError:
       cpu_count = multiprocessing.cpu_count()

to

    try:
        cpu_count = len(os.sched_getaffinity(0))
    except AttributeError:
        try:
            cpu_count = multiprocessing.cpu_count()
        except NotImplementedError:
            cpu_count = 1

Error message:

Traceback (most recent call last):
  File "C:\Users\toby\miniconda2-64\Scripts\f2py.py", line 28, in <module>
    main()
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\f2py\f2py2e.py", line 648, in main
    run_compile()
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\f2py\f2py2e.py", line 633, in run_compile
    setup(ext_modules=[ext])
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\core.py", line 169, in setup
    return old_setup(**new_attr)
  File "C:\Users\toby\miniconda2-64\lib\distutils\core.py", line 151, in setup
    dist.run_commands()
  File "C:\Users\toby\miniconda2-64\lib\distutils\dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "C:\Users\toby\miniconda2-64\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\command\build.py", line 47, in run
    old_build.run(self)
  File "C:\Users\toby\miniconda2-64\lib\distutils\command\build.py", line 127, in run
    self.run_command(cmd_name)
  File "C:\Users\toby\miniconda2-64\lib\distutils\cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "C:\Users\toby\miniconda2-64\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\command\build_ext.py", line 262, in run
    self.build_extensions()
  File "C:\Users\toby\miniconda2-64\lib\distutils\command\build_ext.py", line 449, in build_extensions
    self.build_extension(ext)
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\command\build_ext.py", line 380, in build_extension
    **kws)
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\ccompiler.py", line 246, in CCompiler_compile
    jobs = get_num_build_jobs()
  File "C:\Users\toby\miniconda2-64\lib\site-packages\numpy\distutils\misc_util.py", line 99, in get_num_build_jobs
    cpu_count = multiprocessing.cpu_count()
  File "C:\Users\toby\miniconda2-64\lib\multiprocessing\__init__.py", line 136, in cpu_count
    raise NotImplementedError('cannot determine number of cpus')
NotImplementedError: cannot determine number of cpus

Numpy/Python version information:

'2.7.15 |Anaconda, Inc.| (default, May 1 2018, 18:37:09) [MSC v.1500 64 bit (AMD64)]'
numpy-1.15.2 (via anaconda)

@HaoZeke
Copy link
Member

HaoZeke commented Sep 5, 2023

No longer reproducible / valid after #24532.

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

No branches or pull requests

3 participants