Growing data volumes, new computing paradigms, and increasing hardware heterogeneity are driving the need to execute code on diverse distributed computing resources, many of which are outside the bounds of the researcher's institution. This need may be driven by (a) the desire to compute closer to data acquisition sources, (b) exploit specialized computing resources such as hardware accelerators, (c) provide real-time processing of data, (d) reduce energy consumption (e.g., by matching workload with hardware), and (e) scale simulations beyond the limits of a single computer.
Globus Compute addresses these needs by delivering a hybrid cloud platform implementing the Function-as-a-Service (FaaS) paradigm. Researchers first register their desired function with a cloud-hosted service, they can then request invocation of that function with arbitrary input arguments to be executed on remote cyberinfrastructure. Globus Compute manages the reliable and secure execution of the function, provisioning resources, staging function code and inputs, managing safe and secure execution (optionally using containers), monitoring execution, and asynchronously returning results to users via the cloud platform.
This tutorial will describe use cases for FaaS in science and demonstrate how Globus Compute can provide a common interface and approach for portable execution across different systems. Attendees will experiment with Globus Compute on virtual machines and learn how to deploy Globus Compute on their HPC cluster or other advanced computing system.