Scientific Computing Use Cases

Scientific computing use cases describe how researchers access and use computing resources. Each category in this area (high-performance computing, high-throughput computing, cloud computing, and workflows) focuses on a type of computing resource used by researchers and the most common interactions with that resource type.

 

High Performance Computing:

These use cases describe the most common ways in which researchers use high-performance computing (HPC) resources. Each HPC resource is designed, constructed, and operated by a service provider (SP) organization, such as the Pittsburgh Supercomputing Center (PSC) or University of Michigan. An HPC resource may contribute services to one or more public research computing communities, such as XSEDE or Open Science Grid (OSG). 

These use cases focus on the experiences researchers in a given community have with the HPC resources in that community. Using an HPC resource is most often part of a larger research process, so these use cases also mention the community’s website and documentation, registration and account management services, allocation services, and tools to help move code and data into and out of individual HPC resources.

(8 use cases)
Use Case ID Title Use Case Description
HPC-01 Use a single HPC resource for a research project
HPC-02 Use two or more HPC resources for a research project
HPC-03 Use a workflow system to conduct a project on HPC resources
HPC-04 Submit jobs to a discounted job queue where they might be interrupted
HPC-05 Review performance metrics for one’s own use of a community resource
HPC-06 Submit and manage jobs on a community resource using a web-enabled device
HPC-07 Upload, download, and edit files on a community resource using a web-enabled device
HPC-08 Discover batch hardware, configuration, and status information

 

High Throughput Computing:

These use cases describe the most common ways that researchers use high-throughput computing (HTC) resources. Also known as "capacity computing," high-throughput computing allows researchers to run a very large number of modeling, simulation, or data analysis tasks in a short amount of time. The resources required by each task can be small (similar to what one could run on a basic computer) or very large (requiring more active memory or CPU cycles than "normal" computers provide). What makes HTC unique is the fact that many runs of the same application are required to complete a research project. HTC resources allow researchers to complete projects faster than they could if they were limited to the computers available in their own offices, labs, or research institutions.

Each HTC resource is designed, constructed, and operated by a service provider (SP) organization, such as the Pittsburgh Supercomputing Center (PSC) or University of Michigan. An HTC resource may contribute services to one or more public research computing communities, such as XSEDE or Open Science Grid (OSG). These use cases focus on the experiences researchers in a given community have with the HTC resources in that community. Using an HTC resource is most often part of a larger research process, so these use cases also mention the community’s website and documentation, registration and account management services, allocation services, and tools to help move applications and data into and out of individual HPC resources.

(3 use cases)
Use Case ID Title Use Case Description
HTC-01 Run a set of independent jobs on an HTC resource
HTC-02 Run a set of interrelated jobs on an HTC resource
HTC-04 Run a set of interrelated jobs on several HTC resources

 

Infrastructure-as-a-Service:

These use cases describe the ways in which researchers use Infrastructure-as-a-Service (IaaS or "cloud") computing resources. They include: how IaaS services are used by end users, how IaaS services are shared within a research community, and how application and science gateway developers can automate use of IaaS services via APIs.

(11 use cases)
Use Case ID Title Use Case Description
IAAS-01 Request to use an IaaS host for research
IAAS-02 Self-service acquire and use a virtual computer system
IAAS-03 Self-service acquire and use a hosted storage volume
IAAS-04 Request and use a virtual cluster
IAAS-05 Publish a virtual computer system or storage volume
IAAS-06 Discover a relevant computer system or storage volume
IAAS-07 Create an instance of a published computer system or storage volume
IAAS-08 Dynamically acquire and manage hosted computer systems and/or storage volumes
IAAS-09 Reliably acquire and manage hosted computer systems and/or storage volumes
IAAS-10 Add a science gateway operator to an API-enabled IaaS allocation
IAAS-11 Protect a virtual cluster by creating a bastion host

 

Scientific Workflows:

These use cases describe how researchers use workflow tools to automate complex research computing processes. There are at least two motivations for automation: first, to improve research productivity by freeing researchers from time-consuming tasks that can be automated; second, to make the research process reproducible, capturing and recording every step of the process so other researchers can inspect and validate the process behind the researcher’s conclusions.

Research computing processes are extremely diverse. Consequently, there are a variety of workflow tools in use. The public research computing community enables workflow tools by providing APIs for basic computing services, such as: job submission and management, data movement, and resource configuration and status information. Using these APIs, a workflow tool can automate the execution of a research computing process. Another important community function is coordinating the execution environments across resources: making them as similar as possible so individual research jobs can be run on a wider variety of computing resources.

(2 use cases)
Use Case ID Title Use Case Description
SW-01 Automate a project using a workflow manager
SW-03 Share an existing scientific workflow with other researchers