From 44c46202843a75ac2764e1b8c6fc67cff8612206 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Fri, 17 May 2024 13:42:51 +0200 Subject: [PATCH 1/5] adding easyconfigs: CellBender-0.3.0-foss-2023a.eb, jupyter-contrib-nbextensions-0.7.0-GCCcore-12.3.0.eb, pyro-ppl-1.9.0-foss-2023a.eb --- .../CellBender/CellBender-0.3.0-foss-2023a.eb | 67 +++++++++++++++++++ ...ntrib-nbextensions-0.7.0-GCCcore-12.3.0.eb | 62 +++++++++++++++++ .../p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb | 44 ++++++++++++ 3 files changed, 173 insertions(+) create mode 100644 easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/j/jupyter-contrib-nbextensions/jupyter-contrib-nbextensions-0.7.0-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb new file mode 100644 index 00000000000..0a93d5a75d6 --- /dev/null +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb @@ -0,0 +1,67 @@ +easyblock = 'PythonBundle' + +name = 'CellBender' +version = '0.3.0' + +homepage = 'http://github.com/broadinstitute/CellBender' +description = """ +CellBender is a software package for eliminating technical artifacts from +high-throughput single-cell RNA sequencing (scRNA-seq) data. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('PyTorch', '2.1.2'), + ('IPython', '8.14.0'), + ('anndata', '0.10.5.post1'), + ('jupyter-contrib-nbextensions', '0.7.0'), + ('pyro-ppl', '1.9.0'), + ('loompy', '3.0.7'), + ('PyTables', '3.8.0'), + ('Qtconsole', '5.5.1'), +] + +use_pip = True + +exts_list = [ + ('traitlets', '5.14.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['2e5a030e6eff91737c643231bfcf04a65b0132078dad75e4936700b213652e74'], + }), + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + ('jupyter', '1.0.0', { + 'checksums': ['d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f'], + }), + ('notebook', '6.5.7', { + 'checksums': ['04eb9011dfac634fbd4442adaf0a8c27cd26beef831fe1d19faf930c327768e4'], + }), + ('mistune', '0.8.4', { + 'checksums': ['59a3429db53c50b5c6bcc8a07f8848cb00d7dc8bdb431a4ab41920d201d4756e'], + }), + ('nbconvert', '6.5.4', { + 'checksums': ['9e3c7c6d491374cbdd5f35d268c05809357716d346f4573186bbeab32ee50bc1'], + }), + ('cellbender', version, { + 'checksums': ['94a46fb2b5921414ea86213cfdebca267b9ba6ba02df854cbd353980ab3aff42'], + }), +] + +sanity_check_paths = { + 'files': ['bin/cellbender'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "cellbender --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/j/jupyter-contrib-nbextensions/jupyter-contrib-nbextensions-0.7.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/j/jupyter-contrib-nbextensions/jupyter-contrib-nbextensions-0.7.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..1e0ea2bdea5 --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-contrib-nbextensions/jupyter-contrib-nbextensions-0.7.0-GCCcore-12.3.0.eb @@ -0,0 +1,62 @@ +easyblock = "PythonBundle" + +name = 'jupyter-contrib-nbextensions' +version = '0.7.0' + +homepage = 'https://github.com/ipython-contrib/jupyter_contrib_nbextensions' +description = 'A collection of various notebook extensions for Jupyter' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('nodejs', '18.17.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('IPython', '8.14.0'), + ('PyYAML', '6.0'), + ('jupyter-server', '2.7.2'), +] + +use_pip = True + +exts_list = [ + ('entrypoints', '0.4', { + 'checksums': ['b706eddaa9218a19ebcd67b56818f05bb27589b1ca9e8d797b74affad4ccacd4'], + }), + ('nbclassic', '1.0.0', { + 'checksums': ['0ae11eb2319455d805596bf320336cda9554b41d99ab9a3c31bf8180bffa30e3'], + }), + # need jupyter_client in v7 - notebook 6.5.7 has requirement jupyter-client<8,>=5.3.4 + ('jupyter_client', '7.4.9', { + 'checksums': ['52be28e04171f07aed8f20e1616a5a552ab9fee9cbbe6c1896ae170c3880d392'], + }), + # use notebook v6, in v7 the extension are moved to jupyter lab + ('notebook', '6.5.7', { + 'checksums': ['04eb9011dfac634fbd4442adaf0a8c27cd26beef831fe1d19faf930c327768e4'], + }), + ('jupyter_contrib_core', '0.4.2', { + 'checksums': ['1887212f3ca9d4487d624c0705c20dfdf03d5a0b9ea2557d3aaeeb4c38bdcabb'], + }), + ('jupyter_highlight_selected_word', '0.2.0', { + 'checksums': ['9fa740424859a807950ca08d2bfd28a35154cd32dd6d50ac4e0950022adc0e7b'], + }), + ('jupyter_nbextensions_configurator', '0.6.3', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['cece496f3f62cf80bb0b04867ea463c32ed5db19ff5814fe18a3a7f1bb9da95b'], + }), + ('jupyter_contrib_nbextensions', version, { + 'checksums': ['06e33f005885eb92f89cbe82711e921278201298d08ab0d886d1ba09e8c3e9ca'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/jupyter-contrib', 'bin/jupyter-contrib-nbextension', 'bin/jupyter-nbextensions_configurator'], + 'dirs': ['lib64/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb new file mode 100644 index 00000000000..6f74e48904d --- /dev/null +++ b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb @@ -0,0 +1,44 @@ +# Author: Denis Krišťák (INUITS) + +easyblock = 'PythonBundle' + +name = 'pyro-ppl' +version = '1.9.0' + +homepage = 'https://github.com/pyro-ppl/pyro' +description = "Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch." + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('PyTorch', '2.1.2'), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('opt-einsum', '3.3.0', { + 'source_tmpl': 'opt_einsum-%(version)s.tar.gz', + 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], + }), + ('pyro-api', '0.1.2', { + 'modulename': 'pyroapi', + 'checksums': ['a1b900d9580aa1c2fab3b123ab7ff33413744da7c5f440bd4aadc4d40d14d920'], + }), + (name, version, { + 'modulename': 'pyro', + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'from pyroapi import distributions as dist'", + "python -c 'from pyroapi import infer, ops, optim, pyro, pyro_backend'", + "python -c 'from pyro import infer, nn, distributions'", +] + +moduleclass = 'tools' From 1e2d7bd387d7ddd7ddddc91d173938973a1dabe5 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek <99190809+pavelToman@users.noreply.github.com> Date: Fri, 17 May 2024 13:57:41 +0200 Subject: [PATCH 2/5] Update CellBender - fix whitespace --- .../easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb index 0a93d5a75d6..4c71bea11a8 100644 --- a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb @@ -46,7 +46,7 @@ exts_list = [ 'checksums': ['59a3429db53c50b5c6bcc8a07f8848cb00d7dc8bdb431a4ab41920d201d4756e'], }), ('nbconvert', '6.5.4', { - 'checksums': ['9e3c7c6d491374cbdd5f35d268c05809357716d346f4573186bbeab32ee50bc1'], + 'checksums': ['9e3c7c6d491374cbdd5f35d268c05809357716d346f4573186bbeab32ee50bc1'], }), ('cellbender', version, { 'checksums': ['94a46fb2b5921414ea86213cfdebca267b9ba6ba02df854cbd353980ab3aff42'], From 060fb215e47cf81def1c3636e82513818ab3a5f9 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Fri, 17 May 2024 15:18:52 +0200 Subject: [PATCH 3/5] add checksum, fix async-timeout version --- .../easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb | 4 ++++ easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb | 1 + 2 files changed, 5 insertions(+) diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb index 4c71bea11a8..ebabd44b3d6 100644 --- a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb @@ -28,6 +28,9 @@ dependencies = [ use_pip = True exts_list = [ + ('async-timeout', '4.0.3', { + 'checksums': ['4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f'], + }), ('traitlets', '5.14.1', { 'source_tmpl': SOURCE_PY3_WHL, 'checksums': ['2e5a030e6eff91737c643231bfcf04a65b0132078dad75e4936700b213652e74'], @@ -53,6 +56,7 @@ exts_list = [ }), ] + sanity_check_paths = { 'files': ['bin/cellbender'], 'dirs': ['lib/python%(pyshortver)s/site-packages'], diff --git a/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb index 6f74e48904d..28ed959d3b2 100644 --- a/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a.eb @@ -30,6 +30,7 @@ exts_list = [ }), (name, version, { 'modulename': 'pyro', + 'checksums': ['41f4c005159568280fbc511648960a98a2b1a410027d8bd0a43220ac9b102cdf'], }), ] From 9b4a6b8c652cf89349ee51c3c030f17d61acf516 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Mon, 20 May 2024 11:26:21 +0200 Subject: [PATCH 4/5] add GPU versions of CellBender and pyro-ppl --- ...CellBender-0.3.0-foss-2023a-CUDA-12.1.1.eb | 72 +++++++++++++++++++ .../pyro-ppl-1.9.0-foss-2023a-CUDA-12.1.1.eb | 47 ++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a-CUDA-12.1.1.eb create mode 100644 easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..94c6fc2c609 --- /dev/null +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,72 @@ +easyblock = 'PythonBundle' + +name = 'CellBender' +version = '0.3.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://github.com/broadinstitute/CellBender' +description = """ +CellBender is a software package for eliminating technical artifacts from +high-throughput single-cell RNA sequencing (scRNA-seq) data. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('PyTorch', '2.1.2', versionsuffix), + ('IPython', '8.14.0'), + ('anndata', '0.10.5.post1'), + ('jupyter-contrib-nbextensions', '0.7.0'), + ('pyro-ppl', '1.9.0', versionsuffix), + ('loompy', '3.0.7'), + ('PyTables', '3.8.0'), + ('Qtconsole', '5.5.1'), +] + +use_pip = True + +exts_list = [ + ('async-timeout', '4.0.3', { + 'checksums': ['4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f'], + }), + ('traitlets', '5.14.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['2e5a030e6eff91737c643231bfcf04a65b0132078dad75e4936700b213652e74'], + }), + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + ('jupyter', '1.0.0', { + 'checksums': ['d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f'], + }), + ('notebook', '6.5.7', { + 'checksums': ['04eb9011dfac634fbd4442adaf0a8c27cd26beef831fe1d19faf930c327768e4'], + }), + ('mistune', '0.8.4', { + 'checksums': ['59a3429db53c50b5c6bcc8a07f8848cb00d7dc8bdb431a4ab41920d201d4756e'], + }), + ('nbconvert', '6.5.4', { + 'checksums': ['9e3c7c6d491374cbdd5f35d268c05809357716d346f4573186bbeab32ee50bc1'], + }), + ('cellbender', version, { + 'checksums': ['94a46fb2b5921414ea86213cfdebca267b9ba6ba02df854cbd353980ab3aff42'], + }), +] + +sanity_check_paths = { + 'files': ['bin/cellbender'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "cellbender --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..4add431b9a3 --- /dev/null +++ b/easybuild/easyconfigs/p/pyro-ppl/pyro-ppl-1.9.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,47 @@ +# Author: Denis Krišťák (INUITS) + +easyblock = 'PythonBundle' + +name = 'pyro-ppl' +version = '1.9.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/pyro-ppl/pyro' +description = "Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch." + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('PyTorch', '2.1.2', versionsuffix), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('opt-einsum', '3.3.0', { + 'source_tmpl': 'opt_einsum-%(version)s.tar.gz', + 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], + }), + ('pyro-api', '0.1.2', { + 'modulename': 'pyroapi', + 'checksums': ['a1b900d9580aa1c2fab3b123ab7ff33413744da7c5f440bd4aadc4d40d14d920'], + }), + (name, version, { + 'modulename': 'pyro', + 'checksums': ['41f4c005159568280fbc511648960a98a2b1a410027d8bd0a43220ac9b102cdf'], + }), +] + +sanity_pip_check = True + +sanity_check_commands = [ + "python -c 'from pyroapi import distributions as dist'", + "python -c 'from pyroapi import infer, ops, optim, pyro, pyro_backend'", + "python -c 'from pyro import infer, nn, distributions'", +] + +moduleclass = 'tools' From c5b7f0480d8ade62fd30bc60cd57e6512595380a Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Thu, 30 May 2024 21:23:43 +0200 Subject: [PATCH 5/5] remove double empty line in CellBender easyconfig --- .../easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb | 1 - 1 file changed, 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb index ebabd44b3d6..5fb9920fb70 100644 --- a/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.3.0-foss-2023a.eb @@ -56,7 +56,6 @@ exts_list = [ }), ] - sanity_check_paths = { 'files': ['bin/cellbender'], 'dirs': ['lib/python%(pyshortver)s/site-packages'],