Skip to content

Horovod 0.26.1 for PyTorch 1.11.0#17580

Closed
absrocks wants to merge 9 commits intoeasybuilders:developfrom
absrocks:abhi_horovod
Closed

Horovod 0.26.1 for PyTorch 1.11.0#17580
absrocks wants to merge 9 commits intoeasybuilders:developfrom
absrocks:abhi_horovod

Conversation

@absrocks
Copy link
Copy Markdown
Contributor

No description provided.

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4471729272
Output from first failing test suite run:

ERROR: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 854, in test_dep_versions_per_toolchain_generation
    for ec in self.ordered_specs:
  File "test/easyconfigs/easyconfigs.py", line 279, in ordered_specs
    EasyConfigTest.resolve_all_dependencies()
  File "test/easyconfigs/easyconfigs.py", line 217, in resolve_all_dependencies
    cls._parsed_easyconfigs, modules_tool(), retain_all_deps=True)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 463, in resolve_dependencies
    raise_error_missing_deps(totally_missing, extra_msg="no easyconfig file or existing module found")
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 326, in raise_error_missing_deps
    raise EasyBuildError(error_msg)
EasyBuildError: 'Missing dependencies: PyTorch/1.11.0-foss-2021b-CUDA-11.4.1 (no easyconfig file or existing module found)'

======================================================================
FAIL: test__parse_easyconfig_Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency CUDA is deprecated, use the `SYSTEM` template constant instead

----------------------------------------------------------------------
Ran 16652 tests in 603.882s

FAILED (failures=1, errors=1)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4473775953
Output from first failing test suite run:

ERROR: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 854, in test_dep_versions_per_toolchain_generation
    for ec in self.ordered_specs:
  File "test/easyconfigs/easyconfigs.py", line 279, in ordered_specs
    EasyConfigTest.resolve_all_dependencies()
  File "test/easyconfigs/easyconfigs.py", line 217, in resolve_all_dependencies
    cls._parsed_easyconfigs, modules_tool(), retain_all_deps=True)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 463, in resolve_dependencies
    raise_error_missing_deps(totally_missing, extra_msg="no easyconfig file or existing module found")
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 326, in raise_error_missing_deps
    raise EasyBuildError(error_msg)
EasyBuildError: 'Missing dependencies: typing-extensions/4.3.0-foss-2021b, Pillow/8.2.0-foss-2021b (no easyconfig file or existing module found)'

======================================================================
FAIL: test__parse_easyconfig_Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency CUDA is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test__parse_easyconfig_PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency CUDA is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test_style_conformance (test.easyconfigs.styletests.StyleTest)
Check the easyconfigs for style
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/styletests.py", line 68, in test_style_conformance
    self.assertEqual(result, 0, error_msg)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/base/testing.py", line 119, in assertEqual
    raise AssertionError("%s:\nDIFF%s:\n%s" % (msg, limit, ''.join(diff[:self.ASSERT_MAX_DIFF])))
AssertionError: There shouldn't be any code style errors (and/or warnings), found 1:
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/PyTorch/PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb:79:25: E261 at least two spaces before inline comment

: 1 != 0:
DIFF:
- 1

----------------------------------------------------------------------
Ran 16658 tests in 647.295s

FAILED (failures=3, errors=1)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

('GMP', '6.2.1'),
('numactl', '2.0.14'),
('FFmpeg', '4.3.2'),
('Pillow', '8.2.0'), # 8.3.2
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Note that Pillow 8.3.2 is used in this toolchain as dependency. I see you put that in a comment, was there a particular reason not to use it here?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I initially tried with Pillow 8.3.2, but it has a compatibility error. The configuration requires Pillow lower version. Hence I used Pillow 8.2.0 as the same version was used in PyTorch-1.11.0-foss-2021a-CUDA-11.3.1.eb

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Ok, in that case two things will need to be done:

  1. A clear comment should be put in the EasyConfig as to why the version is different. Typically a one-sentence mention of the error you'd get if you use newer pillow, plus a reference link to an issue describing the error more extensively (if needed). Feel free to just open an issue for that on easybuild-easyconfigs, describe the error with a full trace of the output/error you get, and close your own issue with a remark that the solution is to downgrade to Pillow 8.2.0.

  2. An exception needs to be made for the CI to accept that a different version of Pillow will be used here than in other parts of the toolchain. You can do that by adding Pillow to the dictionary here. The key should be Pillow and the value should be a list of tuples, where the first element is the version of pillow that should be accepted (i.e. '8.2.0' in this case) and the second should be a list of the packages that are allowed to use this dependency version of Pillow, i.e. in your case r'PyTorch-1\.11\.0-. These are regular expressions, so that's why the . should be escaped there (there are plenty of examples in that file).

