Get Started with Alpine

Graduate Students and Faculty:

You must have a valid CSU NetID and Duo two-factor authentication enabled to apply for an account on Alpine through CSU.

To get started, request a CU-Boulder account. Note that you must use DUO to authenticate through this form. In the password field, type your CSU NetID password, then a comma, then the word “push” or the DUO key generated by your device.

For example, if your password was ilovealpine and your DUO key is 123456, you would type:

ilovealpine,push

OR

ilovealpine,123456

You will then be asked to provide information about your account. Be sure to check the box next to “I would like to run high-performance compute jobs on the RMACC Alpine Cluster”. Otherwise, you will not be added to csu-general. This general use allocation is available to all CSU users and allows you to test your workflow on the system before applying for allocation for your project.

Screenshot of Research Account Request Form

After submitting the form, you will receive an account confirmation email from CU-Boulder. At this point, you will be able to log into and run jobs on Alpine. 

Contact rc-help@colorado.edu for support.

About Alpine

This documentation is intended for users of the Alpine High Performance Computer system.  Alpine is a heterogeneous supercomputing cluster based primarily on the AMD EPYC “Milan” CPUs with; HDR InfiniBand; and 25 Gb Ethernet. Alpine is jointly funded by the University of Colorado Boulder, the University of Colorado Anschutz, Colorado State University, and the National Science Foundation (award 2201538).

Alpine is housed at, and operated by, CU IT staff. The emphasis in this material is for new CSU users. Some of the information presented herein is particular to CSU’s environment and some is pertinent to CU’s environment, as Alpine resides on the CU network and behind the CU IT security infrastructure. All user and application support for CSU users are performed by Graduate Research Assistants (GRAs) resident at CSU. CU staff provide all system administration support.

Allocations are approximately on a “use it or lose it” basis monthly, and are somewhat oversubscribed to allow users who need additional resources within a month to use resources available from other users with unused resources in that month.

System Specifications

The Alpine system architecture is comprised of general compute nodes, GPU compute nodes, high-memory compute nodes. For detailed information on the system, see the CU Boulder Research Computing resources page.

Allocations

Allocations of time for high performance computing (HPC) resources are based on Service Units (SU) and CPU core-hours as follows:

1 SU = 1 CPU core-hour (i.e., a single fully utilized CPU core on 1 compute node for 1 hour)

New users:

All new HPC users will be added to the csu-general allocation, which amounts to about 40,000 SU/yr.

Projects:

If users require additional compute resources, they can apply for an allocation using the form below.

The Alpine Management and Allocations Review Committee will review and assess these applications and respond within 3 weeks on the status of the request.

Alpine User Guide

After creating an Alpine account, you can use the different toggles below to help you navigate and use the resources on Alpine. Each toggle gives you step-by-step commands to help you and also details the different resources supported on Alpine. We have also created an Alpine Cheat Sheet as a quick reference guide.

