From 7875a08513e2dfac29b0b0d85cc8817e136446e8 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 20 Sep 2024 22:45:52 +0200 Subject: [PATCH] adding easyconfigs: DeepLoc-2.0-foss-2023a.eb, ONNX-Runtime-1.19.2-foss-2023a.eb, ESM-2-2.0.0-foss-2023a.eb --- .../d/DeepLoc/DeepLoc-2.0-foss-2023a.eb | 59 +++++++++++++++++++ .../e/ESM-2/ESM-2-2.0.0-foss-2023a.eb | 40 +++++++++++++ .../ONNX-Runtime-1.19.2-foss-2023a.eb | 50 ++++++++++++++++ 3 files changed, 149 insertions(+) create mode 100644 easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb diff --git a/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb new file mode 100644 index 00000000000..558d3f61871 --- /dev/null +++ b/easybuild/easyconfigs/d/DeepLoc/DeepLoc-2.0-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'PythonBundle' + +name = 'DeepLoc' +version = '2.0' + +homepage = 'https://services.healthtech.dtu.dk/services/DeepLoc-2.0' +description = "DeepLoc 2.0 predicts the subcellular localization(s) of eukaryotic proteins" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('matplotlib', '3.7.2'), + ('Biopython', '1.83'), + ('ONNX-Runtime', '1.19.2'), + ('ESM-2', '2.0.0'), # for fair-esm + ('PyTorch', '2.1.2'), + ('PyTorch-Lightning', '2.2.1'), + ('Transformers', '4.39.3'), + ('SentencePiece', '0.2.0'), + ('mygene', '3.2.2'), # required by bio +] + +use_pip = True + +local_deeploc_download_url = 'https://services.healthtech.dtu.dk/cgi-bin/sw_request?' +local_deeploc_download_url += 'software=deeploc&version=2.0&packageversion=2.0&platform=All' + +exts_list = [ + ('gprofiler-official', '1.0.0', { + 'checksums': ['5015b47f10fbdcb59c57e342e815c9c07afbe57cd3984154f75b845ddef2445d'], + 'modulename': 'gprofiler', + }), + ('bio', '1.7.1', { + 'sources': ['bio-%(version)s-py%(pymajver)s-none-any.whl'], + 'checksums': ['851545804b08413a3f27fd5131edefc30acfdee513919eebabb29678d8632218'], + 'modulename': 'biorun', + }), + (name, version, { + 'download_instructions': "Download via %s" % local_deeploc_download_url, + 'sources': ['deeploc-%(version)s.All.tar.gz'], + 'checksums': ['1741cf61cc38bba6307f1838c08ff9dd01386da09b8939610d15c27f98173651'], + 'modulename': 'DeepLoc2', + }), +] + +sanity_check_paths = { + 'files': ['bin/deeploc2'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "deeploc2 --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb b/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb new file mode 100644 index 00000000000..8b461b544cc --- /dev/null +++ b/easybuild/easyconfigs/e/ESM-2/ESM-2-2.0.0-foss-2023a.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'ESM-2' +version = '2.0.0' + +homepage = 'https://github.com/facebookresearch/esm' +description = """ESM-2 outperforms all tested single-sequence protein language models + across a range of structure prediction tasks. ESMFold harnesses the ESM-2 language model to generate + accurate structure predictions end to end directly from the sequence of a protein.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('Java', '11', '', SYSTEM), # needed by ANTLR4 runtime +] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), +] + +use_pip = True +sanity_pip_check = True + +# omegaconf is required for esmfold (in addition to OpenFold-1.0.1) +exts_list = [ + ('antlr4-python3-runtime', '4.9.3', { + 'modulename': 'antlr4', + 'checksums': ['f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b'], + }), + ('omegaconf', '2.3.0', { + 'checksums': ['d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7'], + }), + ('fair-esm', version, { + 'modulename': "esm, esm.pretrained", + 'checksums': ['4ed34d4598ec75ed6550a4e581d023bf8d4a8375317ecba6269bb68135f80c85'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb new file mode 100644 index 00000000000..440ae5d93e7 --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.19.2-foss-2023a.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'ONNX-Runtime' +version = '1.19.2' + +homepage = 'https://onnxruntime.ai' +description = """ONNX Runtime inference can enable faster customer experiences and lower costs, +supporting models from deep learning frameworks such as PyTorch and +TensorFlow/Keras as well as classical machine learning libraries such as +scikit-learn, LightGBM, XGBoost, etc. ONNX Runtime is compatible with different +hardware, drivers, and operating systems, and provides optimal performance by +leveraging hardware accelerators where applicable alongside graph optimizations +and transforms.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('ONNX', '1.15.0'), + ('flatbuffers-python', '23.5.26'), + ('sympy', '1.12'), +] + +use_pip = True + +local_whl_tmpl = 'onnxruntime-%%(version)s-cp311-cp311-manylinux_2_27_%s.manylinux_2_28_%s.whl' + +exts_list = [ + ('humanfriendly', '10.0', { + 'checksums': ['6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc'], + }), + ('coloredlogs', '15.0.1', { + 'checksums': ['7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0'], + }), + (name, version, { + 'source_urls': ['http://pypi.python.org/packages/source/o/onnxruntime'], + 'sources': [local_whl_tmpl % ('%(arch)s', '%(arch)s')], + 'checksums': [{ + local_whl_tmpl % ('x86_64', 'x86_64'): + 'a36511dc07c5c964b916697e42e366fa43c48cdb3d3503578d78cef30417cb84', + local_whl_tmpl % ('aarch64', 'aarch64'): + 'c1dfe4f660a71b31caa81fc298a25f9612815215a47b286236e61d540350d7b6', + }], + 'modulename': 'onnxruntime', + }), +] + +sanity_pip_check = True + +moduleclass = 'devel'