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

{ai,devel,math,vis}[foss/2023a] whisper-ctranslate2 v0.5.2, ONNX-Runtime v1.19.2, PortAudio v19.7.0, ... w/ CUDA 12.6.0 #22135

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
easyblock = 'PythonBundle'

name = 'ONNX-Runtime'
version = '1.19.2'
versionsuffix = '-CUDA-%(cudaver)s'

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 = [
('CUDA', '12.6.0', '', SYSTEM),
('Python', '3.11.3'),
('ONNX', '1.15.0'),
('flatbuffers-python', '23.5.26'),
('sympy', '1.12'),
]

use_pip = True

local_whl_tmpl = 'onnxruntime_gpu-%%(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, {
'modulename': 'onnxruntime',
'source_urls': ['http://pypi.python.org/packages/source/o/onnxruntime-gpu'],
'sources': ['onnxruntime_gpu-%(version)s-cp311-cp311-manylinux_2_27_%(arch)s.manylinux_2_28_%(arch)s.whl'],
'checksums': ['562fc7c755393eaad9751e56149339dd201ffbfdb3ef5f43ff21d0619ba9045f'],
}),
]

# Due to its name 'onnxruntime-gpu', this package does not fullfil requirements on 'onnxruntime' although it provides
# the 'onnxruntime' python module. Fix this dependency issue in pip by creating a stub 'onnxruntime' dist-info folder
_py_sitepkgs = '%(installdir)s/lib/python%(pyshortver)s/site-packages'
postinstallcmds = [
"cp -r %s/onnxruntime{_gpu,}-%%(version)s.dist-info" % _py_sitepkgs,
"sed -i 's/onnxruntime.gpu/onnxruntime/g' %s/onnxruntime-%%(version)s.dist-info/{METADATA,RECORD}" % _py_sitepkgs,
]

sanity_pip_check = True

_py_sitepkgs_dirs = ['onnxruntime', 'onnxruntime-%(version)s.dist-info', 'onnxruntime_gpu-%(version)s.dist-info']

sanity_check_paths = {
'files': [],
'dirs': ['lib/python%%(pyshortver)s/site-packages/%s' % x for x in _py_sitepkgs_dirs],
}

options = {'modulename': 'onnxruntime'}

moduleclass = 'devel'
51 changes: 51 additions & 0 deletions easybuild/easyconfigs/p/PortAudio/PortAudio-19.7.0-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
easyblock = 'ConfigureMake'

name = 'PortAudio'
version = '19.7.0'

homepage = 'https://www.portaudio.com/'
description = """PortAudio is a free, cross-platform, open-source, audio I/O library.
It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms including Windows,
Macintosh OS X, and Unix (OSS/ALSA). It is intended to promote the exchange of audio software between
developers on different platforms. Many applications use PortAudio for Audio I/O."""

toolchain = {'name': 'foss', 'version': '2023a'}

source_urls = ["https://github.com/PortAudio/portaudio/archive"]
sources = ["v%(version)s.tar.gz"]
checksums = ['5af29ba58bbdbb7bbcefaaecc77ec8fc413f0db6f4c4e286c40c3e1b83174fa0']

dependencies = [
('Python', '3.11.3'),
('alsa-lib', '1.2.9'),
]

exts_defaultclass = 'PythonPackage'
exts_default_options = {
'source_urls': [PYPI_SOURCE],
'download_dep_fail': True,
'use_pip': True,
'sanity_pip_check': True,
'installopts': '',
}

exts_list = [
('PyAudio', '0.2.14', {
'checksums': ['78dfff3879b4994d1f4fc6485646a57755c6ee3c19647a491f790a0895bd2f87'],
}),
]

parallel = 1

sanity_check_paths = {
'files': ["include/portaudio.h", "lib/libportaudio.a", "lib/libportaudio.so"],
'dirs': ['include', 'lib', 'lib/python%(pyshortver)s/site-packages'],
}

sanity_check_commands = [
'python -c "import pyaudio; pyaudio.get_portaudio_version_text()"'
]

modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}

moduleclass = 'math'
32 changes: 32 additions & 0 deletions easybuild/easyconfigs/p/PyAV/PyAV-11.0.0-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
easyblock = 'PythonBundle'

name = 'PyAV'
version = '11.0.0'

homepage = 'https://pyav.org'
description = """PyAV is a Pythonic binding for FFmpeg. We aim to provide all of the power and
control of the underlying library, but manage the gritty details as much as possible."""

toolchain = {'name': 'GCCcore', 'version': '12.3.0'}

builddependencies = [
('binutils', '2.40'),
]

dependencies = [
('Python', '3.11.3'),
('Cython', '3.0.7'),
('FFmpeg', '6.0'),
]

use_pip = True
sanity_pip_check = True

exts_list = [
('av', version, {
'installopts': '--no-binary av',
'checksums': ['48223f000a252070f8e700ff634bb7fb3aa1b7bc7e450373029fbdd6f369ac31'],
}),
]

moduleclass = 'vis'
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
easyblock = 'PythonBundle'

name = 'whisper-ctranslate2'
version = '0.5.2'
versionsuffix = '-CUDA-%(cudaver)s'

homepage = 'https://github.com/Softcatala/whisper-ctranslate2/'
description = "Whisper command line client compatible with original OpenAI client based on CTranslate2."

toolchain = {'name': 'foss', 'version': '2023a'}

dependencies = [
('CUDA', '12.6.0', '', SYSTEM),
('Python', '3.11.3'),
('SciPy-bundle', '2023.07'),
('tqdm', '4.66.1'),
('tokenizers', '0.15.2'),
('CTranslate2', '4.5.0', versionsuffix),
('PyAV', '11.0.0'),
('ONNX-Runtime', '1.19.2', versionsuffix),
('cffi', '1.15.1'),
('PortAudio', '19.7.0'),
]

use_pip = True
sanity_pip_check = True

exts_list = [
('huggingface-hub', '0.26.5', {
'sources': ['huggingface_hub-%(version)s.tar.gz'],
'checksums': ['1008bd18f60bfb65e8dbc0a97249beeeaa8c99d3c2fa649354df9fa5a13ed83b'],
}),
('sounddevice', '0.5.1', {
'checksums': ['09ca991daeda8ce4be9ac91e15a9a81c8f81efa6b695a348c9171ea0c16cb041'],
}),
('faster-whisper', '1.1.1', {
'checksums': ['50d27571970c1be0c2b2680a2593d5d12f9f5d2f10484f242a1afbe7cb946604'],
}),
(name, version, {
'modulename': False,
'source_urls': ['https://github.com/Softcatala/whisper-ctranslate2/archive/'],
'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}],
'checksums': ['8a7c7b232086b8bfa7022f3a3b3f95c8c5175c33663cf8d3fd840539f2be9a49'],
}),
]

sanity_check_paths = {
'files': ['bin/%(name)s'],
'dirs': ['lib/python%(pyshortver)s/site-packages'],
}

sanity_check_commands = ['%(name)s --help']

moduleclass = 'ai'
Loading