By the way, I see the CI is also tripping over the typing-extensions version, for the same reason (another version of typing-extensions is already in use in this toolchain). The same two points as above will apply to that. I.e. justify & document why we deviate from the version already use in the toolchain (1) and add it as an exception to CI (2).

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4474495793
Output from first failing test suite run:

ERROR: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 854, in test_dep_versions_per_toolchain_generation
    for ec in self.ordered_specs:
  File "test/easyconfigs/easyconfigs.py", line 279, in ordered_specs
    EasyConfigTest.resolve_all_dependencies()
  File "test/easyconfigs/easyconfigs.py", line 217, in resolve_all_dependencies
    cls._parsed_easyconfigs, modules_tool(), retain_all_deps=True)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 463, in resolve_dependencies
    raise_error_missing_deps(totally_missing, extra_msg="no easyconfig file or existing module found")
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 326, in raise_error_missing_deps
    raise EasyBuildError(error_msg)
EasyBuildError: 'Missing dependencies: typing-extensions/4.3.0-foss-2021b, Pillow/8.2.0-foss-2021b (no easyconfig file or existing module found)'

======================================================================
FAIL: test__parse_easyconfig_Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency CUDA is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test__parse_easyconfig_PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency CUDA is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test_style_conformance (test.easyconfigs.styletests.StyleTest)
Check the easyconfigs for style
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/styletests.py", line 68, in test_style_conformance
    self.assertEqual(result, 0, error_msg)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/base/testing.py", line 119, in assertEqual
    raise AssertionError("%s:\nDIFF%s:\n%s" % (msg, limit, ''.join(diff[:self.ASSERT_MAX_DIFF])))
AssertionError: There shouldn't be any code style errors (and/or warnings), found 1:
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/PyTorch/PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb:79:25: E261 at least two spaces before inline comment

: 1 != 0:
DIFF:
- 1

----------------------------------------------------------------------
Ran 16664 tests in 658.863s

FAILED (failures=3, errors=1)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4525965297
Output from first failing test suite run:

ERROR: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 854, in test_dep_versions_per_toolchain_generation
    for ec in self.ordered_specs:
  File "test/easyconfigs/easyconfigs.py", line 279, in ordered_specs
    EasyConfigTest.resolve_all_dependencies()
  File "test/easyconfigs/easyconfigs.py", line 217, in resolve_all_dependencies
    cls._parsed_easyconfigs, modules_tool(), retain_all_deps=True)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 463, in resolve_dependencies
    raise_error_missing_deps(totally_missing, extra_msg="no easyconfig file or existing module found")
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/tools/robot.py", line 326, in raise_error_missing_deps
    raise EasyBuildError(error_msg)
EasyBuildError: 'Missing dependencies: Pillow/8.2.0-foss-2021b (no easyconfig file or existing module found)'

======================================================================
FAIL: test__parse_easyconfig_PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency cuDNN is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test_style_conformance (test.easyconfigs.styletests.StyleTest)
Check the easyconfigs for style
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/styletests.py", line 68, in test_style_conformance
    self.assertEqual(result, 0, error_msg)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/base/testing.py", line 119, in assertEqual
    raise AssertionError("%s:\nDIFF%s:\n%s" % (msg, limit, ''.join(diff[:self.ASSERT_MAX_DIFF])))
AssertionError: There shouldn't be any code style errors (and/or warnings), found 1:
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/PyTorch/PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb:79:25: E261 at least two spaces before inline comment

: 1 != 0:
DIFF:
- 1

----------------------------------------------------------------------
Ran 16700 tests in 925.996s

FAILED (failures=2, errors=1)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4526928056
Output from first failing test suite run:

FAIL: test__parse_easyconfig_PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb (test.easyconfigs.easyconfigs.EasyConfigTest)
Test for easyconfig PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 1543, in innertest
    template_easyconfig_test(self, spec_path)
  File "test/easyconfigs/easyconfigs.py", line 1518, in template_easyconfig_test
    self.fail(error_msg)
AssertionError: use of `True` to indicate the system toolchain for dependency cuDNN is deprecated, use the `SYSTEM` template constant instead

======================================================================
FAIL: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 884, in test_dep_versions_per_toolchain_generation
    self.assertFalse(multi_dep_vars, error_msg)
