| Version 3 (modified by , 41 hours ago) ( diff ) |
|---|
HPC Workshop Spring 2026
Module 7 of 8 - Job Parallelism (Under construction)
(Content subject to change prior to the workshop)
What is Job Parallelism?
Job parallelism refers to jobs for which 2 or more processing units (or processors or cores) execute the given job's code instructions simultaneously - rather than sequentially.
Your job may need more than one processor to finish in a timely manner - or possibly to finish at all.
Why use a HPC Cluster?
- tasks take too long
- When the task to solve becomes heavy on computations, the operations are typically outsourced from the local laptop or desktop to elsewhere.
- Your computation may execute more efficiently if the code supports multithreading or multiprocessing.
- one server is not enough
- When a single computer can’t handle the required computation or analysis, the work is carried out on larger groups of servers.
Tools for implementing various levels of job parallelism on Cypress
See Module 2 of 8 - Introduction to Multi-processing for more information on tools available on Cypress for creating and preparing your jobs at the various levels of parallelism - programming, single job, and multi-job.
Before you run your job
Before you run your job you should consider the following in order for your job to run most efficiently on Cypress.
Review your software provider's information
Before you run your job, you should review the software provider's information in order to for your job to take the best advantage of the job's requested resources such as the following.
- Hardware requirements, including memory, number of processors, and/or supported or optimal thread count
- Guidelines, best practices, and tips & tricks.
Determination at the job or multi-job level
- If you have data to be processed that is already divided - or can be divided - into separate files that can be processed entirely independent of each other, then you should consider using either a job array or GNU Parallel. For more information, see Running Many Serial/Parallel Jobs.
