There are three distinct ways to run python code or applications on biowulf:
/usr/local/bin/python
to the general purpose python 2.7 environment
and from /usr/local/bin/python3
to a python 3 environment/usr/bin/python3
. This is the python installed with the
operating system and contains few packages. Rarely used.Coincident with the update of the Biowulf operating system there were several major changes to the python setup:
python/2.7
and python/3.7
environments and modules were retired./usr/bin/python3
/usr/local/bin/python
is now the Python 3.9 interpter/usr/local/bin/python3
is now python 3.8mpiexec
instead of srun/usr/local/bin/python
still points to python 2.7.Coincident with the update of the Biowulf operating system there were several major changes to the python setup:
python/2.7.X
environments and modules were retired.Anaconda/X
environments and modules were retired.conda
itself is not exposed to users any more. Please use a private installation
of conda to build your own environmentsOMP_NUM_THREADS
is set to 1. To make use of implicit multithreading
in the numerical packages this environment variable has to be set explicitly to
a value greater than 1.This is a list of common pitfalls for python users on the cluster. Some of these are discussed in other sections of this documentation in more detail.
OMP_NUM_THREADS
. If this is done while also using
multiprocessing then batch jobs can be overloaded. For example, if creating a multiprocessing
jobs with 10 worker processes and setting OMP_NUM_THREADS
also to 10,
a total of 10 * 10 = 100 threads are created. To avoid this happening accidentally
the python modules set OMP_NUM_THREADS
to 1. It needs to be set to more
than one explicitly to take advantage of parallelized math libraries.
XGBClassifier
(xgboost) to RandomizedSearchCV
(scikit-learn) which parallelizes the search across a parameter space. Both
will by default attempt to use all CPUs. So if there are N CPUs detected,
RandomizedSearch will start N processes running XGBClassifier and each
process will run N threads. This can be prevented by explicitly
specifying the number of parallel threads/processes at each level. In this
case, both components take `n_jobs` as an argument. The product of the two
should equal the number of available CPUs.
OMP_NUM_THREADS
is not set, the numerical libraries will
attempt use all CPUs on a compute node. Unless all CPUs have been allocated
this will result in overloading the job. The general use python modules set
OMP_NUM_THREADS
to 1 requiring users to explicitly set the variable higher
to take advantage of implicit multithreading. If you are using your own python
environments, please be sure to set OMP_NUM_THREADS
explicitly for all
code that can potentially multithread.cpu_count()
function of the multiprocessing
package
always reports the total CPU count for a node. This is often the cause for overloaded
python batch jobs. Instead query the environment for SLURM_CPUS_PER_TASK
and default to 2, the minimum allocation.
[user@biowulf ~]$ sinteractive --cpus-per-task=2 ... [user@cn3444 ~]$ module load python/3.9 [user@cn3444 ~]$ python Python 3.9.9 | packaged by conda-forge | (main, Dec 20 2021, 02:41:03) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import multiprocessing >>> multiprocessing.cpu_count() 56 # <-- wrong >>> import os >>> int(os.environ.get('SLURM_CPUS_PER_TASK', '2')) 2 # <-- right
~/.local/lib/pythonX.X/site-packages
in the
package search path. If you have packages installed there they can override the centrally
installed packages. This can lead to hard to diagnose problems. If you have problems
that are resolved by adding the -s
option a broken package installed
in your home directory may be the cause.Could not connect to any X display
This can be solved by using a non-interactive backend for plotting. Which backend matplotlib uses can be changed in a couple of different ways:
matplotlib settings can be modified using a
matplotlibrc
file. This file can be placed either in
the current working directory or in ~/.config/matplotlib
. If
placed in the former it will only affect jobs run from this directory. If
placed in the latter, it will affect all your calls to matplotlib. For
example, if you'd like to change the default backend, create the file
~/.config/matplotlib/matplotlibrc
with the following content:
backend: agg
Alternatively, you can set the MPLBACKEND
environment variable
either ad hoc or in your .bashrc:
export MPLBACKEND=agg
And finally, it can also be set programatically:
>>> import matplotlib >>> matplotlib.use("agg")
Available backends and the currently active backends can be queried interactively in python:
>>> import matplotlib >>> matplotlib.rcsetup.interactive_bk ['GTK', 'GTKAgg', 'GTKCairo', 'GTK3Agg', 'GTK3Cairo', 'nbAgg', 'Qt4Agg', 'Qt4Cairo', 'Qt5Agg', 'Qt5Cairo', 'TkAgg', 'TkCairo', 'WebAgg', 'WX', 'WXAgg', 'WXCairo'] >>> matplotlib.rcsetup.non_interactive_bk ['agg', 'cairo', 'gdk', 'pdf', 'pgf', 'ps', 'svg', 'template'] >>> import matplotlib.pyplot as plt >>> plt.get_backend() 'agg'
The general purpose Python environments are made available through the module system:
[user@cn3444 ~]$ module -t avail python /usr/local/lmod/modulefiles: python/2.7 python/3.6 python/3.7 python/3.8 python/3.9 [user@cn3444 ~]$ module load python/3.8 [+] Loading python 3.9 ... [user@cn3444 ~]$ python Python 3.9.9 | packaged by conda-forge | (main, Dec 20 2021, 02:41:03) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import numpy >>>
These are fully featured (conda) environments with many installed packages including the usual modules that make up the scientific Python stack (see below). These environments best suited for development and for running code that is not dependent on specific versions of the installed packages. Packages in these environments are updated regularly. If you need more stability to ensure reproducibility or because your code depends on the presence of certain fixed versions of packages you can also build your own environments.
Because they are compiled against MKL, some mathematical operations (e.g.
SVD) can make use of multithreading to accelerate computation. The number of
threads such operations will create is determined by the environment variable
OMP_NUM_THREADS
. To avoid accidentally overloading
jobs, especially when also doing multiprocessing,
this variable is set to 1 by the python modules. If your code
can take advantage of implicit parallelism you can set this variable to match
the number of allocated CPUs for cluster jobs or adjust it such that the product
of OMP_NUM_THREADS * number of processes
equals the number of
allocated CPUS. For example, if allocating 16 CPUs and planning on using
multiprocessing with 4 workers, OMP_NUM_THREADS
can be set as high
as 4 without overloading the allocation.
The following packages are available in the general purpose python environments
Package | python/3.8 | python/3.9 | python/3.10 |
---|---|---|---|
abseil-cpp | 20210324.2 | 20210324.2 | n/a |
absl-py | 1.4.0 | 1.4.0 | 1.4.0 |
aioeasywebdav | 2.4.0 | 2.4.0 | 2.4.0 |
aiohttp | 3.8.4 | 3.8.4 | 3.8.4 |
aioredis | 2.0.1 | 2.0.1 | 2.0.1 |
aiosignal | 1.3.1 | 1.3.1 | 1.3.1 |
alabaster | 0.7.13 | 0.7.13 | 0.7.13 |
alsa-lib | 1.2.7.2 | 1.2.7.2 | 1.2.8 |
amply | 0.1.6 | 0.1.6 | 0.1.6 |
anndata | 0.9.1 | 0.9.1 | 0.9.1 |
anyio | 3.7.1 | 3.7.1 | 3.7.1 |
aom | 3.5.0 | 3.5.0 | 3.5.0 |
appdirs | 1.4.4 | 1.4.4 | 1.4.4 |
apptools | 5.1.0 | 5.1.0 | n/a |
argcomplete | 3.1.1 | 3.1.1 | 3.1.1 |
argh | 0.27.2 | 0.27.2 | 0.27.2 |
argon2-cffi | 21.3.0 | 21.3.0 | 21.3.0 |
argon2-cffi-bindings | 21.2.0 | 21.2.0 | 21.2.0 |
arrow | 1.2.3 | 1.2.3 | 1.2.3 |
arrow-cpp | 6.0.1 | 6.0.1 | 10.0.1 |
arviz | 0.15.1 | 0.15.1 | 0.15.1 |
asn1crypto | 1.5.1 | 1.5.1 | 1.5.1 |
astor | 0.8.1 | 0.8.1 | 0.8.1 |
astroid | 2.15.5 | 2.15.5 | 2.15.5 |
astropy | 5.2.2 | 5.3.1 | 5.3.1 |
asttokens | 2.2.1 | 2.2.1 | 2.2.1 |
astunparse | 1.6.3 | 1.6.3 | 1.6.3 |
async_generator | 1.10 | 1.10 | 1.10 |
async-timeout | 4.0.2 | 4.0.2 | 4.0.2 |
atk-1.0 | 2.38.0 | 2.38.0 | 2.38.0 |
atomicwrites | 1.4.1 | 1.4.1 | 1.4.1 |
attmap | 0.13.2 | 0.13.2 | 0.13.2 |
attr | n/a | n/a | 2.5.1 |
attrs | 23.1.0 | 23.1.0 | 23.1.0 |
automat | 22.10.0 | 22.10.0 | 22.10.0 |
autopep8 | 1.5.6 | 2.0.2 | 2.0.4 |
aws-c-auth | 0.6.8 | 0.6.8 | 0.6.21 |
aws-c-cal | 0.5.12 | 0.5.12 | 0.5.20 |
aws-c-common | 0.6.17 | 0.6.17 | 0.8.5 |
aws-c-compression | 0.2.14 | 0.2.14 | 0.2.16 |
aws-c-event-stream | 0.2.7 | 0.2.7 | 0.2.17 |
aws-checksums | 0.1.12 | 0.1.12 | 0.1.14 |
aws-c-http | 0.6.10 | 0.6.10 | 0.7.0 |
aws-c-io | 0.10.14 | 0.10.14 | 0.13.12 |
aws-c-mqtt | 0.7.10 | 0.7.10 | 0.7.13 |
aws-crt-cpp | 0.17.10 | 0.17.10 | 0.18.16 |
aws-c-s3 | 0.1.29 | 0.1.29 | 0.2.1 |
aws-c-sdkutils | 0.1.1 | 0.1.1 | 0.1.7 |
aws-sdk-cpp | 1.9.160 | 1.9.160 | 1.9.379 |
babel | 2.12.1 | 2.12.1 | 2.12.1 |
backcall | 0.2.0 | 0.2.0 | 0.2.0 |
backports | 1.0 | 1.0 | 1.0 |
backports.functools_lru_cache | 1.6.5 | 1.6.5 | 1.6.5 |
backports.os | 0.1.1 | 0.1.1 | n/a |
backports.shutil_get_terminal_size | 1.0.0 | 1.0.0 | n/a |
backports.zoneinfo | 0.2.1 | 0.2.1 | 0.2.1 |
basemap | n/a | 1.3.7 | 1.3.7 |
basemap-data | n/a | 1.3.2 | 1.3.2 |
bcrypt | 3.2.2 | 3.2.2 | 3.2.2 |
beautifulsoup4 | 4.12.2 | 4.12.2 | 4.12.2 |
bedtools | 2.31.0 | 2.31.0 | 2.31.0 |
bidict | 0.22.1 | 0.22.1 | 0.22.1 |
binaryornot | 0.4.4 | 0.4.4 | 0.4.4 |
binutils_impl_linux-64 | 2.39 | 2.39 | 2.39 |
binutils_linux-64 | 2.39 | 2.39 | 2.39 |
biom-format | 2.1.15 | 2.1.15 | 2.1.15 |
biopython | 1.81 | 1.81 | 1.81 |
bitarray | 2.7.6 | 2.7.6 | 2.7.6 |
black | 23.3.0 | 23.3.0 | 23.3.0 |
blas | 2.116 | 2.116 | 2.116 |
blas-devel | 3.9.0 | 3.9.0 | 3.9.0 |
bleach | 6.0.0 | 6.0.0 | 6.0.0 |
blinker | 1.6.2 | 1.6.2 | 1.6.2 |
blosc | 1.21.4 | 1.21.4 | 1.21.4 |
bokeh | 2.4.3 | 2.4.3 | 3.2.0 |
boltons | 23.0.0 | 23.0.0 | 23.0.0 |
boost-cpp | 1.77.0 | 1.77.0 | 1.81.0 |
boto | 2.49.0 | 2.49.0 | 2.49.0 |
boto3 | 1.28.1 | 1.28.1 | 1.28.1 |
botocore | 1.31.1 | 1.31.1 | 1.31.1 |
bottleneck | 1.3.7 | 1.3.7 | 1.3.7 |
brotli | 1.0.9 | 1.0.9 | 1.0.9 |
brotli-bin | 1.0.9 | 1.0.9 | 1.0.9 |
brotlipy | 0.7.0 | 0.7.0 | 0.7.0 |
brunsli | 0.1 | 0.1 | 0.1 |
bz2file | 0.98 | 0.98 | 0.98 |
bzip2 | 1.0.8 | 1.0.8 | 1.0.8 |
ca-certificates | 2023.5.7 | 2023.11.17 | 2024.7.4 |
cached-property | 1.5.2 | 1.5.2 | 1.5.2 |
cached_property | 1.5.2 | 1.5.2 | 1.5.2 |
cachetools | 4.2.4 | 4.2.4 | 5.3.1 |
cairo | 1.16.0 | 1.16.0 | 1.16.0 |
c-ares | 1.19.1 | 1.19.1 | 1.19.1 |
c-blosc2 | 2.10.0 | 2.10.0 | 2.10.0 |
certifi | 2023.5.7 | 2023.11.17 | 2024.6.2 |
cffi | 1.15.1 | 1.15.1 | 1.15.1 |
cfitsio | 4.1.0 | 4.1.0 | 4.1.0 |
cftime | 1.6.2 | 1.6.2 | 1.6.2 |
chardet | 5.1.0 | 5.1.0 | 5.1.0 |
charls | 2.3.4 | 2.3.4 | 2.3.4 |
charset-normalizer | 3.2.0 | 3.2.0 | 3.2.0 |
click | 8.1.4 | 8.1.4 | 8.1.4 |
clikit | 0.6.2 | 0.6.2 | 0.6.2 |
cloudpickle | 2.2.1 | 2.2.1 | 2.2.1 |
clyent | 1.2.2 | 1.2.2 | 1.2.2 |
coincbc | 2.10.10 | 2.10.10 | 2.10.10 |
coin-or-cbc | 2.10.10 | 2.10.10 | 2.10.10 |
coin-or-cgl | 0.60.7 | 0.60.7 | 0.60.7 |
coin-or-clp | 1.17.8 | 1.17.8 | 1.17.8 |
coin-or-osi | 0.108.8 | 0.108.8 | 0.108.8 |
coin-or-utils | 2.11.9 | 2.11.9 | 2.11.9 |
colorama | 0.4.6 | 0.4.6 | 0.4.6 |
colorcet | 3.0.1 | 3.0.1 | 3.0.1 |
coloredlogs | 15.0.1 | 15.0.1 | 15.0.1 |
colorful | 0.5.4 | 0.5.4 | 0.5.4 |
colormath | 3.0.0 | 3.0.0 | 3.0.0 |
colorspacious | 1.1.2 | 1.1.2 | 1.1.2 |
comm | 0.1.3 | 0.1.3 | 0.1.3 |
commonmark | 0.9.1 | 0.9.1 | 0.9.1 |
conda | 23.3.1 | 23.3.1 | 23.3.1 |
conda-package-handling | 2.0.2 | 2.0.2 | 2.0.2 |
conda-package-streaming | 0.8.0 | 0.8.0 | 0.8.0 |
configargparse | 1.5.5 | 1.5.5 | 1.5.5 |
configobj | 5.0.8 | 5.0.8 | n/a |
configparser | 5.3.0 | 5.3.0 | 5.3.0 |
connection_pool | 0.0.3 | 0.0.3 | 0.0.3 |
constantly | 15.1.0 | 15.1.0 | 15.1.0 |
contextlib2 | 21.6.0 | 21.6.0 | 21.6.0 |
contourpy | 1.1.0 | 1.1.0 | 1.1.0 |
cookiecutter | 2.2.0 | 2.2.0 | 2.2.0 |
crashtest | 0.4.1 | 0.4.1 | 0.4.1 |
crc32c | 2.3.post0 | 2.3.post0 | 2.3.post0 |
crcmod | 1.7 | 1.7 | 1.7 |
cryptography | 39.0.0 | 39.0.0 | 39.0.0 |
cudatoolkit | 11.2.2 | 11.2.2 | 11.2.2 |
cuda-version | 11.2 | 11.2 | 11.2 |
cudnn | 8.8.0.121 | 8.8.0.121 | 8.8.0.121 |
cupy | 12.1.0 | 12.1.0 | 12.1.0 |
curl | 7.87.0 | 7.87.0 | 7.87.0 |
cutensor | 1.7.0.1 | 1.7.0.1 | 1.7.0.1 |
cvxopt | 1.3.1 | 1.3.1 | 1.3.1 |
cvxpy | 1.3.2 | 1.3.2 | 1.3.2 |
cvxpy-base | 1.3.2 | 1.3.2 | 1.3.2 |
cxxfilt | 0.3.0 | 0.3.0 | 0.3.0 |
cycler | 0.11.0 | 0.11.0 | 0.11.0 |
cython | 0.29.36 | 0.29.36 | 0.29.36 |
cytoolz | 0.12.0 | 0.12.0 | 0.12.0 |
cyvcf2 | 0.30.16 | 0.30.16 | n/a |
darkdetect | 0.8.0 | 0.8.0 | 0.8.0 |
dask | 2023.3.0 | 2023.3.0 | 2023.7.0 |
dask-core | 2023.3.0 | 2023.3.0 | 2023.7.0 |
dask-jobqueue | 0.8.2 | 0.8.2 | 0.8.2 |
dataclasses | 0.8 | 0.8 | 0.8 |
datashape | 0.5.4 | 0.5.4 | 0.5.4 |
datrie | 0.8.2 | 0.8.2 | 0.8.2 |
dav1d | 1.0.0 | 1.0.0 | 1.0.0 |
dbus | 1.13.6 | 1.13.6 | 1.13.6 |
debugpy | 1.6.7 | 1.6.7 | 1.6.7 |
decorator | 5.1.1 | 5.1.1 | 5.1.1 |
deepdiff | 6.3.1 | 6.3.1 | 6.3.1 |
defusedxml | 0.7.1 | 0.7.1 | 0.7.1 |
dendropy | 4.6.1 | 4.6.1 | 4.6.1 |
deprecated | 1.2.14 | 1.2.14 | 1.2.14 |
descartes | 1.1.0 | 1.1.0 | 1.1.0 |
diff-match-patch | 20230430 | 20230430 | 20230430 |
dill | 0.3.6 | 0.3.6 | 0.3.6 |
dipy | 1.7.0 | 1.7.0 | 1.7.0 |
distlib | 0.3.6 | 0.3.6 | 0.3.6 |
distributed | 2023.3.0 | 2023.3.0 | 2023.7.0 |
dm-tree | 0.1.7 | 0.1.7 | 0.1.7 |
dnspython | 2.3.0 | 2.3.0 | 2.3.0 |
docopt | 0.6.2 | 0.6.2 | 0.6.2 |
docstring-to-markdown | n/a | 0.12 | 0.12 |
docutils | 0.20.1 | 0.20.1 | 0.20.1 |
double-conversion | 3.2.0 | 3.2.0 | 3.2.0 |
dpath | 2.1.6 | 2.1.6 | 2.1.6 |
dropbox | 11.36.2 | 11.36.2 | 11.36.2 |
dsdp | 5.8 | 5.8 | 5.8 |
ecdsa | 0.18.0 | 0.18.0 | n/a |
ecos | 2.0.11 | 2.0.11 | 2.0.11 |
edflib-python | 1.0.7 | 1.0.7 | 1.0.7 |
eeglabio | 0.0.2.post4 | 0.0.2.post4 | 0.0.2.post4 |
eigen | 3.4.0 | 3.4.0 | 3.4.0 |
elfutils | 0.188 | 0.188 | 0.188 |
entrypoints | 0.4 | 0.4 | 0.4 |
envisage | 6.0.1 | 6.0.1 | n/a |
et_xmlfile | 1.1.0 | 1.1.0 | 1.1.0 |
exceptiongroup | 1.1.2 | 1.1.2 | 1.1.2 |
executing | 1.2.0 | 1.2.0 | 1.2.0 |
expat | 2.5.0 | 2.5.0 | 2.5.0 |
fabric | 3.1.0 | 3.1.0 | 3.1.0 |
fastcache | 1.1.0 | 1.1.0 | 1.1.0 |
fastrlock | 0.8 | 0.8 | 0.8 |
feather-format | 0.4.1 | 0.4.1 | 0.4.1 |
ffmpeg | 4.4.2 | 4.4.2 | 5.1.2 |
fftw | 3.3.10 | 3.3.10 | 3.3.10 |
filechunkio | 1.8 | 1.8 | 1.8 |
filelock | 3.12.2 | 3.12.2 | 3.12.2 |
flake8 | 3.8.4 | 6.0.0 | 6.1.0 |
flask | 2.3.2 | 2.3.2 | 2.3.2 |
flask-cors | 4.0.0 | 4.0.0 | 4.0.0 |
flatbuffers | n/a | n/a | 22.12.06 |
flit-core | 3.9.0 | 3.9.0 | 3.9.0 |
fmt | 9.1.0 | 9.1.0 | 9.1.0 |
fontconfig | 2.14.2 | 2.14.2 | 2.14.2 |
fonts-conda-ecosystem | 1 | 1 | 1 |
fonts-conda-forge | 1 | 1 | 1 |
fonttools | 4.40.0 | 4.40.0 | 4.40.0 |
font-ttf-dejavu-sans-mono | 2.37 | 2.37 | 2.37 |
font-ttf-inconsolata | 3.000 | 3.000 | 3.000 |
font-ttf-source-code-pro | 2.038 | 2.038 | 2.038 |
font-ttf-ubuntu | 0.83 | 0.83 | 0.83 |
freeglut | 3.2.2 | 3.2.2 | 3.2.2 |
freetype | 2.12.1 | 2.12.1 | 2.12.1 |
freetype-py | 2.3.0 | 2.3.0 | 2.3.0 |
fribidi | 1.0.10 | 1.0.10 | 1.0.10 |
frozenlist | 1.3.3 | 1.3.3 | 1.3.3 |
fsspec | 2023.6.0 | 2023.6.0 | 2023.6.0 |
ftputil | 5.0.4 | 5.0.4 | 5.0.4 |
func_timeout | 4.3.5 | 4.3.5 | 4.3.5 |
future | 0.18.3 | 0.18.3 | 0.18.3 |
gast | 0.4.0 | 0.4.0 | 0.4.0 |
gcc_impl_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
gcc_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
gdk-pixbuf | 2.42.8 | 2.42.8 | 2.42.8 |
gemmi | n/a | n/a | 0.6.4 |
geneimpacts | 0.3.7 | 0.3.7 | 0.3.7 |
gensim | 4.3.1 | n/a | n/a |
geos | 3.11.2 | 3.11.2 | 3.11.2 |
gettext | 0.21.1 | 0.21.1 | 0.21.1 |
gevent | 21.12.0 | 21.12.0 | 22.10.2 |
gffutils | 0.11.1 | 0.11.1 | 0.11.1 |
gflags | 2.2.2 | 2.2.2 | 2.2.2 |
ghostscript | 9.54.0 | 9.54.0 | 9.54.0 |
giflib | 5.2.1 | 5.2.1 | 5.2.1 |
g-ir-build-tools | 1.76.1 | 1.76.1 | 1.76.1 |
g-ir-host-tools | 1.76.1 | 1.76.1 | 1.76.1 |
gitdb | 4.0.10 | 4.0.10 | 4.0.10 |
gitdb2 | 4.0.2 | 4.0.2 | 4.0.2 |
gitpython | 3.1.31 | 3.1.31 | 3.1.31 |
gl2ps | 1.4.2 | 1.4.2 | 1.4.2 |
glew | 2.1.0 | 2.1.0 | 2.1.0 |
glib | 2.76.4 | 2.76.4 | 2.76.4 |
glib-tools | 2.76.4 | 2.76.4 | 2.76.4 |
glob2 | 0.7 | 0.7 | 0.7 |
globus-sdk | 3.23.0 | 3.23.0 | 3.23.0 |
glog | 0.5.0 | 0.5.0 | 0.6.0 |
glpk | 5.0 | 5.0 | 5.0 |
gmp | 6.2.1 | 6.2.1 | 6.2.1 |
gmpy2 | 2.1.2 | 2.1.2 | 2.1.2 |
gnutls | 3.7.8 | 3.7.8 | 3.7.8 |
gobject-introspection | 1.76.1 | 1.76.1 | 1.76.1 |
google-api-core | 2.10.2 | 2.10.2 | 2.11.1 |
google-api-python-client | 2.92.0 | 2.92.0 | 2.92.0 |
googleapis-common-protos | 1.59.1 | 1.59.1 | 1.59.1 |
google-auth | 1.35.0 | 1.35.0 | 2.21.0 |
google-auth-httplib2 | 0.1.0 | 0.1.0 | 0.1.0 |
google-auth-oauthlib | 0.4.6 | 0.4.6 | 0.4.6 |
google-cloud-core | 2.3.3 | 2.3.3 | 2.3.3 |
google-cloud-storage | 2.10.0 | 2.10.0 | 2.10.0 |
google-crc32c | 1.1.2 | 1.1.2 | 1.1.2 |
google-pasta | 0.2.0 | 0.2.0 | 0.2.0 |
google-resumable-media | 2.5.0 | 2.5.0 | 2.5.0 |
graphite2 | 1.3.13 | 1.3.13 | 1.3.13 |
graphviz | 3.0.0 | 3.0.0 | 6.0.2 |
greenlet | 1.1.3.post0 | 1.1.3.post0 | 2.0.2 |
grpc-cpp | 1.42.0 | 1.42.0 | n/a |
grpcio | 1.42.0 | 1.42.0 | 1.51.1 |
gsl | 2.7 | 2.7 | 2.7 |
gst-plugins-base | 1.20.3 | 1.20.3 | 1.21.3 |
gstreamer | 1.20.3 | 1.20.3 | 1.21.3 |
gstreamer-orc | n/a | n/a | 0.4.34 |
gtk2 | 2.24.33 | 2.24.33 | 2.24.33 |
gts | 0.7.6 | 0.7.6 | 0.7.6 |
gxx_impl_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
gxx_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
gym | 0.26.1 | 0.26.1 | 0.26.1 |
gym-notices | 0.0.8 | 0.0.8 | 0.0.8 |
h5io | 0.1.8 | 0.1.8 | 0.1.8 |
h5netcdf | 1.1.0 | 1.2.0 | 1.2.0 |
h5py | 3.8.0 | 3.7.0 | 3.8.0 |
harfbuzz | 4.2.0 | 4.2.0 | 6.0.0 |
hdf4 | 4.2.15 | 4.2.15 | 4.2.15 |
hdf5 | 1.12.2 | 1.12.1 | 1.12.2 |
hdf5storage | 0.1.19 | 0.1.19 | 0.1.19 |
heapdict | 1.0.1 | 1.0.1 | 1.0.1 |
helpdev | 0.7.1 | 0.7.1 | 0.7.1 |
hiredis | 2.2.3 | 2.2.3 | 2.2.3 |
holoviews | 1.16.2 | 1.16.2 | 1.16.2 |
html5lib | 1.1 | 1.1 | 1.1 |
htseq | 2.0.3 | 2.0.3 | 2.0.3 |
htslib | 1.15.1 | 1.15.1 | 1.17 |
httplib2 | 0.22.0 | 0.22.0 | 0.22.0 |
httpstan | 4.6.1 | 4.6.1 | 4.6.1 |
humanfriendly | 10.0 | 10.0 | 10.0 |
hyperlink | 21.0.0 | 21.0.0 | 21.0.0 |
hypothesis | 6.80.1 | 6.80.1 | 6.80.1 |
icu | 69.1 | 69.1 | 70.1 |
idna | 3.4 | 3.4 | 3.4 |
igv-reports | 1.7.0 | 1.7.0 | n/a |
ihm | n/a | n/a | 0.43 |
imagecodecs | 2022.8.8 | 2022.8.8 | 2022.8.8 |
imageio | 2.31.1 | 2.31.1 | 2.31.1 |
imageio-ffmpeg | 0.4.8 | 0.4.8 | 0.4.8 |
imagesize | 1.4.1 | 1.4.1 | 1.4.1 |
importlib-metadata | 6.8.0 | 6.8.0 | 6.8.0 |
importlib_metadata | 6.8.0 | 6.8.0 | 6.8.0 |
importlib-resources | 6.0.0 | 6.0.0 | n/a |
importlib_resources | 6.0.0 | 6.0.0 | 6.0.0 |
incremental | 22.10.0 | 22.10.0 | 22.10.0 |
inflection | 0.5.1 | 0.5.1 | 0.5.1 |
iniconfig | 2.0.0 | 2.0.0 | 2.0.0 |
intervaltree | 3.1.0 | 3.1.0 | 3.1.0 |
invoke | 2.1.3 | 2.1.3 | 2.1.3 |
ipycanvas | 0.13.1 | 0.13.1 | 0.13.1 |
ipyevents | 2.0.1 | 2.0.1 | 2.0.1 |
ipykernel | 6.24.0 | 6.24.0 | 6.29.5 |
ipympl | 0.9.3 | 0.9.3 | 0.9.3 |
ipyparallel | 8.6.1 | 8.6.1 | 8.6.1 |
ipython | 8.12.2 | 8.14.0 | 8.14.0 |
ipython_genutils | 0.2.0 | 0.2.0 | 0.2.0 |
ipyvtklink | 0.2.3 | 0.2.2 | 0.2.3 |
ipywidgets | 7.7.5 | 8.0.7 | 7.7.5 |
isa-l | 2.30.0 | 2.30.0 | 2.30.0 |
isort | 5.12.0 | 5.12.0 | 5.12.0 |
itsdangerous | 2.1.2 | 2.1.2 | 2.1.2 |
jack | n/a | n/a | 1.9.22 |
jaraco.classes | 3.2.3 | 3.2.3 | 3.2.3 |
jasper | 4.0.0 | 2.0.33 | 2.0.33 |
jax | n/a | n/a | 0.3.25 |
jaxlib | n/a | n/a | 0.3.25 |
jbig | 2.1 | 2.1 | 2.1 |
jdcal | 1.4.1 | 1.4.1 | 1.4.1 |
jedi | 0.17.2 | 0.18.2 | 0.18.2 |
jeepney | 0.8.0 | 0.8.0 | 0.8.0 |
jellyfish | 1.0.0 | 1.0.0 | 1.0.0 |
jinja2 | 3.1.2 | 3.1.2 | 3.1.2 |
jinja2-time | 0.2.0 | 0.2.0 | 0.2.0 |
jmespath | 1.0.1 | 1.0.1 | 1.0.1 |
joblib | 1.3.0 | 1.3.0 | 1.3.0 |
jpeg | 9e | 9e | 9e |
json5 | 0.9.14 | 0.9.14 | 0.9.14 |
jsoncpp | 1.9.5 | 1.9.5 | 1.9.5 |
jsonpatch | 1.32 | 1.32 | 1.32 |
jsonpickle | 2.2.0 | 2.2.0 | 2.2.0 |
jsonpointer | 2.0 | 2.0 | 2.0 |
jsonschema | 4.18.0 | 4.18.0 | 4.18.0 |
jsonschema-specifications | 2023.6.1 | 2023.6.1 | 2023.6.1 |
jupyter | 1.0.0 | 1.0.0 | 1.0.0 |
jupyter_client | 8.3.0 | 8.3.0 | 8.3.0 |
jupyter_console | 6.6.3 | 6.6.3 | 6.6.3 |
jupyter_core | 5.3.0 | 5.3.1 | 5.3.1 |
jupyter_events | 0.6.3 | 0.6.3 | 0.6.3 |
jupyterlab_pygments | 0.2.2 | 0.2.2 | 0.2.2 |
jupyterlab_widgets | 1.1.4 | 3.0.8 | 1.1.4 |
jupyter_server | 2.7.0 | 2.7.0 | 2.7.0 |
jupyter_server_terminals | 0.4.4 | 0.4.4 | 0.4.4 |
jxrlib | 1.1 | 1.1 | 1.1 |
keras | 2.7.0 | 2.7.0 | 2.11.0 |
keras-preprocessing | 1.1.2 | 1.1.2 | 1.1.2 |
kernel-headers_linux-64 | 4.18.0 | 4.18.0 | 2.6.32 |
keyring | 24.2.0 | 24.2.0 | 24.2.0 |
keyutils | 1.6.1 | 1.6.1 | 1.6.1 |
kiwisolver | 1.4.4 | 1.4.4 | 1.4.4 |
krb5 | 1.20.1 | 1.20.1 | 1.20.1 |
lame | 3.100 | 3.100 | 3.100 |
lazy_loader | 0.2 | 0.2 | 0.2 |
lazy-object-proxy | 1.9.0 | 1.9.0 | 1.9.0 |
lcms2 | 2.14 | 2.14 | 2.14 |
ld_impl_linux-64 | 2.39 | 2.39 | 2.39 |
lerc | 4.0.0 | 4.0.0 | 4.0.0 |
levenshtein | n/a | 0.21.1 | 0.21.1 |
libabseil | n/a | n/a | 20220623.0 |
libaec | 1.0.6 | 1.0.6 | 1.0.6 |
libarchive | 3.5.2 | 3.5.2 | 3.6.2 |
libarrow | n/a | n/a | 10.0.1 |
libavif | 0.10.1 | 0.10.1 | 0.10.1 |
libblas | 3.9.0 | 3.9.0 | 3.9.0 |
libbrotlicommon | 1.0.9 | 1.0.9 | 1.0.9 |
libbrotlidec | 1.0.9 | 1.0.9 | 1.0.9 |
libbrotlienc | 1.0.9 | 1.0.9 | 1.0.9 |
libcap | n/a | n/a | 2.66 |
libcblas | 3.9.0 | 3.9.0 | 3.9.0 |
libclang | 13.0.1 | 13.0.1 | 15.0.7 |
libclang13 | n/a | n/a | 15.0.7 |
libclang-cpp12 | 12.0.1 | 12.0.1 | 12.0.1 |
libclang-cpp14 | 14.0.6 | 14.0.6 | 14.0.6 |
libclang-cpp15 | n/a | n/a | 15.0.7 |
libcrc32c | 1.1.2 | 1.1.2 | 1.1.2 |
libcups | n/a | n/a | 2.3.3 |
libcurl | 7.87.0 | 7.87.0 | 7.87.0 |
libdb | n/a | n/a | 6.2.32 |
libdeflate | 1.13 | 1.13 | 1.13 |
libdrm | 2.4.114 | 2.4.114 | 2.4.114 |
libedit | 3.1.20191231 | 3.1.20191231 | 3.1.20191231 |
libev | 4.33 | 4.33 | 4.33 |
libevent | 2.1.10 | 2.1.10 | 2.1.10 |
libexpat | 2.5.0 | 2.5.0 | 2.5.0 |
libffi | 3.4.2 | 3.4.2 | 3.4.2 |
libflac | n/a | n/a | 1.4.3 |
libgcc-devel_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
libgcc-ng | 13.1.0 | 13.1.0 | 13.1.0 |
libgcrypt | n/a | n/a | 1.10.1 |
libgd | 2.3.3 | 2.3.3 | 2.3.3 |
libgfortran | n/a | n/a | 3.0.0 |
libgfortran5 | 13.1.0 | 13.1.0 | 13.1.0 |
libgfortran-ng | 13.1.0 | 13.1.0 | 13.1.0 |
libgirepository | 1.76.1 | 1.76.1 | 1.76.1 |
libglib | 2.76.4 | 2.76.4 | 2.76.4 |
libglu | 9.0.0 | 9.0.0 | 9.0.0 |
libgomp | 13.1.0 | 13.1.0 | 13.1.0 |
libgoogle-cloud | n/a | n/a | 2.5.0 |
libgpg-error | n/a | n/a | 1.47 |
libgpuarray | 0.7.6 | 0.7.6 | 0.7.6 |
libgrpc | n/a | n/a | 1.51.1 |
libhwloc | 2.8.0 | 2.8.0 | 2.9.1 |
libiconv | 1.17 | 1.17 | 1.17 |
libidn2 | 2.3.4 | 2.3.4 | 2.3.4 |
liblapack | 3.9.0 | 3.9.0 | 3.9.0 |
liblapacke | 3.9.0 | 3.9.0 | 3.9.0 |
libllvm10 | 10.0.1 | 10.0.1 | 10.0.1 |
libllvm11 | 11.1.0 | 11.1.0 | 11.1.0 |
libllvm12 | 12.0.1 | 12.0.1 | 12.0.1 |
libllvm13 | 13.0.1 | 13.0.1 | n/a |
libllvm14 | 14.0.6 | 14.0.6 | 14.0.6 |
libllvm15 | n/a | n/a | 15.0.7 |
libllvmspirv15 | n/a | n/a | 15.0.0 |
libmamba | 1.1.0 | 1.1.0 | 1.2.0 |
libmambapy | 1.1.0 | 1.1.0 | 1.2.0 |
libmatio | n/a | n/a | 1.5.23 |
libmicrohttpd | 0.9.77 | 0.9.77 | 0.9.77 |
libnetcdf | 4.8.1 | 4.8.1 | 4.8.1 |
libnghttp2 | 1.51.0 | 1.51.0 | 1.51.0 |
libnsl | 2.0.0 | 2.0.0 | 2.0.0 |
libogg | 1.3.4 | 1.3.4 | 1.3.4 |
libopenblas | n/a | n/a | 0.3.23 |
libopencv | n/a | 4.5.5 | 4.6.0 |
libopus | 1.3.1 | 1.3.1 | 1.3.1 |
libosqp | 0.6.3 | 0.6.3 | 0.6.3 |
libpciaccess | 0.17 | 0.17 | 0.17 |
libpng | 1.6.39 | 1.6.39 | 1.6.39 |
libpq | 14.5 | 14.5 | 15.1 |
libprotobuf | 3.19.6 | 3.19.6 | 3.21.12 |
libqdldl | 0.1.5 | 0.1.5 | 0.1.5 |
librsvg | 2.54.4 | 2.54.4 | 2.54.4 |
libsanitizer | 10.4.0 | 10.4.0 | 10.4.0 |
libsndfile | n/a | n/a | 1.2.0 |
libsodium | 1.0.18 | 1.0.18 | 1.0.18 |
libsolv | 0.7.24 | 0.7.24 | 0.7.24 |
libspatialindex | 1.9.3 | 1.9.3 | 1.9.3 |
libsqlite | 3.42.0 | 3.42.0 | 3.42.0 |
libssh2 | 1.10.0 | 1.10.0 | 1.10.0 |
libstdcxx-devel_linux-64 | 10.4.0 | 10.4.0 | 10.4.0 |
libstdcxx-ng | 13.1.0 | 13.1.0 | 13.1.0 |
libsystemd0 | n/a | n/a | 252 |
libtasn1 | 4.19.0 | 4.19.0 | 4.19.0 |
libtheora | 1.1.1 | 1.1.1 | 1.1.1 |
libthrift | 0.15.0 | 0.15.0 | 0.16.0 |
libtiff | 4.4.0 | 4.4.0 | 4.4.0 |
libtool | 2.4.7 | 2.4.7 | 2.4.7 |
libudev1 | n/a | n/a | 253 |
libunistring | 0.9.10 | 0.9.10 | 0.9.10 |
libunwind | 1.6.2 | 1.6.2 | 1.6.2 |
libutf8proc | 2.8.0 | 2.8.0 | 2.8.0 |
libuuid | 2.38.1 | 2.38.1 | 2.38.1 |
libuv | 1.43.0 | 1.43.0 | 1.44.2 |
libva | 2.18.0 | 2.18.0 | 2.18.0 |
libvorbis | 1.3.7 | 1.3.7 | 1.3.7 |
libvpx | 1.11.0 | 1.11.0 | 1.11.0 |
libwebp | 1.2.4 | 1.2.4 | 1.2.4 |
libwebp-base | 1.2.4 | 1.2.4 | 1.2.4 |
libxcb | 1.13 | 1.13 | 1.13 |
libxgboost | 1.7.4 | 1.7.4 | 1.7.4 |
libxkbcommon | 1.0.3 | 1.0.3 | 1.5.0 |
libxml2 | 2.9.14 | 2.9.14 | 2.10.3 |
libxslt | 1.1.33 | 1.1.33 | 1.1.37 |
libzip | 1.9.2 | 1.9.2 | 1.9.2 |
libzlib | 1.2.13 | 1.2.13 | 1.2.13 |
libzopfli | 1.0.3 | 1.0.3 | 1.0.3 |
line_profiler | 4.0.3 | 4.0.3 | 4.0.3 |
linkify-it-py | n/a | n/a | 2.0.0 |
llvmlite | 0.40.1 | 0.40.1 | 0.40.1 |
llvm-openmp | 16.0.6 | 16.0.6 | 16.0.6 |
llvm-spirv-15 | n/a | n/a | 15.0.0 |
locket | 1.0.0 | 1.0.0 | 1.0.0 |
logmuse | 0.2.6 | 0.2.6 | 0.2.6 |
loguru | 0.7.0 | 0.7.0 | 0.7.0 |
lxml | 4.8.0 | 4.8.0 | 4.9.2 |
lz4 | 4.3.2 | 4.3.2 | 4.3.2 |
lz4-c | 1.9.3 | 1.9.3 | 1.9.4 |
lzo | 2.10 | 2.10 | 2.10 |
magma | 2.5.4 | 2.5.4 | 2.5.4 |
mako | 1.2.4 | 1.2.4 | 1.2.4 |
mamba | 1.1.0 | 1.1.0 | 1.2.0 |
markdown | 3.4.3 | 3.4.3 | 3.4.3 |
markdown-it-py | 3.0.0 | 3.0.0 | 3.0.0 |
markupsafe | 2.1.3 | 2.1.3 | 2.1.3 |
marshmallow | 3.19.0 | 3.19.0 | 3.19.0 |
matplotlib | 3.7.2 | 3.7.2 | 3.7.2 |
matplotlib-base | 3.7.2 | 3.7.2 | 3.7.2 |
matplotlib-inline | 0.1.6 | 0.1.6 | 0.1.6 |
matplotlib-venn | 0.11.9 | n/a | n/a |
mayavi | 4.8.1 | n/a | n/a |
mccabe | 0.6.1 | 0.7.0 | 0.7.0 |
mdit-py-plugins | n/a | n/a | 0.4.0 |
mdurl | 0.1.0 | 0.1.0 | 0.1.0 |
mesalib | 23.0.0 | 23.0.0 | 23.0.0 |
meshio | 5.3.4 | 5.3.4 | 5.3.4 |
metis | 5.1.0 | 5.1.0 | 5.1.0 |
mffpy | 0.8.0 | 0.8.0 | 0.8.0 |
mistune | 3.0.0 | 3.0.0 | 3.0.0 |
mizani | 0.9.2 | 0.9.2 | 0.9.2 |
mkl | 2022.1.0 | 2022.1.0 | 2022.1.0 |
mkl-devel | 2022.1.0 | 2022.1.0 | 2022.1.0 |
mkl-include | 2022.1.0 | 2022.1.0 | 2022.1.0 |
mne | 1.2.3 | 1.2.3 | 1.4.2 |
mne-base | 1.2.3 | 1.2.3 | 1.4.2 |
mne-qt-browser | 0.5.1 | 0.5.1 | 0.5.1 |
mock | 5.0.2 | 5.0.2 | 5.0.2 |
modelcif | n/a | n/a | 0.9 |
more-itertools | 9.1.0 | 9.1.0 | 9.1.0 |
mpc | 1.3.1 | 1.3.1 | 1.3.1 |
mpfr | 4.2.0 | 4.2.0 | 4.2.0 |
mpg123 | n/a | n/a | 1.31.3 |
mpmath | 1.3.0 | 1.3.0 | 1.3.0 |
msgpack-python | 1.0.5 | 1.0.5 | 1.0.5 |
multidict | 6.0.4 | 6.0.4 | 6.0.4 |
multipledispatch | 0.6.0 | 0.6.0 | 0.6.0 |
munkres | 1.1.4 | 1.1.4 | 1.1.4 |
mypy_extensions | 1.0.0 | 1.0.0 | 1.0.0 |
mysql-common | 8.0.32 | 8.0.32 | 8.0.32 |
mysql-connector-python | 8.0.29 | 8.0.29 | 8.0.31 |
mysql-libs | 8.0.32 | 8.0.32 | 8.0.32 |
natsort | 8.4.0 | 8.4.0 | 8.4.0 |
nbclassic | 1.0.0 | 1.0.0 | 1.0.0 |
nbclient | 0.8.0 | 0.8.0 | 0.8.0 |
nbconvert | 7.6.0 | 7.6.0 | 7.6.0 |
nbconvert-core | 7.6.0 | 7.6.0 | 7.6.0 |
nbconvert-pandoc | 7.6.0 | 7.6.0 | 7.6.0 |
nbformat | 5.9.0 | 5.9.0 | 5.9.0 |
nccl | 2.18.3.1 | 2.18.3.1 | 2.18.3.1 |
ncurses | 6.4 | 6.4 | 6.4 |
nest-asyncio | 1.5.6 | 1.5.6 | 1.5.6 |
netcdf4 | 1.6.2 | 1.6.0 | 1.6.2 |
nettle | 3.8.1 | 3.8.1 | 3.8.1 |
networkx | 3.1 | 3.1 | 3.1 |
nibabel | 5.1.0 | 5.1.0 | 5.1.0 |
nilearn | 0.10.1 | 0.10.1 | 0.10.1 |
ninja | 1.11.1 | 1.11.1 | 1.11.1 |
nlohmann_json | n/a | n/a | 3.11.2 |
nltk | n/a | 3.8.1 | 3.8.1 |
nodejs | 17.8.0 | 17.8.0 | 18.12.1 |
nose | 1.3.7 | 1.3.7 | 1.3.7 |
notebook | 6.5.4 | 6.5.4 | 6.5.4 |
notebook-shim | 0.2.3 | 0.2.3 | 0.2.3 |
npx | 0.1.1 | 0.1.1 | 0.1.1 |
nspr | 4.35 | 4.35 | 4.35 |
nss | 3.89 | 3.89 | 3.89 |
numba | 0.57.1 | 0.57.1 | 0.57.1 |
numexpr | 2.7.3 | 2.7.3 | 2.7.3 |
numpy | 1.24.4 | 1.24.4 | 1.24.4 |
numpydoc | 1.5.0 | 1.5.0 | 1.5.0 |
oauth2client | 4.1.3 | 4.1.3 | 4.1.3 |
oauthlib | 3.2.2 | 3.2.2 | 3.2.2 |
ocl-icd | 2.3.1 | 2.3.1 | 2.3.1 |
odo | 0.5.1 | 0.5.1 | 0.5.1 |
olefile | 0.46 | 0.46 | 0.46 |
opencensus | 0.11.2 | 0.11.2 | 0.11.2 |
opencensus-context | 0.1.3 | 0.1.3 | 0.1.3 |
opencv | n/a | 4.5.5 | 4.6.0 |
openh264 | 2.3.1 | 2.3.1 | 2.3.1 |
openjpeg | 2.5.0 | 2.5.0 | 2.5.0 |
openmeeg | n/a | n/a | 2.5.6 |
openpyxl | 3.1.2 | 3.1.2 | 3.1.2 |
openssl | 1.1.1u | 1.1.1w | 1.1.1w |
opt_einsum | 3.3.0 | 3.3.0 | 3.3.0 |
orc | 1.7.1 | 1.7.1 | 1.8.2 |
ordered-set | 4.1.0 | 4.1.0 | 4.1.0 |
orjson | 3.9.2 | 3.9.2 | 3.9.2 |
osqp | 0.6.3 | 0.6.3 | 0.6.3 |
overrides | 7.3.1 | 7.3.1 | 7.3.1 |
p11-kit | 0.24.1 | 0.24.1 | 0.24.1 |
packaging | 23.1 | 23.1 | 23.1 |
palettable | 3.3.3 | 3.3.3 | 3.3.3 |
pandas | 2.0.3 | 2.0.3 | 2.0.3 |
pandoc | 3.1.3 | 3.1.3 | 3.1.3 |
pandocfilters | 1.5.0 | 1.5.0 | 1.5.0 |
panel | 0.14.4 | 0.14.4 | 1.2.0 |
pango | 1.50.7 | 1.50.7 | 1.50.14 |
param | 1.13.0 | 1.13.0 | 1.13.0 |
paramiko | 3.2.0 | 3.2.0 | 3.2.0 |
parasail-python | 1.3.4 | 1.3.4 | 1.3.4 |
parquet-cpp | 1.5.1 | 1.5.1 | 1.5.1 |
parso | 0.7.0 | 0.8.3 | 0.8.3 |
partd | 1.4.0 | 1.4.0 | 1.4.0 |
pastel | 0.2.1 | 0.2.1 | 0.2.1 |
patchelf | 0.17.2 | 0.17.2 | 0.17.2 |
path | 16.7.1 | 16.7.1 | 16.7.1 |
pathlib2 | 2.3.7.post1 | 2.3.7.post1 | 2.3.7.post1 |
path.py | n/a | 12.5.0 | n/a |
pathspec | 0.11.1 | 0.11.1 | 0.11.1 |
pathtools | 0.1.2 | 0.1.2 | 0.1.2 |
patsy | 0.5.3 | 0.5.3 | 0.5.3 |
pbr | 5.11.1 | 5.11.1 | 5.11.1 |
pbzip2 | 1.1.13 | 1.1.13 | 1.1.13 |
pcre | 8.45 | 8.45 | n/a |
pcre2 | 10.40 | 10.40 | 10.40 |
pep8 | 1.7.1 | 1.7.1 | 1.7.1 |
peppy | 0.35.6 | 0.35.6 | 0.35.6 |
pexpect | 4.8.0 | 4.8.0 | 4.8.0 |
pickleshare | 0.7.5 | 0.7.5 | 0.7.5 |
pigz | 2.6 | 2.6 | 2.6 |
pillow | 9.2.0 | 9.2.0 | 9.2.0 |
pip | 23.1.2 | 23.1.2 | 23.1.2 |
pixman | 0.40.0 | 0.40.0 | 0.40.0 |
pkg-config | 0.29.2 | 0.29.2 | 0.29.2 |
pkgutil-resolve-name | 1.3.10 | 1.3.10 | 1.3.10 |
plac | 1.3.5 | 1.3.5 | 1.3.5 |
platformdirs | 3.8.1 | 3.8.1 | 3.8.1 |
plotly | 5.15.0 | 5.15.0 | 5.15.0 |
plotly-orca | 3.4.2 | n/a | n/a |
plotnine | 0.12.1 | 0.12.1 | 0.12.1 |
pluggy | 1.2.0 | 1.2.0 | 1.2.0 |
plumbum | 1.8.2 | 1.8.2 | 1.8.2 |
ply | 3.11 | 3.11 | 3.11 |
pmw | 2.0.1 | 2.0.1 | n/a |
pocl | 3.0 | 3.0 | 4.0 |
pocl-core | n/a | n/a | 4.0 |
pocl-cpu | n/a | n/a | 4.0 |
pocl-cpu-minimal | n/a | n/a | 4.0 |
pocl-cuda | n/a | n/a | 4.0 |
pooch | 1.7.0 | 1.7.0 | 1.7.0 |
poyo | 0.5.0 | 0.5.0 | 0.5.0 |
prettytable | 3.7.0 | 3.7.0 | 3.7.0 |
proj | 9.0.1 | 9.0.0 | 9.1.0 |
prometheus_client | 0.17.0 | 0.17.0 | 0.17.0 |
prompt-toolkit | 3.0.39 | 3.0.39 | 3.0.39 |
prompt_toolkit | 3.0.39 | 3.0.39 | 3.0.39 |
protobuf | 3.19.6 | 3.19.6 | 4.21.12 |
psutil | 5.9.5 | 5.9.5 | 5.9.5 |
pthread-stubs | 0.4 | 0.4 | 0.4 |
ptyprocess | 0.7.0 | 0.7.0 | 0.7.0 |
pugixml | 1.11.4 | 1.11.4 | 1.11.4 |
pulp | 2.7.0 | 2.7.0 | 2.7.0 |
pulseaudio | n/a | n/a | 16.1 |
pure_eval | 0.2.2 | 0.2.2 | 0.2.2 |
py | 1.11.0 | 1.11.0 | n/a |
py2bit | 0.3.0 | 0.3.0 | n/a |
pyarrow | 6.0.1 | 6.0.1 | 10.0.1 |
pyasn1 | 0.4.8 | 0.4.8 | 0.4.8 |
pyasn1-modules | 0.2.7 | 0.2.7 | 0.2.7 |
pybedtools | 0.9.0 | 0.9.0 | n/a |
pybind11-abi | 4 | 4 | 4 |
pycairo | 1.24.0 | 1.24.0 | 1.24.0 |
pycodestyle | 2.6.0 | 2.10.0 | 2.11.1 |
pycosat | 0.6.4 | 0.6.4 | 0.6.4 |
pycparser | 2.21 | 2.21 | 2.21 |
pycrypto | n/a | 2.6.1 | 2.6.1 |
pyct | 0.4.6 | 0.4.6 | 0.4.6 |
pyct-core | 0.4.6 | 0.4.6 | 0.4.6 |
pycurl | 7.45.1 | 7.45.1 | 7.45.1 |
pydicom | 2.4.1 | 2.4.1 | n/a |
pydocstyle | 6.3.0 | 6.3.0 | 6.3.0 |
pydot | 1.4.2 | 1.4.2 | 1.4.2 |
pyerfa | 2.0.0.3 | 2.0.0.3 | 2.0.0.3 |
pyface | 8.0.0 | 8.0.0 | n/a |
pyfaidx | 0.7.2.1 | 0.7.2.1 | 0.7.2.1 |
pyfasta | 0.5.2 | 0.5.2 | 0.5.2 |
pyflakes | 2.2.0 | 3.0.1 | 3.1.0 |
pyglet | n/a | 1.5.27 | 1.5.27 |
pygments | 2.15.1 | 2.15.1 | 2.15.1 |
pygpu | 0.7.6 | 0.7.6 | 0.7.6 |
pygraphviz | 1.9 | 1.9 | 1.10 |
pyhamcrest | n/a | 2.0.4 | 2.0.4 |
pyjwt | 2.7.0 | 2.7.0 | 2.7.0 |
pylev | 1.4.0 | 1.4.0 | 1.4.0 |
pylint | 2.17.4 | 2.17.4 | 2.17.4 |
pylint-venv | n/a | 3.0.2 | 3.0.2 |
pyls-black | 0.4.6 | n/a | n/a |
pyls-spyder | 0.3.2 | 0.4.0 | 0.4.0 |
pymatreader | 0.0.32 | 0.0.32 | 0.0.32 |
pymongo | n/a | 4.4.0 | 4.4.0 |
pynacl | 1.5.0 | 1.5.0 | 1.5.0 |
pynndescent | 0.5.10 | 0.5.10 | 0.5.10 |
pynvim | 0.4.3 | 0.4.3 | n/a |
pyodbc | n/a | 4.0.39 | 4.0.39 |
pyopencl | 2023.1.1 | 2023.1.1 | 2023.1.1 |
py-opencv | n/a | 4.5.5 | 4.6.0 |
pyopengl | 3.1.6 | 3.1.6 | 3.1.6 |
pyopenssl | 23.2.0 | 23.2.0 | 23.2.0 |
pyparsing | 3.0.9 | 3.0.9 | 3.0.9 |
pyproj | 3.4.0 | 3.3.1 | 3.4.1 |
pyqt | 5.12.3 | 5.12.3 | 5.15.7 |
pyqt5-sip | 4.19.18 | 4.19.18 | 12.11.0 |
pyqtchart | 5.12 | 5.12 | n/a |
pyqtgraph | 0.12.4 | 0.12.4 | 0.13.3 |
pyqt-impl | 5.12.3 | 5.12.3 | n/a |
pyqtwebengine | 5.12.1 | 5.12.1 | 5.15.7 |
pyrsistent | 0.19.3 | 0.19.3 | 0.19.3 |
pysam | 0.21.0 | 0.21.0 | 0.21.0 |
pysftp | 0.2.9 | 0.2.9 | 0.2.9 |
pyshp | 2.3.1 | 2.3.1 | 2.3.1 |
pysimdjson | 5.0.2 | 5.0.2 | 5.0.2 |
pysmi | n/a | 0.3.4 | 0.3.4 |
pysocks | 1.7.1 | 1.7.1 | 1.7.1 |
py-spy | n/a | 0.3.14 | 0.3.14 |
pystan | 3.6.0 | 3.6.0 | n/a |
pytabix | 0.1 | 0.1 | n/a |
pytables | 3.7.0 | 3.7.0 | 3.7.0 |
pytest | 7.4.0 | 7.4.0 | 7.4.0 |
pytest-arraydiff | n/a | 0.5.0 | 0.5.0 |
pytest-doctestplus | n/a | 0.13.0 | 0.13.0 |
pytest-openfiles | n/a | 0.5.0 | 0.5.0 |
pytest-remotedata | n/a | 0.4.0 | 0.4.0 |
pytest-runner | n/a | 6.0.0 | 6.0.0 |
python | 3.8.15 | 3.9.15 | 3.10.8 |
python_abi | 3.8 | 3.9 | 3.10 |
python-dateutil | 2.8.2 | 2.8.2 | 2.8.2 |
python-fastjsonschema | 2.17.1 | 2.17.1 | 2.17.1 |
python-flatbuffers | 2.0 | 2.0 | 23.5.26 |
python-graphviz | 0.20.1 | n/a | n/a |
python-hostlist | n/a | 1.21 | 1.21 |
python-irodsclient | 1.1.8 | 1.1.8 | 1.1.8 |
python-isal | 1.1.0 | 1.1.0 | 1.1.0 |
python-json-logger | 2.0.7 | 2.0.7 | 2.0.7 |
python-jsonrpc-server | 0.4.0 | n/a | n/a |
python-language-server | 0.36.2 | n/a | n/a |
python-levenshtein | n/a | 0.21.1 | 0.21.1 |
python-lmdb | n/a | 1.4.1 | 1.4.1 |
python-lsp-black | n/a | 1.3.0 | 1.3.0 |
python-lsp-jsonrpc | n/a | 1.0.0 | 1.1.2 |
python-lsp-server | n/a | 1.7.4 | 1.9.0 |
python-lsp-server-base | n/a | 1.7.4 | 1.9.0 |
python-picard | 0.7 | 0.7 | 0.7 |
python-slugify | 8.0.1 | 8.0.1 | 8.0.1 |
python-tzdata | 2023.3 | 2023.3 | 2023.3 |
pytoolconfig | 1.2.5 | 1.2.5 | 1.2.5 |
pytools | 2023.1 | 2023.1 | 2023.1 |
pytorch | 1.11.0 | 1.11.0 | 1.12.1 |
pytz | 2023.3 | 2023.3 | 2023.3 |
pytz-deprecation-shim | 0.1.0.post0 | 0.1.0.post0 | 0.1.0.post0 |
pyu2f | 0.1.5 | 0.1.5 | 0.1.5 |
pyvcf | 0.6.8 | 0.6.8 | n/a |
pyvcf3 | 1.0.3 | 1.0.3 | 1.0.3 |
pyvista | 0.40.0 | 0.40.0 | 0.40.0 |
pyvistaqt | 0.11.0 | 0.11.0 | 0.11.0 |
pyviz_comms | 2.3.2 | 2.3.2 | 2.3.2 |
pywavelets | 1.4.1 | 1.4.1 | 1.4.1 |
pywin32-on-windows | 0.1.0 | 0.1.0 | 0.1.0 |
pyxdg | 0.28 | 0.28 | 0.28 |
py-xgboost | n/a | 1.7.4 | 1.7.4 |
pyyaml | 6.0 | 6.0 | 6.0 |
pyzmq | 25.1.0 | 25.1.0 | 25.1.0 |
qdarkstyle | 3.0.2 | 3.1 | 3.2.3 |
qdldl-python | 0.1.5.post2 | 0.1.5.post2 | 0.1.5.post2 |
qstylizer | 0.2.2 | 0.2.2 | 0.2.2 |
qt | 5.12.9 | 5.12.9 | n/a |
qtawesome | 1.2.3 | 1.2.3 | 1.2.3 |
qtconsole | 5.4.3 | 5.4.3 | 5.5.2 |
qtconsole-base | 5.4.3 | 5.4.3 | 5.5.2 |
qt-main | n/a | n/a | 5.15.6 |
qtpy | 2.3.1 | 2.3.1 | 2.4.1 |
qt-webengine | n/a | n/a | 5.15.4 |
rapidfuzz | n/a | 2.15.1 | 2.15.1 |
ratelimiter | 1.2.0 | 1.2.0 | n/a |
ray | 1.12.0 | 1.12.0 | 2.2.0 |
re2 | 2021.11.01 | 2021.11.01 | 2022.06.01 |
readline | 8.2 | 8.2 | 8.2 |
redis-py | 4.5.5 | 4.5.5 | 4.5.5 |
referencing | 0.29.1 | 0.29.1 | 0.29.1 |
regex | 2023.6.3 | 2023.6.3 | 2023.6.3 |
reportlab | 4.0.4 | 4.0.4 | 4.0.4 |
reproc | 14.2.4 | 14.2.4 | 14.2.4 |
reproc-cpp | 14.2.4 | 14.2.4 | 14.2.4 |
requests | 2.31.0 | 2.31.0 | 2.31.0 |
requests-oauthlib | 1.3.1 | 1.3.1 | 1.3.1 |
reretry | 0.11.8 | 0.11.8 | 0.11.8 |
retry | 0.9.2 | 0.9.2 | n/a |
retrying | 1.3.3 | 1.3.3 | 1.3.3 |
rfc3339-validator | 0.1.4 | 0.1.4 | 0.1.4 |
rfc3986-validator | 0.1.1 | 0.1.1 | 0.1.1 |
rich | 13.4.2 | 13.4.2 | 13.4.2 |
rlpycairo | 0.2.0 | 0.2.0 | 0.2.0 |
rope | 1.9.0 | 1.9.0 | 1.9.0 |
rpds-py | 0.8.8 | 0.8.8 | 0.8.8 |
rpy2 | 3.5.13 | 3.5.13 | 3.5.13 |
rsa | 4.9 | 4.9 | 4.9 |
rtree | 1.0.1 | 1.0.1 | 1.0.1 |
ruamel.yaml | 0.17.32 | 0.17.32 | 0.17.32 |
ruamel.yaml.clib | 0.2.7 | 0.2.7 | 0.2.7 |
s2n | 1.3.0 | 1.3.0 | 1.3.31 |
s3transfer | 0.6.1 | 0.6.1 | 0.6.1 |
scikit-image | 0.21.0 | 0.21.0 | 0.21.0 |
scikit-learn | 1.3.0 | 1.3.0 | 1.3.0 |
scipy | 1.10.1 | 1.11.1 | 1.11.1 |
scooby | 0.7.2 | 0.7.2 | 0.7.2 |
scs | 3.2.3 | 3.2.3 | 3.2.3 |
seaborn | 0.12.2 | 0.12.2 | 0.12.2 |
seaborn-base | 0.12.2 | 0.12.2 | 0.12.2 |
secretstorage | 3.3.3 | 3.3.3 | 3.3.3 |
send2trash | 1.8.2 | 1.8.2 | 1.8.2 |
service_identity | 18.1.0 | 18.1.0 | 18.1.0 |
setuptools | 68.0.0 | 68.0.0 | 68.0.0 |
setuptools-scm | n/a | n/a | 7.1.0 |
sh | 2.0.4 | 2.0.4 | 2.0.4 |
shapely | 2.0.1 | 2.0.1 | 2.0.1 |
simplegeneric | 0.8.1 | 0.8.1 | 0.8.1 |
simplejson | 3.19.1 | 3.19.1 | 3.19.1 |
sinfo | 0.3.1 | 0.3.1 | 0.3.1 |
singledispatch | 3.6.1 | 3.6.1 | 3.6.1 |
sip | 6.7.9 | 6.7.9 | 6.7.9 |
six | 1.16.0 | 1.16.0 | 1.16.0 |
slacker | 0.14.0 | 0.14.0 | 0.14.0 |
sleef | 3.5.1 | 3.5.1 | 3.5.1 |
smart_open | 6.3.0 | 6.3.0 | 6.3.0 |
smmap | 3.0.5 | 3.0.5 | 3.0.5 |
snakemake | 7.30.1 | 7.30.1 | 7.30.1 |
snakemake-minimal | 7.30.1 | 7.30.1 | 7.30.1 |
snappy | 1.1.10 | 1.1.10 | 1.1.10 |
sniffio | 1.3.0 | 1.3.0 | 1.3.0 |
snowballstemmer | 2.2.0 | 2.2.0 | 2.2.0 |
sortedcollections | 2.1.0 | 2.1.0 | 2.1.0 |
sortedcontainers | 2.4.0 | 2.4.0 | 2.4.0 |
soupsieve | 2.3.2.post1 | 2.3.2.post1 | 2.3.2.post1 |
sphinx | 7.0.1 | 7.0.1 | 7.0.1 |
sphinxcontrib-applehelp | 1.0.4 | 1.0.4 | 1.0.4 |
sphinxcontrib-devhelp | 1.0.2 | 1.0.2 | 1.0.2 |
sphinxcontrib-htmlhelp | 2.0.1 | 2.0.1 | 2.0.1 |
sphinxcontrib-jsmath | 1.0.1 | 1.0.1 | 1.0.1 |
sphinxcontrib-qthelp | 1.0.3 | 1.0.3 | 1.0.3 |
sphinxcontrib-serializinghtml | 1.1.5 | 1.1.5 | 1.1.5 |
spyder | 5.0.5 | 5.4.3 | 5.5.0 |
spyder-kernels | 2.0.5 | 2.4.4 | 2.5.2 |
sqlalchemy | 2.0.18 | 2.0.18 | 2.0.18 |
sqlite | 3.42.0 | 3.42.0 | 3.42.0 |
stack_data | 0.6.2 | 0.6.2 | 0.6.2 |
statsmodels | 0.14.0 | 0.14.0 | 0.14.0 |
stdlib-list | 0.8.0 | 0.8.0 | 0.8.0 |
stone | 3.3.1 | 3.3.1 | 3.3.1 |
stopit | 1.1.2 | 1.1.2 | 1.1.2 |
suitesparse | 5.10.1 | 5.10.1 | 5.10.1 |
svgutils | 0.3.4 | 0.3.4 | 0.3.4 |
svt-av1 | 1.3.0 | 1.3.0 | 1.4.1 |
sympy | n/a | 1.12 | 1.12 |
sysroot_linux-64 | 2.28 | 2.28 | 2.12 |
tabulate | 0.9.0 | 0.9.0 | 0.9.0 |
tbb | 2021.7.0 | 2021.7.0 | 2021.9.0 |
tbb-devel | 2021.7.0 | 2021.7.0 | 2021.9.0 |
tblib | 1.7.0 | 1.7.0 | 1.7.0 |
tenacity | 8.2.2 | 8.2.2 | 8.2.2 |
tensorboard | 2.6.0 | 2.6.0 | 2.11.2 |
tensorboard-data-server | 0.6.1 | 0.6.1 | 0.6.1 |
tensorboard-plugin-wit | 1.8.1 | 1.8.1 | 1.8.1 |
tensorboardx | 2.5.1 | 2.5.1 | 2.5 |
tensorflow | 2.7.0 | 2.7.0 | 2.11.0 |
tensorflow-base | 2.7.0 | 2.7.0 | 2.11.0 |
tensorflow-estimator | 2.7.0 | 2.7.0 | 2.11.0 |
tensorflow-probability | 0.15.0 | 0.15.0 | 0.19.0 |
termcolor | 2.3.0 | 2.3.0 | 2.3.0 |
terminado | 0.17.1 | 0.17.1 | 0.17.1 |
terminaltables | 3.1.10 | 3.1.10 | 3.1.10 |
testpath | 0.6.0 | 0.6.0 | 0.6.0 |
textdistance | 4.5.0 | 4.5.0 | 4.5.0 |
text-unidecode | 1.3 | 1.3 | 1.3 |
theano | 1.0.5 | 1.0.5 | 1.0.5 |
threadpoolctl | 3.1.0 | 3.1.0 | 3.1.0 |
three-merge | 0.1.1 | 0.1.1 | 0.1.1 |
thrift-compiler | 0.15.0 | 0.15.0 | 0.16.0 |
thrift-cpp | 0.13.0 | 0.13.0 | 0.16.0 |
throttler | 1.2.1 | 1.2.1 | 1.2.1 |
tifffile | 2022.10.10 | 2022.10.10 | 2022.10.10 |
tinycss2 | 1.2.1 | 1.2.1 | 1.2.1 |
tk | 8.6.12 | 8.6.12 | 8.6.12 |
toml | 0.10.2 | 0.10.2 | 0.10.2 |
tomli | 2.0.1 | 2.0.1 | 2.0.1 |
tomlkit | 0.11.8 | 0.11.8 | 0.11.8 |
toolz | 0.12.0 | 0.12.0 | 0.12.0 |
toposort | 1.10 | 1.10 | 1.10 |
torchvision | 0.12.0 | 0.12.0 | 0.13.0 |
tornado | 6.3.2 | 6.3.2 | 6.3.2 |
tqdm | 4.65.0 | 4.65.0 | 4.65.0 |
traitlets | 5.9.0 | 5.9.0 | 5.9.0 |
traits | 6.4.1 | 6.4.1 | n/a |
traitsui | 8.0.0 | 8.0.0 | n/a |
twobitreader | 3.1.7 | 3.1.7 | 3.1.7 |
typed-ast | 1.5.5 | 1.5.5 | n/a |
typing | 3.10.0.0 | 3.10.0.0 | 3.10.0.0 |
typing-extensions | 4.7.1 | 4.7.1 | 4.7.1 |
typing_extensions | 4.7.1 | 4.7.1 | 4.7.1 |
typing_utils | 0.1.0 | 0.1.0 | 0.1.0 |
tzdata | 2023c | 2023c | 2023c |
tzlocal | 5.0.1 | 5.0.1 | 5.0.1 |
ubiquerg | 0.6.2 | 0.6.2 | 0.6.2 |
uc-micro-py | n/a | n/a | 1.0.1 |
ujson | 5.7.0 | 5.7.0 | 5.7.0 |
umap-learn | 0.5.3 | 0.5.3 | 0.5.3 |
unicodecsv | 0.14.1 | 0.14.1 | 0.14.1 |
unicodedata2 | 15.0.0 | 15.0.0 | 15.0.0 |
unidecode | 1.3.6 | 1.3.6 | 1.3.6 |
unixodbc | 2.3.10 | 2.3.10 | 2.3.10 |
uritemplate | 4.1.1 | 4.1.1 | 4.1.1 |
urllib3 | 1.26.15 | 1.26.15 | 1.26.15 |
utfcpp | 3.2.3 | 3.2.3 | 3.2.3 |
util-linux | 2.38.1 | 2.38.1 | n/a |
veracitools | 0.1.3 | 0.1.3 | 0.1.3 |
virtualenv | n/a | 20.23.1 | 20.23.1 |
vtk | 9.1.0 | 9.1.0 | 9.2.5 |
watchdog | 3.0.0 | 3.0.0 | 3.0.0 |
wcwidth | 0.2.6 | 0.2.6 | 0.2.6 |
webargs | 8.2.0 | 8.2.0 | 8.2.0 |
webencodings | 0.5.1 | 0.5.1 | 0.5.1 |
websocket-client | 1.6.1 | 1.6.1 | 1.6.1 |
werkzeug | 2.3.6 | 2.3.6 | 2.3.6 |
whatthepatch | n/a | 1.0.5 | 1.0.5 |
wheel | 0.40.0 | 0.40.0 | 0.40.0 |
whichcraft | 0.6.1 | 0.6.1 | 0.6.1 |
widgetsnbextension | 3.6.4 | 4.0.8 | 3.6.4 |
wrapt | 1.15.0 | 1.15.0 | 1.15.0 |
wslink | n/a | n/a | 1.11.1 |
wurlitzer | 3.0.3 | 3.0.3 | 3.0.3 |
x264 | 1!164.3095 | 1!164.3095 | 1!164.3095 |
x265 | 3.5 | 3.5 | 3.5 |
xarray | 2022.12.0 | 2023.6.0 | 2023.6.0 |
xarray-einstats | 0.5.1 | 0.5.1 | 0.5.1 |
xcb-util | n/a | n/a | 0.4.0 |
xcb-util-image | n/a | n/a | 0.4.0 |
xcb-util-keysyms | n/a | n/a | 0.4.0 |
xcb-util-renderutil | n/a | n/a | 0.3.9 |
xcb-util-wm | n/a | n/a | 0.4.1 |
xkeyboard-config | n/a | n/a | 2.38 |
xlrd | 2.0.1 | 2.0.1 | 2.0.1 |
xlsxwriter | 3.1.2 | 3.1.2 | 3.1.2 |
xlwt | 1.3.0 | 1.3.0 | 1.3.0 |
xmlrunner | 1.7.7 | 1.7.7 | 1.7.7 |
xmltodict | 0.13.0 | 0.13.0 | 0.13.0 |
xopen | 1.7.0 | 1.7.0 | 1.7.0 |
xorg-damageproto | 1.2.1 | 1.2.1 | 1.2.1 |
xorg-fixesproto | 5.0 | 5.0 | 5.0 |
xorg-glproto | 1.4.17 | 1.4.17 | 1.4.17 |
xorg-inputproto | 2.3.2 | 2.3.2 | 2.3.2 |
xorg-kbproto | 1.0.7 | 1.0.7 | 1.0.7 |
xorg-libice | 1.0.10 | 1.0.10 | 1.0.10 |
xorg-libsm | 1.2.3 | 1.2.3 | 1.2.3 |
xorg-libx11 | 1.8.4 | 1.8.4 | 1.8.4 |
xorg-libxau | 1.0.11 | 1.0.11 | 1.0.11 |
xorg-libxdamage | 1.1.5 | 1.1.5 | 1.1.5 |
xorg-libxdmcp | 1.1.3 | 1.1.3 | 1.1.3 |
xorg-libxext | 1.3.4 | 1.3.4 | 1.3.4 |
xorg-libxfixes | 5.0.3 | 5.0.3 | 5.0.3 |
xorg-libxi | 1.7.10 | 1.7.10 | 1.7.10 |
xorg-libxrandr | 1.5.2 | 1.5.2 | 1.5.2 |
xorg-libxrender | 0.9.10 | 0.9.10 | 0.9.10 |
xorg-libxt | 1.3.0 | 1.3.0 | 1.3.0 |
xorg-randrproto | 1.5.0 | 1.5.0 | 1.5.0 |
xorg-renderproto | 0.11.1 | 0.11.1 | 0.11.1 |
xorg-util-macros | 1.19.3 | 1.19.3 | 1.19.3 |
xorg-xextproto | 7.3.0 | 7.3.0 | 7.3.0 |
xorg-xf86vidmodeproto | 2.3.1 | 2.3.1 | 2.3.1 |
xorg-xproto | 7.0.31 | 7.0.31 | 7.0.31 |
xyzservices | n/a | n/a | 2023.5.0 |
xz | 5.2.6 | 5.2.6 | 5.2.6 |
yaml | 0.2.5 | 0.2.5 | 0.2.5 |
yaml-cpp | 0.7.0 | 0.7.0 | 0.7.0 |
yapf | 0.33.0 | 0.33.0 | 0.33.0 |
yarl | 1.9.2 | 1.9.2 | 1.9.2 |
yte | 1.5.1 | 1.5.1 | 1.5.1 |
zeromq | 4.3.4 | 4.3.4 | 4.3.4 |
zfp | 1.0.0 | 1.0.0 | 1.0.0 |
zict | 3.0.0 | 3.0.0 | 3.0.0 |
zipp | 3.15.0 | 3.15.0 | 3.15.0 |
zlib | 1.2.13 | 1.2.13 | 1.2.13 |
zlib-ng | 2.0.7 | 2.0.7 | 2.0.7 |
zope.event | 5.0 | 5.0 | 5.0 |
zope.interface | 6.0 | 6.0 | 6.0 |
zstandard | 0.19.0 | 0.19.0 | 0.19.0 |
zstd | 1.5.2 | 1.5.2 | 1.5.2 |
Some common issues with using multiprocessing on biowulf were already pointed
out in the common pitfalls section. Beyond those multiprocessing
can be made more robust by setting workers up to ignore the SIGINT signal
so that a multiprocessing script can be terminated cleanly with scancel
or Ctrl-C
. The following script also makes sure to correctly detect
the number of available CPUs in batch jobs:
#! /usr/bin/env python from multiprocessing import Pool import signal import os def init_worker(): """ This is necessary to be able to interrupt the script with CTRL-C (or scancel for that matter). It makes sure that the workers ignore SIGINT so that any SIGINT sent goes to the master process """ signal.signal(signal.SIGINT, signal.SIG_IGN) def worker(i): return i*i if __name__ == '__main__': # the the number of allocated cpus (or 2 if not run as a slurm job) nproc = int(os.environ.get("SLURM_CPUS_PER_TASK", "2")) print("Running on %d CPUs" % nproc) # set up 50 tasks tasks = range(0, 100) p = Pool(nproc, init_worker) try: # run the processing pool results = p.map(worker, tasks) except (KeyboardInterrupt, SystemExit): p.terminate() p.join() sys.exit(1) else: p.close() p.join() # result summary print("\n".join("%d * %d = %d" % (a, a, b) for a, b in zip(tasks, results)))
It is also important to benchmark scaling of your code. Many algorithms won't scale well beyond a certain number of parallel multiprocessing workers which can lead to very inefficient resource usage (e.g. allocating 56 CPUs when parallel efficiency drops below 50% at 24 CPUs).
In order to use the rpy2 package on
biowulf it is necessary to load a separate rpy2
module which
allows the package to find the correct R installation.
[user@cn3444 ~]$ module load python/3.7 rpy2 Python 3.7.5 (default, Oct 25 2019, 15:51:11) [GCC 7.3.0] :: Anaconda, Inc. on linux Type "help", "copyright", "credits" or "license" for more information. >>> import rpy2 >>> import rpy2.robjects as robjects >>> pi = robjects.r['pi'] >>> pi[0] 3.141592653589793
Ray is a framework for distributed computing. It accomplishes this by
Ray can be used to parallelize work within a single cluster in which case it is run as a standard single node job. To run a ray cluster on biowulf and parallelize across several nodes, multinode jobs with one task per node are used. The tasks don't have to be exclusive but for real world use they often will be. If you allocate the nodes exclusively make sure to also allocate all resources available on the node.
An example script you can use to configure your own ray workloads is available on GitHub.
[user@biowulf ~]$ git clone https://github.com/NIH-HPC/biowulf_ray.git [user@biowulf ~]$ sbatch submit-ray
Note: ray, like many other tools, will by default try to use all resources on a node even if they were not all allocated to ray. The sample script above specifically specifies resources to the workers and the cluster head process. Similarly, if you use `ray.init` in, for example, a single node job make sure to specify the number of cpus, gpus, and the memory
Spyder is a Python IDE focused on scientific python. It has the ability to connect to a remote spyder kernel running on a compute node using ssh tunnels. Currently the setup is not the most convenient but this may improve in the future.
Create an sinteractive session with the resources you need and 5 tunnels
[user@biowulf ~]$ sinteractive -TTTTT --mem=12g --cpus-per-task=2 salloc: Pending job allocation 9569310 salloc: job 9569310 queued and waiting for resources salloc: job 9569310 has been allocated resources salloc: Granted job allocation 9569310 salloc: Waiting for resource configuration salloc: Nodes cn4270 are ready for job srun: error: x11: no local DISPLAY defined, skipping error: unable to open file /tmp/slurm-spank-x11.9569310.0 slurmstepd: error: x11: unable to read DISPLAY value Created 5 generic SSH tunnel(s) from this compute node to biowulf for your use at port numbers defined in the $PORTn ($PORT1, ...) environment variables. Please create a SSH tunnel from your workstation to these ports on biowulf. On Linux/MacOS, open a terminal and run: ssh -L 41699:localhost:41699 -L 40387:localhost:40387 -L 42289:localhost:42289 [...snip...] For Windows instructions, see https://hpc.nih.gov/docs/tunneling [user@cne444]$
Follow our tunneling instructions to create the tunnels from your local to biowulf. Then start a spyder kernel in the sinteractive session. In the example below we are using one of the general purpose python modules but you can also install the spyder kernel module into your own environment
[user@cn4270]$ module load python/3.10 [user@cn4270]$ spyder_kernel start starting kernel with python '/usr/local/Anaconda/envs/py3.10/bin/python' - please hold on ---------------------------------------------------- spyder kernel started successfully ---------------------------------------------------- Kernel connection file copied to '~/kernel-652313.json' for convenience You can use this file via hpcdrive to establish a connection to this kernel using a remote kernel with host biowulf.nih.gov Delete the kernel file when you are done [user@cn4270]$ spyder_kernel status spyder kernel state file exits spyder kernel is running
The spyder_kernel
helper copies a connection file to your
home directory. In the example above ~/kernel-652313.json
. You can
use this file to connect with your locally installed Spyder to the running
kernel by either copying the file to your system or mounting your home directory
as a hpcdrive. In the example below
I am using the connection file directly via hpcdrive:
Since we are forwarding all the required ports it isn't necessary to check
the 'remote connection' box. Alternatively you can skip setting up the local
tunnels with the command generated by sinteractive
and
instead provide your login credentials in the remote kernel section of the dialog.
Once the connection has been established verify
that you are on a compute node
Stop the kernel when you are done by running exit()
in the
spyder session or exit from the sinteractive session with
[user@cn4270]$ spyder_kernel stop spyder kernel has been stopped