AssertionError: No multi-variant deps found for '^.*-(?P<tc_gen>20(1[89]|[2-9][0-9])[ab]).*\.eb$' easyconfigs:

found 2 variants of 'Pillow' dependency in easyconfigs using '2021b' toolchain generation
* version: 8.2.0; versionsuffix:  as dep for set(['Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb', 'PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb'])
* version: 8.3.2; versionsuffix:  as dep for set(['GRASS-8.2.0-foss-2021b.eb', 'scanpy-1.9.1-foss-2021b.eb', 'TOBIAS-0.12.12-foss-2021b.eb', 'GTDB-Tk-2.1.1-foss-2021b.eb', 'samplot-1.3.0-foss-2021b.eb', 'infercnvpy-0.4.0-foss-2021b.eb', 'MultiQC-1.12-foss-2021b.eb', 'deepTools-3.5.1-foss-2021b.eb', 'TELEMAC-MASCARET-8p3r1-foss-2021b.eb', 'AmberTools-21.12-foss-2021b.eb', 'histolab-0.4.1-foss-2021b.eb', 'SimPEG-0.18.1-foss-2021b.eb', 'SimPEG-0.18.1-intel-2021b.eb', 'regionmask-0.9.0-foss-2021b.eb', 'wxPython-4.2.0-foss-2021b.eb', 'ArviZ-0.11.4-foss-2021b.eb', 'NetPyNE-1.0.2.1-foss-2021b.eb', 'stardist-0.8.3-foss-2021b.eb', 'QGIS-3.28.1-foss-2021b.eb', 'OpenAI-Gym-0.21.0-foss-2021b.eb', 'AmberTools-21-intel-2021b.eb', 'Trycycler-0.5.3-foss-2021b.eb', 'NLTK-3.7-foss-2021b.eb', 'EGTtools-0.1.10.dev2-foss-2021b.eb', 'MDAnalysis-2.0.0-intel-2021b.eb', 'imgaug-0.4.0-foss-2021b-CUDA-11.4.1.eb', 'GetOrganelle-1.7.6.1-foss-2021b.eb', 'matplotlib-3.4.3-foss-2021b.eb', 'scikit-image-0.19.1-foss-2021b.eb', 'scanpy-1.8.2-foss-2021b.eb', 'NiBabel-3.2.2-foss-2021b.eb', 'PyMC3-3.11.1-intel-2021b.eb', 'AmberTools-22.3-foss-2021b.eb', 'ArviZ-0.11.4-intel-2021b.eb', 'Bambi-0.7.1-intel-2021b.eb', 'PyMC3-3.11.1-foss-2021b.eb', 'funannotate-1.8.13-foss-2021b.eb', 'imgaug-0.4.0-foss-2021b.eb', 'Amber-22.0-foss-2021b-AmberTools-22.3.eb', 'silx-1.0.0-foss-2021b.eb', 'QUAST-5.0.2-foss-2021b.eb', 'MoviePy-1.0.3-foss-2021b.eb', 'GetOrganelle-1.7.5.3-foss-2021b.eb', 'pymca-5.7.6-foss-2021b.eb', 'GPAW-22.8.0-foss-2021b.eb', 'PyCalib-0.1.0.dev0-foss-2021b.eb', 'Cartopy-0.20.3-foss-2021b.eb', 'RDKit-2022.03.5-foss-2021b.eb', 'dask-2022.1.0-foss-2021b.eb', 'rioxarray-0.11.1-foss-2021b.eb', 'CellTypist-1.0.0-foss-2021b.eb', 'MDAnalysis-2.0.0-foss-2021b.eb', 'molmod-1.4.8-foss-2021b.eb', 'imageio-2.13.5-foss-2021b.eb', 'Amber-22.0-foss-2021b-AmberTools-22.3-CUDA-11.4.1.eb', 'SqueezeMeta-1.5.0-foss-2021b.eb', 'CompareM-0.1.2-foss-2021b.eb', 'geopandas-0.11.0-foss-2021b.eb', 'pyFAI-0.21.3-foss-2021b.eb', 'kb-python-0.27.3-foss-2021b.eb', 'panaroo-1.3.2-foss-2021b.eb', 'RNA-SeQC-2.4.2-foss-2021b.eb', 'methylartist-1.2.6-foss-2021b.eb', 'Albumentations-1.1.0-foss-2021b.eb', 'STRique-0.4.2-foss-2021b.eb', 'ASE-3.22.1-foss-2021b.eb', 'ASE-3.22.1-intel-2021b.eb', 'Squidpy-1.2.2-foss-2021b.eb', 'AMPtk-1.5.4-foss-2021b.eb', 'Optuna-2.10.0-foss-2021b.eb', 'purge_dups-1.2.5-foss-2021b.eb', 'adjustText-0.7.3-foss-2021b.eb', 'matplotlib-3.4.3-intel-2021b.eb', 'SPOTPY-1.5.14-intel-2021b.eb', 'GTDB-Tk-2.0.0-intel-2021b.eb', 'CheckM-1.1.3-foss-2021b.eb', 'pygmo-2.18.0-foss-2021b.eb', 'napari-0.4.15-foss-2021b.eb', 'bokeh-2.4.2-foss-2021b.eb', 'GOATOOLS-1.3.1-foss-2021b.eb', 'mujoco-py-2.1.2.14-foss-2021b.eb', 'Ray-project-1.9.2-foss-2021b.eb', 'HTSeq-0.11.3-foss-2021b.eb', 'Bambi-0.7.1-foss-2021b.eb', 'Seaborn-0.11.2-foss-2021b.eb', 'GPAW-22.8.0-intel-2021b.eb', 'pyGenomeTracks-3.7-foss-2021b.eb', 'nanomax-analysis-utils-0.4.4-foss-2021b.eb', 'scikit-bio-0.5.7-foss-2021b.eb', 'rasterio-1.2.10-foss-2021b.eb', 'GPy-1.10.0-foss-2021b.eb', 'rnaQUAST-2.2.2-foss-2021b.eb'])

