- 1 Compute Canada NRAC (National Resource Allocation Competition)
- 2 SHARCNET Continuous Small Dedicated Resources
- 3 How Are Allocations Handled at SHARCNET
- 4 Running Jobs
- 5 Using Project Log
Different problems require differing degrees of computational resources to solve. In order to effectively meet the needs of demanding computational problems SHARCNET participates in a national resource allocation competition on behalf of Compute Canada, as well as operating a continuous competition for short-duration resource allocations throughout the year.
These competitions allow researchers (and their groups) to obtain high-priority job queues on SHARCNET systems so that their jobs start more quickly than regular jobs. It also provides access to storage resources beyond the default limitations (both duration and size).
Compute Canada NRAC (National Resource Allocation Competition)
The Compute Canada NRAC allocation process accepts applications for substantial dedicated resource allocations every September, as well as other specialized allocation rounds throughout the year.
If you have a Compute Canada account please log in to the Compute Canada website and visit your resource applications page for further details.
SHARCNET Continuous Small Dedicated Resources
The SHARCNET Continuous Small Dedicated Resources process accepts applications for substantial resource allocations throughout the year. The process is initiated by contacting a SHARCNET staff member to discuss the computational problem at hand and the suitability of it for the program.
For more information, please refer to the dedicated resources application guidelines for the current (2012) round.
How Are Allocations Handled at SHARCNET
At SHARCNET users' usage and activities are tracked by projects. When a PI signs up an account, a default project is created. This project describes a research project the PI conducts and the computational tasks to be accomplished. For each project there is a project group. The users sponsored by this PI (i.e. the supervisor) belong to this group and have the access to this project, including the project log, usage statistics and updates. Over time, a research group may have different projects. Each of these projects is identified with a number of identifiers, including
- SHARCNET Project ID, e.g. 9999
- Compute Canada project identifier, e.g. abc-123-ab
- SHARCNET user group (LDAP group name), e.g. nrap987
Among these identifiers, the third one has perhaps more meaningful information for users. In the case when there is a resource allocation (See the explanation below), the letter part indicates the type of the resource allocation project:
- nrap - NRAC allocation projects;
- sdr - SHARCNET (continuous) small dedicated resource allocation projects;
- dr - SHARCNET (regional) dedicated resource allocation projects.
The digits refer to a resource allocation application ID, being the Compute Canada NRAC allocation ID or the SHARCNET resource allocation/fellowship application ID.
A user may find his/her project identification in the web portal by going to My Account -> Projects and clicking a project in the project listing. Some information similar to the following should appear on top of the page:
- Project No.: 9999
- Project Identifier: abc-123-ab
- LDAP Group Name: nrap987
At SHARCNET currently every new resource allocation defines a new project.
Resource allocations are associated with projects. A project may have zero to multiple allocations. For example, for a project that has two allocations, one on orca and the other on saw, there will be a same queue and storage (work and scratch) dedicated to the project on each system. The usage for both allocations will be accounted for the same project.
An allocation has time limit. It is only valid for a specified period of time. The dedicated queue and storage will be accessible only within the allocation time.
Project Group and Membership
NRAC and CSDR allocations, also conventionally termed NRAC projects (NRAPs) or SDR projects at SHARCNET, are handled on a per-group basis. Unlike the existing UNIX group of users sponsored by the PI, this is an ad hoc, additional group created only for the dedicated resource allocations. This group includes all users including those sponsored by the PI and those who are sponsored by other PI(s) but participating in the project as well. This extended group defines a new UNIX group for each research project, with the name nrapnnn for NRAC allocations and sdrnnn for SDR allocations, with the number nnn referencing to the application ID, pertinent to the specific dedicated resource allocation, for exclusive access to the dedicated queue and storage.
By default, this extended group includes users sponsored by the group PI. Any additional users who need to be added to the group shall contact us. Such requests can be made by the group PI by submitting a ticket to email@example.com or posting a message to the project log (See below).
For each allocation, a special, high priority queue is created on the designated system for exclusive access by the project group. It grants the project group members the ability to submit high-priority jobs will start before regular jobs. The queue name will be of the following form
- NRAP_nnn for NRAC allocation nnn,
- SDR_nnn or DR_nnn for small DR or DR allocations
where nnn refers to the corresponding application ID.
The size of the queue (both number of jobs and number of concurrent CPU cores or number of GPUs) is specified at the outset of the project based on it's needs.
If a group applied for a storage allocation they will typically be given a new directory for the project on the required filesystem, with any storage quotas and expiry timescales set at the outset of the project based on it's needs.
Each group will have access to
- /work/group on work and
- /scratch/group on scratch
where group, which refers to the ad hoc project group, has the name of
- nrapnnn for NRAC allocation nnn
- sdrnnn or drnnn for small DR or DR allocations with application ID nnn.
The size of the storage of these directories is set to the dedicated storage awarded or the default.
The following are a number of highlighted points that will help you to get started with using the dedicated resources:
1. Using Dedicated Queues To submit a job to the dedicated queue NRAP_123, for example, use the following command
sqsub -q NRAP_123 -r runtime -o output ./yourprog [ yourprog_arg_list ]
where runtime is estimated runtime in the format of [m|h|d], e.g. 50m for 50 minutes, 3.5h for 3.5 hours and 4d for 4 days, etc. Your job will be terminated if the run exceeds the run time estimate. The maximum runtime for each job is seven days. The option -o output specifies the name of the file output that you would like to have all output from standard out to be redirected to. For the details of sqsub options, use command
2. Running Parallel Jobs If you are running parallel jobs, i.e. MPI jobs, use the following command
sqsub -q NRAP_123 -f mpi -n num_cores -r runtime -o output ./yourprog [ yourprog_arg_list ]
Likewise, if you are running threaded jobs, then use the following command
sqsub -q NRAP_123 -f threaded -n num_cores -r runtime -o output ./yourprog [ yourprog_arg_list ]
Note the option -f mpi for MPI jobs or -f threaded jobs MUST be used in conjunction with the dedicated queue.
3. Run Time Limit and Checkpointing Jobs As of January 2013, all dedicated resource allocation project jobs are also subject to the limit of seven day maximum run time on all SHARCNET systems. To prevent unexpected system outage, you should enable check-point in your applications, so your computational time won't be wasted in the event of a system outage.
4. Queue Priority The dedicated queue has a higher priority than regular queues on the designated system, therefore, your jobs submitted to the dedicated queue have a better chance to start faster. It should not be expected, however, that dedicated jobs will be started immediately. It is common that dedicated jobs also have to wait for some time before they get started.
5. Access Privilege Access to the dedicate queue and storage is restricted to the users listed in this project only. It shall not be confused by the access privilege of the user group sponsored by the PI. Access to the dedicated queue and storage is by project, not the user group. For example, a user sponsored by PI but not listed as a project member will NOT have the access to queue and the storage.
6. Fairshare Your usage of dedicated resources will not affect your group fair share for using regular queues. It is important to remember always using the dedicated queue to run your dedicated resource allocation jobs. The progress, usage, and job submission history (in graphs) of your dedicated resource project is monitored and updated hourly.
Using Project Log
Groups can see the projects associated with their NRAC or CSDR allocations in the web portal: My Account -> Projects (here). All communication with SHARCNET concerning your allocation should be conducted through this interface when possible. It also includes information on how well one is progressing towards the completion of their allocation and other supporting information.