Compute Allocation Guidelines

 

Overview 

The CRC offers University of Pittsburgh faculty members / Principal Investigators (PIs) allocations compute resources on the clusters to enable their computational research. These allocations are commonly and somewhat interchangeably referred to as a "resource allocation", "faculty allocation", or "Slurm allocation" and consist of some number of service units (SUs) to be used on each cluster when submitting jobs to the workload manager.

New faculty members (or those without an existing allocation) should refer to the getting started section to request an initial "One-time Startup allocation" of 50,000 SUs on each cluster, with a 1 year duration. 

After this initial allocation is used or expires, existing faculty account owners (or a Delegate on their allocation) must submit a Resource Allocation Request to recieve SUs for another year.

 

Why require Allocation Requests and a review process?

The Slurm workload manager does account for per-job use of the cluster resources (CPUs, GPUs, Memory, etc.), both within and across research groups, and provides mechanism for regulating the fair availability of those resources to all users.

It does not provide a way to track higher level information about a research group's projects and research products that the individual jobs ultimately contribute towards, or a means of identifing funding sources and acknowledgements.

We primarily use this process to gather these details that are critical to developing the CRC's annual report (and more general reports to Pitt's research administration).

An important, albeit secondary, role of the review process is to facillitate discussion between the CRC team and PI's about their projected use of the resources, and to ensure that some benchmarking has been done on the behalf of requestors to justify that their job configuration is efficient.    

 

General Policies

Before getting into detail about the types of allocations, here are some general policies across all allocations:

  1. Resource Allocations must be associated with a Faculty/PI user account and Pitt ID. Requests for One-time startup allocations must come directly from this user.
  2. This faculty account owner's approval is required if requests for changes to their allocation are not submitted specifically by them. The only exception to this is if the submitter has been designated as a Delegate by the account owner.  
  3. It is up to the PI and the users on their allocation to internally manage how much of the allocation is used by whom and for which project.
  4. Service units added to an allocation expire 12 months after they are awarded, and unused SUs do not carry over to the next allocation period.

 

Types of Allocations

One-time Startup Allocations

Startup Allocations consist of 50,000 Service Units per cluster, and should be used to establish and benchmark a research workflow on the CRC's system.

You can request one with this form.

Only one Startup allocation is allowed per Faculty Member/PI account!

When startup allocations are exhausted or the expiration date has passed, PIs will need to submit a Resource Allocation Request requesting more units, along with a filled out template file (guidelines below).

It is recommended that you preemptively submit a Resource Allocation Request to replace your Standard Allocation before it's expiration date.

Resource Allocations (All other allocations)

Allotments of service units after the Startup Allocation's 50,000 are catergorized as "Resource Allocations", and can be requested via this webform

Resource Allocation requests can be submitted at any time and a require the filled template file (guidelines below) attached justifying the expected usage of the service units requested. 

If an awarded Resource Allocation is exhausted before the 12 month duration ends, PI's should submit a new request with demonstration of good progress and a justification for the need of additional resources.

 

    Preparing your Resource Allocation Request: Benchmarking your jobs

    The intention of the one-time startup allocation is to benchmark the computational demands of your project(s) for 1 year. This is the best way to determine which hardware you will need to request service units on. Review the available compute resources described on this page when running benchmark jobs, and relate the performance to different hardware profiles.

    Starting your request having already answered questions like the ones below and relating them to the choices in your request is the best way to make writing your justification quick and easy: 

    Slurm Parameters

    • Do you intend to use a specifc cluster, or partition on a cluster? Why?
    • Will you have many small jobs, or large, long running jobs?
    • Which QOS is best given the needs of your job? Will you perform checkpointing of any kind?
    • Do you jobs have intensive Memory demands? 
    • Will your jobs perform substantial file I/O?

    Software Configuration

    • Is GPU acceleration relevant to your computational methods? Can the software you use be compiled to software leverage GPU acceleration?
    • Can scripts you've written or even your entire workflow be parallelized? Are they shared or distributed memory parallel?

    Cluster Specific Details

    • MPI: Can you demonstrate performance differences between smaller/larger core counts?
    • GPU: Do your benchmarks compare GPU accelerated computation to running on CPUs?

     

    Preparing your Resource Allocation Request: Filling out the Template File

     

    Blank Template File

    Template Instructions

    Filled Example: CRC Resource Allocation Request Example - Chemical Engineering

     

    Submit your request via the webform

    When your filled template file is ready, you can navigate to the webform and attach it for submission. Fill the rest of the form, providing your short research summary in the Project description section. The information from your submission will be presented to various members of the CRC team for review, and either awarded or sent back to you with comments for revision. You will receive notification of this status update via the ticket created upon submission.

     

    Acknowledging CRC Resources and Assistance

    If your Resource Allocation is awarded, please acknowledge CRC support and your publications. 

    All research products (publications, conference proceedings, and presentations) resulting from an allocation of computing time or storage on the HTC cluster should include the following acknowledgement:

    "This research was supported in part by the University of Pittsburgh Center for Research Computing through the resources provided. Specifically, this work used the HTC cluster, which is supported by NIH award number S10OD028483."

    All research products (publications, conference proceedings, and presentations) resulting from an allocation of computing time or storage on the H2P cluster should include an acknowledgement:

    "This research was supported in part by the University of Pittsburgh Center for Research Computing through the resources provided. Specifically, this work used the H2P cluster, which is supported by NSF award number OAC-2117681."

    You are free to also acknowledge or thank individual members of the CRC team.

     

    FAQs

    Q: I am teaching a course with hands-on and compute-intensive curriculum. Can I recieve an allocation of CRC resources for my students?

    A: Yes, requests for course resources can be made through this form.

    Q: Can I specify when I want an allocation to start?

    A: Yes, so long as the review process will be done by that date (can take up to 4 weeks after you submit the webform). The default start date for allocations is when they are approved.

    Q: Do unused service units carry over between my allocation requests if I have leftovers upon expiration? 

    A: No, the service unit amounts that you request in your new resource allocation requet will overwrite the existing values. 

    Q: The demands of my jobs on one cluster were higher than expected, can I transfer/convert SUs from one cluster to another?
    A: We do not currently support transferring SUs. Please submit another Resource Allocation Request with the SU amounts that you need.