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

parallel cython build ends up in infinite recursion on macOS in yt-4.0 #2581

Closed
jzuhone opened this issue May 6, 2020 · 5 comments
Closed
Assignees
Labels

Comments

@jzuhone
Copy link
Contributor

jzuhone commented May 6, 2020

Bug report

Bug summary

We started using all available cores to build yt-4.0 from source in PR #2438. I recently tried to build on macOS and ended up in an infinite recursion. The huge traceback is here:

http://paste.yt-project.org/show/225/

Code for reproduction

Simply trying to install yt-4.0 from source in python setup.py develop or pip install -e . triggers this. If I comment out lines 22 and 23 here (disabling the parallel build) the problem goes away:

yt/setup.py

Lines 21 to 24 in d99f816

def _get_cpu_count():
if platform.system() != "Windows":
return os.cpu_count()
return 0

I have no idea if we have to treat macOS like Windows or if there's some way we can make it work.

Version Information

  • Operating System: macOS 10.15.3
  • Python Version: 3.8.2
  • yt version: 4.0
@triage-new-issues triage-new-issues bot added the triage Triage needed label May 6, 2020
@jzuhone jzuhone assigned jzuhone and Xarthisius and unassigned jzuhone May 6, 2020
@Xarthisius
Copy link
Member

I can't reproduce on OSX I have access to. Which compiler are you using?

@jzuhone
Copy link
Contributor Author

jzuhone commented May 6, 2020

clang:

gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
Apple clang version 11.0.3 (clang-1103.0.32.59)
Target: x86_64-apple-darwin19.3.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

@jzuhone
Copy link
Contributor Author

jzuhone commented May 6, 2020

This seems to be a Python 3.8 thing also, as I tried this on my 3.7 installation and it worked fine.

@Xarthisius
Copy link
Member

Could you try adding import multiprocessing at the top of the setup.py and see if that changes anything?

@jzuhone
Copy link
Contributor Author

jzuhone commented May 6, 2020

Sadly no. What seems to happen is that multiple copies of everything in setup.py runs.

@Xarthisius Xarthisius added bug and removed triage Triage needed labels May 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants