Skip to content

dealii: Added 'threads' variant that controls the TBB dependency#13931

Merged
adamjstewart merged 2 commits intospack:developfrom
alexrobomind:spack_threads_flag_in_dealii_package
Dec 1, 2019
Merged

dealii: Added 'threads' variant that controls the TBB dependency#13931
adamjstewart merged 2 commits intospack:developfrom
alexrobomind:spack_threads_flag_in_dealii_package

Conversation

@alexrobomind
Copy link
Copy Markdown
Contributor

TBB is an optional dependency of deal.II, used by the library to parallelize some operations with threads. If the cmake flag DEAL_II_WITH_THREADS (default: ON) is set to OFF, deal.II does not require TBB anymore. This pull request adds a variant 'threads' to the deal.II package with the same default behavior (+threads), which controls the TBB dependency.

The motivation for this pull request is that there is currently a bug in the Intel compiler (icpc version 19.0.3.199 (gcc version 8.3.0 compatibility)), that makes it impossible to compile deal.II with thread support enabled (a reference to one of the headers in TBB fires a "bad pointer" internal error in icpc). So without this variant, I could not build deal.II.

@alexrobomind alexrobomind force-pushed the spack_threads_flag_in_dealii_package branch from 1015ede to 5621484 Compare November 28, 2019 22:28
…S cmake option and the dependency on Intel TBB
@alexrobomind alexrobomind force-pushed the spack_threads_flag_in_dealii_package branch from 5621484 to 6757b70 Compare November 28, 2019 22:30
Copy link
Copy Markdown
Member

@adamjstewart adamjstewart left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alexrobomind
Copy link
Copy Markdown
Contributor Author

The coverage change report seems a bit strange to me, especially given that the default value is to behave as before. What is going on there?

@adamjstewart
Copy link
Copy Markdown
Member

The coverage change report seems a bit strange to me, especially given that the default value is to behave as before. What is going on there?

See the note at the bottom of https://spack.readthedocs.io/en/latest/contribution_guide.html#coverage. In this case, the reason coverage dropped so much is because we run macOS tests on develop but not on PRs.

@adamjstewart adamjstewart merged commit 8e3ff9b into spack:develop Dec 1, 2019
adamjstewart pushed a commit that referenced this pull request Dec 2, 2019
* amber: Improved package.py and added version 18

- Added amber 18 with ambertools 19
- Added all available patches
- Added +update variant to use the self update
- Added +openmp variant to get openmp optomizations
- Added +x11 variant when possible
- Splitted amber 16 and 18 dependencies
- We now detect the copiler type and compile accordingly
- Added cray variant which is a bit special (untested)
- Improved detection of possible cuda versions
- All compilation optimizations +mpi +openmp +cuda are compatible
- Updated to use setup_build_environment(), setup_run_environment()

* dealii: Added 'threads' variant that controls the TBB dependency (#13931)

* dealii: Added 'threads' variant that controls the DEAL_II_WITH_THREADS cmake option and the dependency on Intel TBB

* Update var/spack/repos/builtin/packages/dealii/package.py

Co-Authored-By: Adam J. Stewart <[email protected]>

* amber: Improved package.py and added version 18

- Added amber 18 with ambertools 19
- Added all available patches
- Added +update variant to use the self update
- Added +openmp variant to get openmp optomizations
- Added +x11 variant when possible
- Splitted amber 16 and 18 dependencies
- We now detect the copiler type and compile accordingly
- Added cray variant which is a bit special (untested)
- Improved detection of possible cuda versions
- All compilation optimizations +mpi +openmp +cuda are compatible
- Updated to use setup_build_environment(), setup_run_environment()

* amber: Adding missing flex and bison dependencies

* Removed cray variant; flex and bison now build only

* amber: Improved package.py and added version 18

- Added amber 18 with ambertools 19
- Added all available patches
- Added +update variant to use the self update
- Added +openmp variant to get openmp optomizations
- Added +x11 variant when possible
- Splitted amber 16 and 18 dependencies
- We now detect the copiler type and compile accordingly
- Added cray variant which is a bit special (untested)
- Improved detection of possible cuda versions
- All compilation optimizations +mpi +openmp +cuda are compatible
- Updated to use setup_build_environment(), setup_run_environment()

* amber: Adding missing flex and bison dependencies

* Removed cray variant; flex and bison now build only

* dealii: Fixed flake8 issues

* amber: corrected typo

* amber: Removed unused variant python
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants