Cluster Hyper-Grid Scheduling (PSTS)
- Cluster Hyper-Grid Scheduling (PSTS) is a dynamic, adaptive algorithm that maps cluster nodes onto k-dimensional hyper-grids for efficient task scheduling and load balancing.
- It employs exclusive parallel prefix-scan operations to redistribute workloads in-place, achieving near-perfect load balance while minimizing makespan.
- The algorithm optimizes scheduling cost by leveraging recursive, logarithmic-depth computation, making it scalable for heterogeneous and dynamically evolving clusters.
Cluster Hyper-Grid Scheduling (PSTS), also referred to as Positional Scan Task Scheduling, is a dynamic, nonpreemptive, and adaptive algorithm designed for efficient task scheduling and load balancing in cluster computing environments. Rooted in the divide and conquer paradigm, PSTS leverages a recursive mapping of the physical cluster onto k-dimensional hyper-grids, applying parallel prefix-scan primitives for in-place, scalable redistribution of workloads. This approach aims to equalize the task load assigned to each node proportional to its relative processing capacity, thereby minimizing makespan and enhancing throughput in heterogeneous and dynamically evolving clusters (Savvas et al., 2019).
1. Formal Model and Hyper-Grid Construction
A computational cluster is modeled as an undirected graph , with representing processing nodes and the set of bidirectional network links. Each node is characterized by its processing power and normalized power share . Tasks are given as , each defined by its computational weight and packet communication size . The overall work to be distributed is .
The k-dimensional hyper-grid, , is constructed as the direct Cartesian product of linear arrays of sizes . Cluster nodes are bijectively mapped to grid cells (hyper-nodes), padding with virtual nodes to account for unused grid positions if necessary. Each real node belongs to different sub-grids (one along each dimension), supporting multidimensional partitioning and balancing.
2. Scheduling Objectives and Prefix-Scan Mechanism
The principal objective is to rebalance tasks so that every node ultimately receives a load , minimizing the makespan given the constraints and .
The central operation underpinning the balancing is the exclusive parallel prefix-scan (Scan), defined for an array by
Utilized on linear array topologies, Scan executes in time, requiring $2(n-1)$ communication and local computation steps. This primitive facilitates efficient range-summation and partitioning of workloads along each grid dimension.
3. Recursive PSTS Algorithm and Pseudocode
At each recursion level (from $1$ to ), PSTS performs the following in parallel for every -D sub-grid:
- Computes exclusive prefix-scans of total work and normalized power along the current dimension, yielding (loads) and (normalized powers).
- The terminal node in each sub-grid broadcasts total load and power, as well as the scan results, to its sub-grid peers.
- Each sub-grid determines its target load fraction for perfect balance: .
- Sub-grids labeled as "senders" (with surplus load) compact their excess workloads using PSLB, then migrate indivisible tasks to designated "receiver" sub-grids, partitioned via scan indices.
- "Receiver" sub-grids rebalance tasks locally via 1-D PSLB. When all required migrations and intra-sub-grid rebalancing are complete, the process recurses to the next dimension.
The process results in near-perfect proportional load balancing subject to the indivisibility of tasks.
PSTS Pseudocode (abridged):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Algorithm PSTS(G_k, T):
r ← 1
while r ≤ k do
For each r–D sub-grid Q in parallel:
Compute L_r[i] = total work in line i (i=1…p_r)
Compute Y_r[i] = total normalized power in line i
S_r = Scan(L_r); A_r = Scan(Y_r)
W_Q = sum_i L_r[i]; P_Q = sum_i Y_r[i]
Broadcast W_Q, P_Q, S_r, A_r
target_r[i] = A_r[i]·W_Q
if W_Q < sum(target_r): // receiver
Invoke 1–D PSLB on each line
else: // sender
Use PSLB to pack excess
Partition and migrate tasks by A_r
1–D PSLB on residual lines
r ← r + 1
Return new assignments |
4. Hyper-Grid Dimension Optimization and Complexity
Hyper-grid dimension critically impacts the parallelism and efficiency of PSTS. Given , the per-level message and computation costs are and where , is per-message cost, and is per-local-computation cost. The total scheduling cost sums over all levels:
Optimizing yields and the optimal choice is , attaining , contrasting starkly with the cost of naïve 1-D scheduling. This logarithmic depth underpins PSTS's scalability on large clusters (Savvas et al., 2019).
5. Performance, Overhead, and Crossover Thresholds
Simulations on clusters of heterogeneous nodes (Sun UltraSPARC IIi and PC) with randomly-sized tasks (work and communication) evaluated overhead scalability, makespan speedup, and balancing thresholds. Key results:
- For , overhead grows nearly linearly with (from 50 at to 1,200 at ).
- For , overhead is reduced to peaks of 200 at with or $5$.
- PSTS yields up to makespan improvement under moderate imbalance.
- The critical crossover imbalance threshold drops as dimension increases, as shown:
| Number of nodes | (d=1) | (d logN) |
|---|---|---|
| 16 | 1.20 | 1.02 |
| 32 | 1.15 | 1.01 |
| 64 | 1.10 | 1.00 |
Empirically, PSTS can be triggered for imbalances as low as , depending on grid dimension, enabling balancing for even modest workload skews.
6. Comparative Assessment and Applicability
Cluster Hyper-Grid Scheduling exhibits several salient strengths:
- Parallel, recursive divide and conquer design achieves communication and computation depth.
- Locality-preserving: tasks nearby in the index space remain close, reducing communication overhead for localized workloads.
- Adopts a mixed centralized/decentralized control structure, ensuring resilience to bottlenecks.
- Adaptive activation, with low imbalance thresholds, allows dynamic reaction to workload fluctuations.
Limitations include the requisite for explicit hyper-grid embedding, making irregular topologies more cumbersome (necessitating virtual node/link padding), and the assumption of independent, migratable tasks (Bag-of-Tasks model). Task precedence constraints and costly migrations for fine-grained tasks are not directly supported; threshold tuning is required to mitigate overhead in such cases.
PSTS contrasts with static heuristics (which require foreknowledge and are non-adaptive), diffusion and work-stealing methods (which mix slower, ), and 1-D PSLB (which scales linearly and lacks parallelism). It is particularly well-suited for dynamic, heterogeneous, and scalable cluster environments where nodes may join or exit, and workloads are highly irregular (Savvas et al., 2019).