Last summer, we introduced CIQ Fuzzball, a modern computing platform for PIC (Performance-Intensive Computing), that simplifies the development and execution of complex HPC (High Performance Computing) and AI/ML (artificial intelligence/machine learning) workloads. Fuzzball provides scientists and researchers a powerful API (Application Programming Interface) to automate the provisioning and management of the necessary infrastructure to run their workloads and includes a graphical environment to not only interface with the system, but also develop these workflows.

Often, however, virtual resources and physical infrastructure will span availability through zones, regions, geographies and even clouds. While Kubernetes and traditional HPC clusters are effective for many workloads, these hybrid infrastructure requirements present massive challenges for both compute and data in these complex deployments.
At Supercomputing 2024, we will provide a first-look demo of Fuzzball Federate, where we’ll show off transparent unification of discrete Fuzzball clusters into a single, virtual resource. This enables workflows to land where it makes the most sense, including finding the right GPUs, balancing the cost of compute and data movement, and, lastly, management of the data.
Ultimately, Federate makes it possible for users to focus on what they do best, and not have to think about if they should run on a particular system or cloud. With Federate, you can now connect on-prem clusters with your AWS clusters into a hybrid computing environment. So, for more complex HPC and AI/ML workloads, you no longer need a PhD in infrastructure to define, deploy, and execute these important jobs.
Fuzzball: Substrate, Orchestrate, and Federate!
Historically, the infrastructure management layer of Fuzzball has two main components. Substrate delivers a custom container runtime and per-node resource manager, and Orchestrate manages and schedules complex, multi-step workloads as well as the data necessary to run these workflows.

These two components form the basis of an Orchestrate Cluster and have helped our customers deploy Fuzzball in the cloud and on-prem.
With this release, we introduce the third component, Federate, which unifies Orchestrate Clusters, providing seamless access of compute resources across on-prem clusters and cloud computing regions.
In a federated Fuzzball environment, users define and submit workflows with the same web UI and command-line interface as they would use in a single Orchestrate deployment. However, where workflows submitted directly to an Orchestrate Cluster will run only on the resources available to that cluster, workflows submitted to a Federate Cluster may run on any of the Orchestrate Clusters joined to the federation. These Orchestrate Clusters may be dynamically-provisioned cloud resources (e.g., running compute jobs on AWS EC2) or local “on-prem” compute clusters.
Federate evaluates the CPU, memory, accelerator, and storage requirements of the workflow against the resources available in each attached Orchestrate Cluster and dispatches the workflow to an appropriate cluster for execution. The Orchestrate Cluster then provisions the necessary resources (in cloud environments) and dispatches individual compute jobs via Substrate.
Standalone deployments of Orchestrate are still supported, of course; and these deployments can be joined with additional clusters in a federation at any time.