If you can’t find the help you are looking for please email rc2-request@colostate.edu with your queries and we will reach out to you.

  • Remote Login

    Logging into Alpine requires Duo two factor authentication. See IT: Duo Two Factor Authentication for set-up instructions if needed.

    Access to Research Computing resources is available by way of the Secure Shell, or ssh, protocol. Access is provided via a dedicated login node.

    The ssh command can be run from the Linux and OS X command-line:

    ssh csu_NetID@colostate.edu@login.rc.colorado.edu

    where you should replace “csu_NetID” with your NetID.

    When logging in from Windows, we recommend the PuTTY application.

    To log in with the Duo smartphone app:
    When it asks for your password, type in your CSU password, followed by a comma, followed by the word “push”:

    csu_password,push

    Don’t forget the comma!

    The Duo app on your phone will ask you to approve the request.

    Alternatively: you can ask the Duo app to generate a 6-digit code called a Duo key. Use your CSU password, followed by a comma, followed by the 6 digit number generated by your app.

    csu_password,DUO_key

    Don’t forget the comma!

    Note: The DUO_key mentioned above cycles every 15 seconds. If you do not log in within 15 seconds of generating the key, it will expire and you’ll have to generate another key.

    To log in without the smartphone app:

    When it asks for your password, type in your CSU password, followed by a comma, followed by the word “phone”:

    csu_password,phone

    You will receive a call at your registered phone number and will be asked to use the keypad to authenticate.

    If you are having trouble logging in and you suspect Duo is the issue, contact the Division of IT Help Desk at (970) 491-7276 or help@colostate.edu.

    For other questions, emailrc2-request@colostate.edu.

  • File Transfer

    Transferring files to Alpine is typically facilitated by ssh File Transfer (sftp) or Globus. Additional information can be found on the Data Transfer page.

    Globus

    For more information about using Globus, including populating transfer endpoints (such as Research Computing, a local machine, etc.), see the documentation provided by CU Boulder research computing.

    CSU has joined Globus to provide researchers a means to transfer and share data among researchers between institutions. To find out more and start using the system, go to the Globus website and login with your NetID.

    • On the Globus home page select “Log In” at the top right-hand corner
    • Select “Colorado State University” as your organization
    • Select “Continue” to go to the CILogin page
    • Use your NetID and NetID password to log on to CILogin
    • You will land on the Globus File Manager page
    • Click in the “Collection” field, where it says “Start here”

    Follow the prompts from Globus. You may need to install Globus Connect Personal to make your local computer an endpoint. If Globus Connect Personal is already installed, click “Your Collections” to see the endpoints you already have.

    ssh File Transfer

    ssh File transfer (sftp) is recommended for smaller files. A good rule of thumb is that if you’re willing to sit through the file transfer, sftp is a good option. You can use sftp from the command line or other software. The login credentials are the same ones you use to ssh into the login node. Please see the section on remote login for more details.

    Command Line:

    sftp csu_NetID@colostate.edu@login.rc.colorado.edu

    csu_password,push

    OR

    sftp csu_NetID@colostate.edu@login.rc.colorado.edu

    csu_password,DUO_key

    Other sftp clients:

    You can also use other file transfer software like:

    • FileZilla, a multi-protocol, multi-platform file-transfer application
    • WinSCP, a basic SCP/SFTP file-transfer application for Windows

    Generally, the information you need to use this method is as follows:

    • Host: login.rc.colorado.edu
    • Protocol: choose “SFTP – SSH File Transfer Protocol”
    • User and password: the same credentials that you use to ssh into Alpine (see remote login section)

    Note: since Research Computing uses one-time passwords for authentication, you must disable password retention/saving in your file-transfer client if you are using the Duo key authentication method. Failure to do so may cause your account to be temporarily disabled after the client attempts and fails to authenticate repeatedly in the background.

  • Directories

    Alpine users have 3 main directories: Home, Projects and Scratch

    Home directory

    The home directory (/home/csu_NetID@colostate.edu) has 2 GB of storage that is backed up locally into a hidden directory (.snapshot/) at 2 hour, daily, and weekly intervals and to a second site for disaster recovery nightly. Because the home directory is not on high-performance storage, it should not be written to by compute jobs.

    Project directory

    The projects directory (/projects/csu_NetID@colostate.edu) is intended to store software builds and smaller datasets and to share data and software with other users. It has 250 GB of storage that is backed up locally into a hidden directory (.snapshot/) at 6 hour, daily, and weekly intervals and to a second site for disaster recovery nightly. Like the home directory, because projects is not on high-performance storage, it should not be written to by compute jobs.

    Alpine scratch directory

    The Alpine scratch directory (/scratch/alpine/csu_NetID@colostate.edu) is intended for input and output for compute jobs running on Alpine and uses GPFS (General Parallel File System) for fast parallel I/O. Each user is limited to 10 TB of scratch storage and a total of 20 million files and directories. If you need a larger allocation, email rc-help@colostate.edu. Files in the scratch directory are automatically purged 90 days after their creation, are NOT backed up, and may be purged at any time. Transfer your data to the projects directory or to permanent data storage soon after your job completes.

    For more in-depth information, and a table of backup frequencies for each directory, see the CU Boulder RC User Guide topic on Filesystems.

  • Modules

    Alpine uses a module system that allows the installation of multiple versions of common software packages that users can switch between. To use the software, the module must be loaded first. Loading a module will alter aspects of your environment, such as the $PATH variable. Finally, you must be on an Alpine compile node to load modules.

    After logging in on Alpine, type:

    acompile

    to move to a compile node.

    Alpine uses the Lmod environment module system to simplify shell configuration and software application management. See CU Boulder RC Alpine User guide for more information about the module system, including commands for module loading and exploration.

  • Software

    Pre-installed software

    Alpine uses a module system to publish software. See the Lmod documentation to learn how to see which modules are installed and how to load them.

    Installing custom software

    Users should install custom software in the project directory. Users may also take advantage of the module system to publish local module files to configure a running environment for the software. Such a module could be adopted as a centrally supported module if it has wide community use.

    Most custom software should be installed using one of the Alpine compile nodes. These nodes are identical to the general Alpine compute nodes, which is ideal for compiling software to run on the system. Once you are connected to the login node via ssh, you can connect to a compile node by running the following:

    acompile

    Software Compilation

    For information on how to compile your software on Alpine, please see the CU Boulder RC Alpine User Guide.

  • Batch Queues

    SLURM is the batch queuing system used on Alpine. For more information on batch queuing and job scheduling on Alpine, see the CU Boulder Research Computing User Guide.

    For more information about using Alpine, see the CU Boulder Research Computing Tutorial Wiki.

    Note that the CU examples will include information about how they log in to Alpine. Please substitute the information from our Remote login section.