found 2 variants of 'typing-extensions' dependency in easyconfigs using '2021b' toolchain generation
* version: 3.10.0.2; versionsuffix:  as dep for set(['Transformers-4.21.1-foss-2021b.eb', 'PyMC3-3.11.1-foss-2021b.eb', 'Ray-project-1.13.0-foss-2021b.eb', 'ArviZ-0.11.4-foss-2021b.eb', 'Bambi-0.7.1-foss-2021b.eb', 'napari-0.4.15-foss-2021b.eb', 'redis-py-4.3.3-foss-2021b.eb'])
* version: 4.3.0; versionsuffix:  as dep for set(['Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb', 'PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb'])


======================================================================
FAIL: test_pr_sha256_checksums (test.easyconfigs.easyconfigs.EasyConfigTest)
Make sure changed easyconfigs have SHA256 checksums in place.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 985, in test_pr_sha256_checksums
    self.assertTrue(len(checksum_issues) == 0, "No checksum issues:\n%s" % '\n'.join(checksum_issues))
AssertionError: No checksum issues:
Checksums missing for one or more sources/patches in Pillow-8.2.0-GCCcore-11.2.0.eb: found 1 sources + 0 patches vs 2 checksums

======================================================================
FAIL: test_style_conformance (test.easyconfigs.styletests.StyleTest)
Check the easyconfigs for style
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/styletests.py", line 68, in test_style_conformance
    self.assertEqual(result, 0, error_msg)
  File "/opt/hostedtoolcache/Python/2.7.18/x64/lib/python2.7/site-packages/easybuild/base/testing.py", line 119, in assertEqual
    raise AssertionError("%s:\nDIFF%s:\n%s" % (msg, limit, ''.join(diff[:self.ASSERT_MAX_DIFF])))
AssertionError: There shouldn't be any code style errors (and/or warnings), found 6:
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-11.2.0.eb:14:1: E101 indentation contains mixed spaces and tabs
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-11.2.0.eb:14:1: W191 indentation contains tabs
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-11.2.0.eb:14:4: E126 continuation line over-indented for hanging indent
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-11.2.0.eb:15:1: E101 indentation contains mixed spaces and tabs
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-11.2.0.eb:15:5: E131 continuation line unaligned for hanging indent
/home/runner/work/easybuild-easyconfigs/easybuild-easyconfigs/easybuild/easyconfigs/p/PyTorch/PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb:79:25: E261 at least two spaces before inline comment

: 6 != 0:
DIFF:
- 6

----------------------------------------------------------------------
Ran 16701 tests in 648.672s

FAILED (failures=4)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

@boegelbot
Copy link
Copy Markdown
Collaborator

@absrocks: Tests failed in GitHub Actions, see https://github.com/easybuilders/easybuild-easyconfigs/actions/runs/4527424069
Output from first failing test suite run:

