Python is a high-level, multi-paradigm programming language that is both easy to learn and useful in a wide variety of applications. Python has a large standard library as well as a large number of third-party extensions, most of which are completely free and open source.
Availability and Restrictions
Versions
Python is available on Pitzer and Owens Clusters. The versions currently available at OSC are:
Version | Owens | Pitzer | Ascend | Notes |
---|---|---|---|---|
2.7 | X | |||
3.5 | X | |||
3.6 | X | |||
2.7-conda5.2 | X | X | Anaconda 5.2 with Python 2.7 | |
3.6-conda5.2 | X* | X* | Anaconda 5.2 with Python 3.6 | |
3.7-2019.10 |
X | X | Anaconda 2019.10 with Python 3.7 | |
3.9-2022.05 | X | X | Anaconda 2022.05 with Python 3.9 | |
3.9 | X* |
You can use module spider python
to view available modules for a given machine. Feel free to contact OSC Help if you need other versions for your work.
Access
Python is available for use by all OSC users.
Publisher/Vendor/Repository and License Type
Python Software Foundation, Open source
Usage
Usage on Owens
Set-up
module load python
. To select a particular software version, use module load python/version
. For example, use module load python/3.5
to load the latest version of Python 3.5. After the module is loaded, you can run the interpreter by using the command python
. To unload the latest version of Python 3.5 module, use the command module unload python/3.5
. Installed Modules
We have installed a number of Python packages and tuned them for optimal performance on our systems. When using the Anaconda distributions of python you can run conda list
to view the installed packages.
- Due to architecture differences between our supercomputers, we recommend NOT installing your own packages in
~/.local
. Instead, you should install them in some other directory and set$PYTHONPATH
in your default environment. For more information about installing your own Python modules, please see our HOWTO.
Batch Usage
When you log into owens.osc.edu you are actually logged into a linux box referred to as the login node. To gain access to the mutiple processors in the computing environment, you must submit your job to the batch system for execution. Batch jobs can request mutiple nodes/cores and compute time up to the limits of the OSC systems. Refer to Queues and Reservations and Batch Limit Rules for more info.
Interactive Batch Session
For an interactive batch session one can run the following command:
sinteractive -A <project-account> -N 2 -n 28 -t 01:00:00which requests two nodes with 28 cores (
-N 1 -n 28
), for a walltime of 20 minutes (-t 00:20:00
). You may adjust the numbers per your need.Usage on Pitzer
Set-up
module load python
. Installed Modules
We have installed a number of Python packages and tuned them for optimal performance on our systems. When Python module is loaded, executing module help python
will help you view the current list of packages available.
- numpy and scipy have been compiled to use MKL for best performance
- Due to architecture differences between our supercomputers, we recommend NOT installing your own packages in
~/.local
. Instead, you should install them in some other directory and set$PYTHONPATH
in your default environment. For more information about installing your own Python modules, please see our HOWTO.
Known Issues
Incorrect MPI launcher and compiler wrappers with Conda environments
Versions Affected: Python 2.7, 3.6 & Conda 5.2
python/2.7-conda5.2
and python/3.6-conda5.2
. If users experience these issues, please re-load MPI module, e.g. module load mvapich2
after setting up your Conda environment.Further reading
Extensive documentation of the Python programming language and software downloads can be found at the Official Python Website.