While there are many software applications installed from RPM packages, many commonly used packages, and their dependencies, are built from source. See the Argon Software List to view the packages and versions installed. Note that this list does not include all of the dependencies that are installed, which will consist of newer versions than those installed via RPM. Use of these packages is facilitated through the use of environment modules, which will set up the appropriate environment for the application, including loading required dependencies. Some packages like Perl, Ruby, R and Python, are extendable. We build a set of extensions based on commonly used and requested extensions so loading modules for those will load all of the extensions, and dependencies needed for the core package as well as the extensions. The path to the installation of packages in the modules system can be referenced with a variable of the form
PACKAGE is the name of the module in all upper case, after the module has been loaded. Please contact us at email@example.com to discuss your scientific software needs.
Packages that are installed centrally on the HPC system must be compliant with the University of Iowa policy on software licensing. Verifying compliance is part of the process for installing software centrally and can potentially add days to weeks to the deployment time, depending on the complexity of the software agreement. Also, depending on the nature of the license, we may need to get more information from you. The compliance verification process is described below with the hope that it will give you an idea of what to expect. Generally speaking, we will handle the initiation of the review process but may need to gather more information from the requester to complete the process. The exception is for software that was purchased by a college or department. In this case the collegiate or department IT staff are generally the best people to drive the review process.
For open source software there are several licenses that have already been approved for deployment on University computers. See Open Source Licensing - Technology Review | Information Technology Services for the list. If the software package is licensed under one of those licenses then the software is already compliant. No further action is needed and deployment of the package can proceed once the mechanics of distributing it are worked out.
If the software is not licensed under one of the approved licenses then it will need to go through the review process, even if it is freely available. Information on the process can be found at Technology Reviews Information | Information Technology Services. There is a form that can be filled out to initiate the review process, Technology Review Process | Information Technology Services. In this case, it is usually just a matter of a review to make sure there are no clauses in the license that may be problematic. In some cases this may require access restrictions. An example of this would be software that requires registration to download and use. Registration may be required for the project's own metrics or perhaps to verify an academic affiliation if there is an academic/educational use version of the license.
These tend to be the most complex and therefore take the longest. The agreement that was signed at purchase will need to be provided for review. Software in this category almost always requires a defined scheme of access control before deployment is approved by the University General Counsel.
It is possible that the software has already been reviewed at the time of purchase and is on the reviewed and approved list prior to the request for installation on an HPC system. This can be checked on the List of Reviewed Agreements | Information Technology Services. However, even if a software title is on that list we still need to verify that the license allows it to be installed on an HPC cluster system. There are many cases where a product is licensed, and on the reviewed list, for an individual or group to use on a limited set of machines, but cluster systems may be excluded. At this point it may just be a matter of determining how access controls will be put in place to satisfy the language of the license agreement but that needs to be approved by the University of Iowa General Counsel.
Once the software package has been reviewed and authorized for deployment on a cluster, possibly with an access control scheme, the software can then be deployed centrally on the HPC system. While we can usually work on the mechanics of the deployment in parallel with the review process please plan accordingly for all of the steps to be completed.