FAIL: test_dep_versions_per_toolchain_generation (test.easyconfigs.easyconfigs.EasyConfigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/easyconfigs/easyconfigs.py", line 884, in test_dep_versions_per_toolchain_generation
    self.assertFalse(multi_dep_vars, error_msg)
AssertionError: No multi-variant deps found for '^.*-(?P<tc_gen>20(1[89]|[2-9][0-9])[ab]).*\.eb$' easyconfigs:

found 2 variants of 'Pillow' dependency in easyconfigs using '2021b' toolchain generation
* version: 8.2.0; versionsuffix:  as dep for set(['Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb', 'PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb'])
* version: 8.3.2; versionsuffix:  as dep for set(['GRASS-8.2.0-foss-2021b.eb', 'scanpy-1.9.1-foss-2021b.eb', 'TOBIAS-0.12.12-foss-2021b.eb', 'GTDB-Tk-2.1.1-foss-2021b.eb', 'samplot-1.3.0-foss-2021b.eb', 'infercnvpy-0.4.0-foss-2021b.eb', 'MultiQC-1.12-foss-2021b.eb', 'deepTools-3.5.1-foss-2021b.eb', 'TELEMAC-MASCARET-8p3r1-foss-2021b.eb', 'AmberTools-21.12-foss-2021b.eb', 'histolab-0.4.1-foss-2021b.eb', 'SimPEG-0.18.1-foss-2021b.eb', 'SimPEG-0.18.1-intel-2021b.eb', 'regionmask-0.9.0-foss-2021b.eb', 'wxPython-4.2.0-foss-2021b.eb', 'ArviZ-0.11.4-foss-2021b.eb', 'NetPyNE-1.0.2.1-foss-2021b.eb', 'stardist-0.8.3-foss-2021b.eb', 'QGIS-3.28.1-foss-2021b.eb', 'OpenAI-Gym-0.21.0-foss-2021b.eb', 'AmberTools-21-intel-2021b.eb', 'Trycycler-0.5.3-foss-2021b.eb', 'NLTK-3.7-foss-2021b.eb', 'EGTtools-0.1.10.dev2-foss-2021b.eb', 'MDAnalysis-2.0.0-intel-2021b.eb', 'imgaug-0.4.0-foss-2021b-CUDA-11.4.1.eb', 'GetOrganelle-1.7.6.1-foss-2021b.eb', 'matplotlib-3.4.3-foss-2021b.eb', 'scikit-image-0.19.1-foss-2021b.eb', 'scanpy-1.8.2-foss-2021b.eb', 'NiBabel-3.2.2-foss-2021b.eb', 'PyMC3-3.11.1-intel-2021b.eb', 'AmberTools-22.3-foss-2021b.eb', 'ArviZ-0.11.4-intel-2021b.eb', 'Bambi-0.7.1-intel-2021b.eb', 'PyMC3-3.11.1-foss-2021b.eb', 'funannotate-1.8.13-foss-2021b.eb', 'imgaug-0.4.0-foss-2021b.eb', 'Amber-22.0-foss-2021b-AmberTools-22.3.eb', 'silx-1.0.0-foss-2021b.eb', 'QUAST-5.0.2-foss-2021b.eb', 'MoviePy-1.0.3-foss-2021b.eb', 'GetOrganelle-1.7.5.3-foss-2021b.eb', 'pymca-5.7.6-foss-2021b.eb', 'GPAW-22.8.0-foss-2021b.eb', 'PyCalib-0.1.0.dev0-foss-2021b.eb', 'Cartopy-0.20.3-foss-2021b.eb', 'RDKit-2022.03.5-foss-2021b.eb', 'dask-2022.1.0-foss-2021b.eb', 'rioxarray-0.11.1-foss-2021b.eb', 'CellTypist-1.0.0-foss-2021b.eb', 'MDAnalysis-2.0.0-foss-2021b.eb', 'molmod-1.4.8-foss-2021b.eb', 'imageio-2.13.5-foss-2021b.eb', 'Amber-22.0-foss-2021b-AmberTools-22.3-CUDA-11.4.1.eb', 'SqueezeMeta-1.5.0-foss-2021b.eb', 'CompareM-0.1.2-foss-2021b.eb', 'geopandas-0.11.0-foss-2021b.eb', 'pyFAI-0.21.3-foss-2021b.eb', 'kb-python-0.27.3-foss-2021b.eb', 'panaroo-1.3.2-foss-2021b.eb', 'RNA-SeQC-2.4.2-foss-2021b.eb', 'methylartist-1.2.6-foss-2021b.eb', 'Albumentations-1.1.0-foss-2021b.eb', 'STRique-0.4.2-foss-2021b.eb', 'ASE-3.22.1-foss-2021b.eb', 'ASE-3.22.1-intel-2021b.eb', 'Squidpy-1.2.2-foss-2021b.eb', 'AMPtk-1.5.4-foss-2021b.eb', 'Optuna-2.10.0-foss-2021b.eb', 'purge_dups-1.2.5-foss-2021b.eb', 'adjustText-0.7.3-foss-2021b.eb', 'matplotlib-3.4.3-intel-2021b.eb', 'SPOTPY-1.5.14-intel-2021b.eb', 'GTDB-Tk-2.0.0-intel-2021b.eb', 'CheckM-1.1.3-foss-2021b.eb', 'pygmo-2.18.0-foss-2021b.eb', 'napari-0.4.15-foss-2021b.eb', 'bokeh-2.4.2-foss-2021b.eb', 'GOATOOLS-1.3.1-foss-2021b.eb', 'mujoco-py-2.1.2.14-foss-2021b.eb', 'Ray-project-1.9.2-foss-2021b.eb', 'HTSeq-0.11.3-foss-2021b.eb', 'Bambi-0.7.1-foss-2021b.eb', 'Seaborn-0.11.2-foss-2021b.eb', 'GPAW-22.8.0-intel-2021b.eb', 'pyGenomeTracks-3.7-foss-2021b.eb', 'nanomax-analysis-utils-0.4.4-foss-2021b.eb', 'scikit-bio-0.5.7-foss-2021b.eb', 'rasterio-1.2.10-foss-2021b.eb', 'GPy-1.10.0-foss-2021b.eb', 'rnaQUAST-2.2.2-foss-2021b.eb'])

found 2 variants of 'typing-extensions' dependency in easyconfigs using '2021b' toolchain generation
* version: 3.10.0.2; versionsuffix:  as dep for set(['Transformers-4.21.1-foss-2021b.eb', 'PyMC3-3.11.1-foss-2021b.eb', 'Ray-project-1.13.0-foss-2021b.eb', 'ArviZ-0.11.4-foss-2021b.eb', 'Bambi-0.7.1-foss-2021b.eb', 'napari-0.4.15-foss-2021b.eb', 'redis-py-4.3.3-foss-2021b.eb'])
* version: 4.3.0; versionsuffix:  as dep for set(['Horovod-0.26.1-foss-2021b-CUDA-11.4.1-PyTorch-1.11.0.eb', 'PyTorch-1.11.0-foss-2021b-CUDA-11.4.1.eb'])


----------------------------------------------------------------------
Ran 16701 tests in 727.357s

FAILED (failures=1)
ERROR: Not all tests were successful

bleep, bloop, I'm just a bot (boegelbot v20200716.01)
Please talk to my owner @boegel if you notice me acting stupid),
or submit a pull request to https://github.com/boegel/boegelbot fix the problem.

