Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Ares is using Slurm resource manager, jobs should be submitted to the following partitions:

NameTimelimit

Resource type

(account suffix)

Access requirementsDescription
plgrid72h-cpuGenerally available.Standard partition.
plgrid-testing1h-cpuGenerally available.High priority, testing jobs, limited to 3 running jobs.
plgrid-now12h-cpuGenerally available.The highest priority, interactive jobs, limited to 1 running job.
plgrid-long168h-cpuRequires a grant with a maximum job runtime of 168h.Used for jobs with extended runtime.
plgrid-bigmem72h-cpu-bigmemRequires a grant with CPU-BIGMEM resources.Resources used for jobs requiring an extended amount of memory.
plgrid-gpu-v10048h-gpuRequires a grant with GPGPU resources.GPU partition.

Accounts and computing grants

Ares uses a new naming scheme of naming accounts for CPU and GPU computing accounts, which are supplied by the -A parameter in sbatch command. Before, the account name was the same as the grant name. Currently, plain CPU accounts are named in the following manner:

Resourceaccount name
CPUgrantname-cpu
CPU bigmem nodesgrantname-cpu-bigmem
GPUgrantname-gpu

grants. CPU-only grants are named: grantname-cpu, while GPU accounts use grantname-gpu suffix. Please mind that sbatch -A grantname won't work on its own. You need to add the -cpu or , -cpu-bigmem, or -gpu suffix! Available computing grants, with respective account names (allocations), can be viewed by using the hpc-grants command.

Resource allocated on Ares doesn't use normalization, which was used on Prometheus and previous clusters. 1 hour of CPU time equals 1 hour spent on a computing core , similar to GPU time. Resources used to calculate account billing include CPUs, memory, and GPUs. This system was put in place, so accounting would better reflect the resource usage of jobs with various resource configurations. Jobs on CPU partitions are always billed in CPU hours, while jobs on GPU partitions are always billed in GPU hours. If your job uses the default amount of memory per core, or less, then the job is billed simply for the time spent using CPUs. The billing system accounts for jobs where more memory was used than the default value. If the job uses more memory for each allocated CPU than the proportional amount (consult the table above), then the job will be billed as it would use have used more CPUs. Jobs on CPU partitions are always billed in CPU hours. The amount billed can be calculated by dividing the memory used by the proportional memory per core.

The same principle applies was applied to GPUsGPU resources, where a GPU has the respective amount of the GPU-hour is a billing unit, while there are default values for memory per GPU and CPUs per GPU (consult the table above).

For example, for a typical CPU job if it uses the default amount of memory per core, or less, then the job is billed simply for the time spent using CPUs. If the job used more memory than the default amount, the cost . The cost of running a job can be expressed as a simple algorithm for CPUs:

Code Block
cost_cpu    = cpus_used * job_duration
cost_memory = memory_used/memory_per_cpu * job_duration
final_cost  = max(cost_cpu, cost_memory)

and for GPUsand for GPUs, where a GPU has the respective amount of memory per GPU and CPUs per GPU, respectively:

Code Block
cost_gpu    = gpus_used * job_duration
cost_cpu    = cpus_used/cpus_per_gpu * job_duration
cost_memory = memory_used/memory_per_gpu * job_duration
final_cost  = max(cost_gpu, cost_cpu, cost_memory)

...