Python

Python is a scripting language, filling a similar role to Perl or other scripting languages.

We anticipate that users will use Python to do preparation and post-processing for their jobs. Like all interpreted languages, Python does not perform as well for High-performance computing as a compiled language like C or Fortran. This is not to say that Python is bad, but rather we do not recommend that users use it for a major component of their HPC jobs. Instead, we recommend using it for preparation, post-processing, and even proof-of-concept work for defining algorithms.

What versions are on the supercomputer?

The supercomputers currently (as of March 2011), provide Python 2.4.3, and Python 2.6.5. To start version 2.4.3, simply use the python name for an interactive session, or use #!/usr/bin/python on the first line of a standalone script. Similarly, to launch Python 2.6.5, either use python26 for an interactive session, or #!/usr/bin/python26 on the first line of a standalone script.

What about the version in /fslapps?

Some time ago, we did have a version of Python in /fslapps. It had some problems, so we do not recommend using it. Similarly, we do not recommend using the /fslapps/lib based python libraries either. Instead, simply call the appropriate version, as described above, and let it load them from the default locations.

I need a library that's not installed? What do I do?

Like most programming languages, Python can be extended by the use of libraries and/or modules. If you need to install a library that you anticipate being the only user of, we recommend that it be installed in your own directory somewhere. If it's a library that a large set of users will use, or it requires some specialized compiling, feel free to open a support ticket.