@absrocks absrocks requested a review from casparvl March 27, 2023 14:28
@casparvl
Copy link
Copy Markdown
Contributor

Wait a second... this is the same PyTorch as in https://github.com/easybuilders/easybuild-easyconfigs/pull/16385/files, right?

Because there, it does use a newer Pillow.

Then, there is also #17272

As PyTorch is rather difficult to get merged (lots of issues pop up, with varying systems), I'd like to focus on getting either of those two merged, and simply build this Horovod on top of that...

@casparvl
Copy link
Copy Markdown
Contributor

@absrocks If you want to continue with this PR, might I suggest updating the pytorch to use the (already merged) EasyConfig from #17272 ? You can sync this PR with the develop branch using the --sync-pr-with-develop option in EasyBuild. That will pull in the PyTorch from #17272 into your feature branch. Then, you can change the Horovod EasyConfig to use that newer version of PyTorch. Finally, you can remove the everything except the Horovod EasyConfig. That should make this a much simpler PR to process :)

If you're not up for it, feel free to close the PR. Someone else can use your Horovod EasyConfig as a starting point to make one on top of #17272 .

@casparvl
Copy link
Copy Markdown
Contributor

I'm going to close this PR. If you want to build a Horovod on top of #17272 as I previously suggested, I think the best course of action is to open a new PR. That way, there's a better chance that a reviewer sees it and picks it up :)

@casparvl casparvl closed this Aug 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants