基准模型
dispatchatlas.bench 在求解器或活动消费基准证据之前先定义它。一个基准族声明其分类法、
领域剖面、剖面类、假设、引用证据、规模包络、种子命名空间,以及输出模式。物化用
dispatchatlas.core 验证每个生成的问题,特征化该实例,将其包裹在一个来源信封中,并记录
稳定哈希。
该目录将通用组合-优化调度族与 distributed-computing 调度作为co-equal同侪覆盖,因此该平台 并非一个仅-distributed-computing 工具。
可运行示例: examples/benchmark_continuum.py 即时生成、特征化并编目一个连续统基准图集。
调度族
每个调度族被物化为一个带至少一个生成器剖面的一等目录同侪。下面的目录表由基准生成器注册表 与引用矩阵生成,因此其族总数与来源引用可从行本身计数。表格上方的一张族-分布图展示各族剖面如何分布于各个调度族类别。
Generated from the benchmark generator registry and the citation matrix: 69 family profiles across 8 scheduling families — distributed-computing (47), flow-shop (7), job-shop (6), machine-scheduling (3), open-shop (1), rcpsp (3), rcpsp-max (1), setup-flow-shop (1).
Showing 69 of 69 family profiles.
| Distinctive against | Evidence | Citation status | Source citations | |||
|---|---|---|---|---|---|---|
accelerator-coschedulingaccelerator-coscheduling a heterogeneous datacenter job needs a compute resource and a scarce accelerator at the same time, so every job co-allocates two simultaneous resource demands held together for its whole run; the accelerator pool is scarce, so jobs sharing an accelerator serialize on it while jobs on disjoint resources run in parallel, and the scheduler reasons over a multi-resource co-allocation problem rather than a single-unit-demand one | distributed-computing | ioe-complete | published single-resource continuum schedulers (one unit resource demand per task, not the simultaneous co-allocation of a compute resource and a scarce accelerator held together under a Pareto contract) | smoke | citation-backed |
|
aerial-edgeaerial-edge a loitering UAV is a flying fog node that serves the ground region beneath it for a fixed loiter window before moving to the next pass, so sorties group into successive loiter passes pinned to the fog tier the platform embodies while overhead | distributed-computing | ioe-complete | aerial-edge MEC simulators (no flying-fog loiter placement) | smoke | citation-backed |
|
anytime-inferenceanytime-inference an edge accelerator serves deep-learning inference requests that each complete a mandatory minimal-accuracy early-exit branch and may run an optional refinement to full accuracy when their latency deadline allows; every request declares a mandatory duration below its full duration and a tight latency deadline, and arrivals are spaced shorter than a full inference so requests queue and contend, so the scheduler decides which requests refine and which deliver the early-exit result -- an imprecise-computation quality-versus-timeliness trade-off | distributed-computing | ioe-complete | published edge-cloud split inference and datacenter inference serving (a fixed full-accuracy computation per request), neither of which lets a request drop an optional refinement to meet its deadline so the schedule order trades accuracy for timeliness | smoke | citation-backed |
|
blocking-flow-shopblocking-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
bulk-synchronous-graphbulk-synchronous-graph an iterative graph computation runs as a sequence of supersteps separated by global barriers, so each superstep's vertex partitions compute and exchange messages and every partition of the next superstep waits on all partitions of the prior one; the slowest partition therefore gates each superstep, and the scheduler reasons over a barrier-synchronized partition-balancing problem rather than an overlap-friendly pipeline or an independent-task one | distributed-computing | ioe-complete | published pipeline or independent-task schedulers (an overlap-friendly wavefront or unsynchronized tasks, not supersteps separated by global barriers where the slowest partition gates each round under a Pareto contract) | smoke | citation-backed |
|
carbon-awarecarbon-aware flexible jobs defer to low-carbon-intensity windows under a time-varying grid carbon signal while honoring their SLA deadlines | distributed-computing | ioe-complete | Electricity-Maps grid carbon-intensity and CityLearn carbon-aware community signals | smoke | citation-backed |
|
cloud-independentcloud-edge-independent | distributed-computing | domain-specific | — | smoke | citation-backed |
|
coflow-schedulingcoflow-scheduling a distributed-computing stage completes only when the last network transfer of its coflow lands, not the first, so a coflow's completion time is the maximum over its member flows; every coflow emits data-heavy flow tasks that place freely across the fabric plus a barrier task that depends on all of them, so the barrier gates the group and the coflow-completion-time is an all-or-nothing footprint | distributed-computing | ioe-complete | datacenter coflow schedulers (no continuum tier-placement barrier) | smoke | citation-backed |
|
compact-job-shopcompact-job-shop | job-shop | classical | — | smoke | citation-backed |
|
confidential-edgeconfidential-edge tasks are classified by data sensitivity -- a confidential task that touches protected data must execute inside the enclave-capable trusted tier so its data never leaves the trusted boundary, while a public task draws a free placement affinity across the fabric | distributed-computing | ioe-complete | edge enclave runtimes (no security-classified Pareto placement) | smoke | citation-backed |
|
cyber-physicalcyber-physical control cycles arrive periodically under a time-varying tariff | distributed-computing | ioe-complete | periodic hard-real-time task models and smart-grid demand-side scheduling formulations (no edge-fog-cloud tier placement under a Pareto contract) | smoke | citation-backed |
|
data-localitydata-locality a query over a large dataset is cheaper to run where the data already resides than to ship the data across the WAN fabric; each task's input lives on one tier (edge sensor logs, fog warm aggregates, or cloud cold archives) and the task pins to that tier so its heavy input never crosses the fabric, with the data tiers cycled so placement spans the whole edge-fog-cloud continuum | distributed-computing | ioe-complete | cluster locality schedulers (no continuum data-residency placement) | smoke | citation-backed |
|
datacenter-colocationdatacenter-colocation latency-sensitive service jobs and deferrable batch jobs share multi-tenant cells, so high-priority-band jobs claim capacity ahead of low-band jobs under contention | distributed-computing | ioe-complete | Google Borg ClusterData2019 priority-tiered cell traces | smoke | citation-backed |
|
digital-twin-syncdigital-twin-sync each physical asset periodically syncs its state to its fog/cloud twin and must finish within a freshness (Age-of-Information) window before the twin's state goes stale | distributed-computing | ioe-complete | digital-twin edge frameworks (no joint Pareto placement) | smoke | citation-backed |
|
disaggregated-memorydisaggregated-memory a CXL-pooled cloud platform backs each socket with a small local DRAM tier and a shared far-memory pool, and every VM draws a long-tailed memory working set, so a few memory-hungry tenants dominate a socket's local budget while far-memory access inflates a VM's runtime in proportion to the working set it spills to the pool; the scheduler reasons over local-versus-pool placement rather than core-count placement | distributed-computing | ioe-complete | published CXL memory-pooling and tiered-memory systems (socket-local page placement, no edge-fog-cloud tier scheduling under a Pareto contract) | smoke | citation-backed |
|
distributed-assembly-flow-shopdistributed-assembly-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
distributed-flexible-job-shopdistributed-flexible-job-shop | job-shop | structurally-complex | — | smoke | citation-backed |
|
distributed-permutation-flow-shopdistributed-permutation-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
distributed-training-gangdistributed-training-gang a GPU cluster runs synchronous data-parallel training jobs; each job is a gang of workers that must START TOGETHER on distinct accelerators (every all-reduce step synchronizes the workers), so a job cannot begin until enough accelerators are free simultaneously; the workers reuse the accelerator pool and jobs arrive over time, so jobs queue and the scheduler decides which job acquires a full simultaneously-free worker set first -- an all-or-nothing gang co-start, not an independent placement of each worker | distributed-computing | ioe-complete | published GPU-cluster and inference-serving families that place each task independently; none requires a whole job's worker set to co-start simultaneously on distinct accelerators, so no other family forbids a partial start -- the gang-scheduling all-or-nothing constraint under a Pareto contract | smoke | citation-backed |
|
distributed-transactiondistributed-transaction a partitioned database runs transactions that each acquire exclusive locks on a variable read/write set of data shards, so every transaction co-allocates a randomly drawn subset of shards held together for its whole run; two transactions whose shard sets intersect serialize while disjoint transactions commit in parallel, so the scheduler reasons over a variable-cardinality lock-conflict graph rather than a fixed two-resource hold | distributed-computing | ioe-complete | published replica-placement schedulers (a single shard pinned per task for locality, not a variable-cardinality exclusive lock set co-allocated per transaction forming a conflict graph under a Pareto contract) | smoke | citation-backed |
|
edge-offloadingedge-offloading-mec each task chooses between local edge execution and remote offload | distributed-computing | ioe-complete | iFogSim MEC offloading scenarios | smoke | citation-backed |
|
edge-placementedge-placement services place on edge servers near their user population and migrate as demand shifts across base-station coverage cells | distributed-computing | ioe-complete | EUA edge-user-allocation and Shanghai-Telecom base-station placement traces | smoke | citation-backed |
|
elastic-serverless-autoscaleelastic-serverless-autoscale a serverless platform serves function invocations on a shared worker pool, and every invocation is moldable: it may run on one, two, or four concurrent workers, where a wider allocation runs shorter by a sublinear speedup but spends more total worker-seconds; each request declares its execution modes and arrivals are spaced shorter than a base invocation so the pool is contended, so the scheduler picks each invocation's worker width -- a moldable latency-versus-cost choice rather than a fixed resource hold | distributed-computing | ioe-complete | published serverless cold-start and fixed-width co-allocation families (accelerator co-scheduling, fpga partitioning), each of which holds one fixed resource set per task; none lets a request choose among several worker-count modes so the schedule order trades latency for resource cost under a Pareto contract | smoke | citation-backed |
|
facility-assignmentfacility-assignment | machine-scheduling | classical | — | smoke | citation-backed |
|
failure-recoveryfailure-recovery a failed task re-places its checkpoint state to a surviving tier | distributed-computing | ioe-complete | Borg cluster failure-event traces | smoke | citation-backed |
|
federated-learningfederated-learning each training round selects a subset of heterogeneous, straggler-prone edge clients that train on non-IID local data, then a fog or cloud aggregator combines their updates | distributed-computing | ioe-complete | FedScale and Oort federated-learning device-participation benchmarks | smoke | citation-backed |
|
flexible-job-shopflexible-job-shop | job-shop | classical | — | smoke | citation-backed |
|
flow-shoppermutation-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
fpga-partitioningfpga-partitioning a multi-tenant reconfigurable FPGA hosts tenant kernels that each occupy a contiguous region of fabric tiles, so every kernel co-allocates a contiguous run of tiles held together for its whole residency; two kernels whose tile intervals overlap cannot be co-resident and serialize while kernels on disjoint tile spans run in parallel, so the scheduler reasons over an interval-overlap conflict graph rather than a fixed two-resource hold or a random-subset lock set | distributed-computing | ioe-complete | published accelerator co-scheduling (a fixed compute-plus-accelerator pair) and shard-lock transactions (a random subset of resources), neither of which constrains the co-allocated set to a spatially contiguous tile interval whose overlaps form an interval conflict graph under a Pareto contract | smoke | citation-backed |
|
frontierco-fjspfrontierco-fjsp | job-shop | classical | — | smoke | citation-backed |
|
generative-inference-servinggenerative-inference-serving a transformer inference replica batches autoregressive requests that each hold key-value-cache memory proportional to their token count for the whole decode, so a long-tailed sequence mix fragments a fixed cache budget and the scheduler reasons over memory-bound admission rather than GPU-count placement; every request's decode duration and KV-cache demand scale with its drawn token count | distributed-computing | ioe-complete | published single-replica generative-model serving systems (no edge-fog-cloud tier placement under a Pareto contract) | smoke | citation-backed |
|
gpu-mlgpu-ml training and inference jobs claim accelerators and gang-schedule replicas | distributed-computing | ioe-complete | Alibaba PAI, Philly, and Helios GPU-cluster traces | smoke | citation-backed |
|
hybrid-flow-shophybrid-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
immersive-xrimmersive-xr each extended-reality frame runs a latency-critical perception, render, and display pipeline placed across the device, edge, and cloud within a hard motion-to-photon deadline | distributed-computing | ioe-complete | ILLIXR extended-reality systems testbed | smoke | citation-backed |
|
intermittent-edgeintermittent-edge a batteryless sensor harvests ambient energy into a small buffer, runs until the buffer depletes, then sleeps to recharge; a job too large for one duty-cycle window is checkpointed at power loss and resumed in the next, so it is a precedence chain of edge-pinned per-window segments each bounded by the constant energy window | distributed-computing | ioe-complete | intermittent-computing runtimes (no continuum energy-window placement) | smoke | citation-backed |
|
iot-edgeiot-edge many small sensor readings arrive periodically and aggregate at the edge | distributed-computing | ioe-complete | published wireless-sensor-network telemetry datasets and in-network aggregation deployments (raw sensor readings, not edge-fog-cloud tier scheduling under a Pareto contract) | smoke | citation-backed |
|
job-shopjob-shop | job-shop | classical | — | smoke | citation-backed |
|
kv-cache-placementkv-cache-placement a distributed key-value cache tier serves a catalog of cache objects whose request rate follows a heavy Zipfian popularity skew, so a few hot objects absorb most of the traffic; each object is placement-flexible, carrying one single-node mode per cache-tier node, so the scheduler chooses which tier node hosts it, and an object's working set -- the transfer volume staged onto its host tier -- scales with its popularity rank, so the hottest object carries the largest working set and a cold-tail object the smallest; a naive uniform placement strands a hot, large-working-set object on a far tier and pays its transfer across the fabric, while a locality-aware placement pins the hottest objects to near tiers to shrink makespan and cost | distributed-computing | ioe-complete | published cache and content-placement families (consistent-hashing replica placement, CDN content distribution) that place each object uniformly or by a hash; none scales each object's working set with a Zipfian popularity rank so the hot objects carry a strictly larger transfer volume, making popularity-skewed near-tier pinning the lever a locality-aware placement pulls under the Pareto contract | smoke | citation-backed |
|
machine-schedulingmachine-scheduling-unrelated | machine-scheduling | classical | — | smoke | citation-backed |
|
microservice-dagmicroservice-dag services form an acyclic call graph pinned by role to a tier | distributed-computing | ioe-complete | Alibaba v2021 microservice-trace call graphs | smoke | citation-backed |
|
mixed-criticalitymixed-criticality a safety-critical real-time mix runs tasks of differing criticality, and a high-criticality task is budgeted with a conservative high-assurance worst-case execution time and a tight deadline while a low-criticality task carries a smaller best-effort budget and a loose deadline, so the criticality tiering lives in the duration and deadline structure; the scheduler reasons over which assured-criticality tasks to guarantee under contention rather than a uniform-assurance deadline-scheduling one | distributed-computing | ioe-complete | published uniform-assurance real-time deadline schedulers (one worst-case execution time and deadline class per task, not criticality-tiered WCET budgets with tighter high-assurance deadlines under a Pareto contract) | smoke | citation-backed |
|
moe-expert-parallelmoe-expert-parallel a sparsely-activated mixture-of-experts model routes each token batch to one expert and the experts are spread across devices, and expert popularity is long-tailed, so a few hot experts receive most token batches while many stay cold and the all-to-all routing exchange dominates fabric traffic; the scheduler reasons over an expert-placement and load-balancing problem rather than a dense uniform-replica serving one | distributed-computing | ioe-complete | published dense generative-model serving systems (uniform per-replica KV-cache admission, not sparse token-to-expert routing under load imbalance and a Pareto contract) | smoke | citation-backed |
|
multi-objective-pfspmulti-objective-pfsp | flow-shop | classical | — | smoke | citation-backed |
|
multi-project-rcpspmulti-project-rcpsp | rcpsp | structurally-complex | — | smoke | citation-backed |
|
multi-tenant-fair-sharemulti-tenant-fair-share a shared cluster serves several tenants whose workloads compete for one node pool; each task is placement-flexible, carrying one single-node mode per pool node, so the scheduler chooses which node it occupies; tenants are sized asymmetrically, so even a load-balanced placement leaves the heavy tenants holding a larger fraction of their busiest node -- a higher dominant resource share -- than the light ones, and a fairness-aware scheduler rebalances placement to shrink the dominant-share spread | distributed-computing | ioe-complete | published multi-tenant colocation families (Borg-style priority colocation, vm allocation) that fix each task's resource and score makespan or cost; none lets the scheduler choose each tenant task's node and scores the dominant-resource-share spread between tenants as a fairness objective | smoke | citation-backed |
|
network-slicingnetwork-slicing isolated slice classes (latency-critical, broadband, massive-IoT) each carry their own service-level deadline and placement, and same-class slices spread across tiers for resilience | distributed-computing | ioe-complete | 5G slicing orchestration (no joint Pareto placement) | smoke | citation-backed |
|
no-wait-flow-shopno-wait-flow-shop | flow-shop | classical | — | smoke | citation-backed |
|
open-shopopen-shop | open-shop | classical | — | smoke | citation-backed |
|
orbital-edgeorbital-edge tasks schedule across ground terminals, moving low-earth-orbit satellites, and cloud backhaul under time-varying connectivity as satellites enter and leave coverage and hand work over | distributed-computing | ioe-complete | LENS real-measurement LEO satellite-network traces | smoke | citation-backed |
|
pipeline-parallel-trainingpipeline-parallel-training a deep network is split into successive pipeline stages pinned across edge-to-cloud tiers and the training mini-batch is divided into micro-batches, so each micro-batch flows forward stage by stage while each stage runs its micro-batches in issue order; the two precedence families form a diagonal wavefront whose warm-up and cool-down idle slots are the pipeline bubbles, and deeper stages carry rising compute, so the scheduler reasons over a stage-partition and bubble-minimizing problem rather than a synchronous data-parallel all-reduce one | distributed-computing | ioe-complete | published data-parallel / gang-scheduled training systems (synchronous all-reduce over co-located replicas, not a stage-by-micro-batch pipeline wavefront with warm-up and cool-down bubbles under a Pareto contract) | smoke | citation-backed |
|
rcpsprcpsp-renewable | rcpsp | structurally-complex | — | smoke | citation-backed |
|
rcpsp-maxrcpsp-max | rcpsp-max | structurally-complex | — | smoke | citation-backed |
|
rcpsp-multi-modercpsp-multi-mode | rcpsp | structurally-complex | — | smoke | citation-backed |
|
reentrant-fabreentrant-fab | job-shop | structurally-complex | — | smoke | citation-backed |
|
replica-placementreplica-placement a replica runs where its data shard already lives | distributed-computing | ioe-complete | CRUSH replicated-data placement | smoke | citation-backed |
|
serverless-cold-startserverless-cold-start a cold invocation pays a container provisioning penalty | distributed-computing | ioe-complete | Azure Functions serverless-in-the-wild traces | smoke | citation-backed |
|
service-function-chainservice-function-chain an NFV packet flow traverses a linear ordered chain of typed virtual network functions -- firewall, intrusion detection, deep packet inspection, address translation -- each pinned to a tier that hosts its function type, so the chain is a strict total order and the flow crosses the edge-fog-cloud fabric in a fixed sequence; the scheduler reasons over a chain-placement problem under an end-to-end latency budget rather than the branching role-pinned call graph of a microservice | distributed-computing | ioe-complete | published microservice call-graph schedulers (a branching role-pinned acyclic call graph, not a strict linear chain of function-typed network functions under an end-to-end latency budget and a Pareto contract) | smoke | citation-backed |
|
setup-flow-shopsetup-flow-shop | setup-flow-shop | classical | — | smoke | citation-backed |
|
smartnic-offloadsmartnic-offload a SmartNIC-accelerated server pairs a fast host CPU with a low-power on-NIC processor, and every microservice draws a long-tailed compute intensity, so most are light enough to offload onto the energy-frugal NIC cores while a few compute-heavy services must stay host-bound; a service's runtime scales with its intensity, so the scheduler reasons over an energy-versus-latency offload-placement problem rather than a uniform host placement one | distributed-computing | ioe-complete | published mobile-edge computation-offloading models (device-to-edge latency offload, not in-server host-to-NIC energy offload under a Pareto contract) | smoke | citation-backed |
|
split-inference-servingsplit-inference-serving each inference request partitions a deep model at a layer cut -- a light head runs the early layers on the edge near the sensor and a heavy tail runs the later layers in the cloud, consuming the head's intermediate feature map under a per-request end-to-end latency SLO | distributed-computing | ioe-complete | datacenter inference serving (no edge-cloud partition placement) | smoke | citation-backed |
|
spot-preemptiblespot-preemptible a cloud provider rents idle capacity at a discount as revocable spot instances reclaimed after a short lease; eviction-tolerant batch work pins to the cloud spot tier under a hard lease deadline (the eviction horizon), while latency-critical interactive work pins to the stable edge on-demand tier with no eviction deadline | distributed-computing | ioe-complete | cloud spot schedulers (no continuum eviction-deadline placement) | smoke | citation-backed |
|
storage-io-tieringstorage-io-tiering a tiered storage pool serves I/O-bound jobs whose runtime is dominated by moving a job's I/O volume through the storage node it lands on; each job is placement-flexible, carrying one single-node mode per tier node, and the mode duration is tier-dependent -- a seek floor plus the I/O volume divided by that tier's I/O bandwidth, which differs by tier (a fast cloud array sustains far more bytes/second than a slow edge disk); a job's I/O volume follows a heavy-tailed falloff over its I/O-demand rank, so a few I/O-heavy jobs carry most of the bytes and have a large cross-tier duration spread, while the light tail barely varies; a naive placement strands an I/O-heavy job on a low-bandwidth tier and pays its volume slowly, while a bandwidth-aware placement pins the heavy jobs to fast tiers to shrink makespan and cost | distributed-computing | ioe-complete | published storage-tiering and hierarchical-storage-management families that migrate blocks between fast and slow tiers by access frequency; none models the heterogeneous-tier I/O bandwidth as a placement-flexible per-tier mode whose duration is the I/O volume divided by that tier's bandwidth, so an I/O-heavy job's cross-tier duration spread is the bottleneck-relief lever a bandwidth-aware placement pulls under the Pareto contract | smoke | citation-backed |
|
streaming-windowstreaming-window events arrive online in bounded windows and must close within one | distributed-computing | ioe-complete | Parallel Workloads Archive online arrivals | smoke | citation-backed |
|
time-sensitive-networkingtime-sensitive-networking each time-triggered flow releases on a fixed period and must finish within one cycle under a hard, jitter-free deadline | distributed-computing | ioe-complete | EdgeCloudSim best-effort scenarios (no gating) | smoke | citation-backed |
|
unrelated-parallel-setupunrelated-parallel-setup | machine-scheduling | structurally-complex | — | smoke | citation-backed |
|
vehicular-offloadingvehicular-offloading a vehicle's tasks share an arrival time and a roadside-unit dwell deadline, and hand over from the roadside unit to the fog tier as the vehicle drives on | distributed-computing | ioe-complete | EdgeCloudSim / SUMO vehicular-edge mobility scenarios | smoke | citation-backed |
|
video-analyticsvideo-analytics each camera streams frames that must be analyzed within a tight real-time latency bound, placed hierarchically with edge inference near the camera and cloud aggregation | distributed-computing | ioe-complete | edge video-analytics clusters (no joint Pareto placement) | smoke | citation-backed |
|
vm-allocationvm-allocation size-heterogeneous virtual-machine deployments pack onto hosts while each deployment's members spread across distinct failure domains for availability | distributed-computing | ioe-complete | Azure Public Dataset Resource Central VM-allocation traces | smoke | citation-backed |
|
workflow-dagworkflow-dag | distributed-computing | structurally-complex | — | smoke | citation-backed |
|
Per-instance characterization and download eligibility live in the benchmark catalog; this table is the family-and-citation inventory.
上面的组件承载完整的生成清单——下面的经典与 distributed-computing 核心族,外加 Edge–Fog–Cloud 族的连续统。那些基础核心族以文档形式呈现:
| 族 | 剖面 | 剖面类 | 主要语料 |
|---|---|---|---|
| 机器调度(R||Cmax,非相关机器) | machine-scheduling-unrelated | classical | OR-Library |
| Job-shop | job-shop-classical | classical | OR-Library, Taillard |
| 柔性 job-shop(FJSP) | flexible-job-shop | classical | Brandimarte; Hurink-Jurisch-Thole |
| 排列流水车间 | permutation-flow-shop | classical | Taillard |
| 序列相关换装流水车间(SDST) | setup-flow-shop | classical | Allahverdi et al. (2008); Allahverdi (2015) |
| 资源受限项目调度(RCPSP) | rcpsp-renewable | structurally-complex | PSPLIB |
| Distributed-computing(cloud/edge) | cloud-edge-capacity | domain-specific | CloudSim; DynamicCloudSim; Edge vision |
| Distributed-computing(workflow DAG) | workflow-dag | structurally-complex | Standard Task Graph Set |
非相关机器与柔性 job-shop 族为每个实例附加一个 CostModel 执行时间矩阵,作为物化矩阵与
问题 JSON 一起导出。序列相关换装流水车间族转而附加一个 CostModel 换装矩阵:在一台机器上
不同族作业之间的切换花费换装时间,因此换装目标奖励将相似作业分组。所列具名标准语料仅被
引用与链接,且绝不在仓库内重新分发。
若干连续统族行使多-资源协同分配:每个任务同时需要不止一个资源,且构造器在其整个持续
期间将它们保持在一起(见领域契约)。accelerator-coscheduling
族为每个作业协同分配一个计算节点与一个稀缺加速器;distributed-transaction 族为每个事务
协同分配一个可变-基数的数据分片锁集;而 fpga-partitioning 族为每个租户内核协同分配一段
空间连续的可重构织物瓦片。资源集相交的任务串行化,而不相交的任务并发运行——可运行的
examples/inspect_coallocation.py
使该杠杆显式化。
在协同分配之外,三个连续统族行使其各自的结构杠杆。elastic-serverless-autoscale 族行使
可塑执行:每个函数调用声明不止一个执行模式——一个仅-在家的窄模式与一个从小型共享突发
池借用一个 worker 以更早完成的宽模式——因此调度为每个任务选择一个模式,而顺序决定哪些调用
认领稀缺的宽-且-快模式。distributed-training-gang 族行使帮派协同调度:一个同步
数据-并行训练作业的 workers 共享一个帮派并必须在一次全有或全无的启动中于不同加速器上共同
启动——workers 复用加速器池且作业随时间到达,因此一个作业在足够加速器同时空出之前无法开始,
而顺序决定哪个作业最先获取其完整 worker 集。multi-tenant-fair-share 族行使
主导-资源公平:若干非对称-规模的租户在一个共享节点池上放置放置-灵活的任务,而
主导-资源-份额目标对最多-与最少-被服务租户的主导份额之间的离差打分——因此放置,即每个租户
占用哪些资源,是平衡或扭曲它的杠杆。可运行的
examples/serverless_autoscale_study.py、
examples/distributed_training_gang_study.py
与
examples/multi_tenant_fairshare_study.py
使这三个杠杆显式化。
剖面类
| 剖面类 | 含义 |
|---|---|
classical | 派生自一个标准组合-优化语料。 |
structurally-complex | 携带优先级、DAG,或资源-网络结构。 |
ioe-complete | 万物互联-完整的分布式场景。 |
trace-backed | 基于一个具名的真实世界负载轨迹。 |
domain-specific | 为单一运营领域量身定制。 |
证据标签
| 标签 | 用途 |
|---|---|
smoke | 用于测试、示例、文档与预览的小型确定性实例。 |
exploratory | 尚未有引用支撑或完全特征化的可信材料。 |
| 候选证据等级 | 等待试点、统计与活动关卡的有引用支撑材料。 |
| 完整活动证据等级 | 已通过引用、特征化、统计、披露与质量关卡的证据。 |
烟雾目录绝非最终评估证据。它们存在以证明生成器、验证、特征化、引用检查与持久化快速运作。
门户目录与下载以这一小型烟雾规模(一个三-资源池)预览每个连续统族;一个协同分配族无法在
如此小的池上展现不相交-资源并行性,因此该独特结构是一个研究-规模属性。
build_continuum_full_catalog() 以每个族声明的研究规模物化它——更大的资源池与任务计数,
在那里协同分配、争用与放置结构真正显现——用于研究-级基准包。
分类法
分类法覆盖调度结构、环境、基础设施真实性、目标特征、约束特征、不确定性,以及动态性。 示例包括 DAG 工作流、独立任务批、serverless 函数、容器与 VM 整合、edge 与 cloud 环境、 公开轨迹、多-目标优化、deadline、数据局部性、churn,以及动态到达。
引用矩阵
基准主张针对 CitationMatrix 检查。候选与完整活动证据-等级主张除非引用有引用支撑的来源,
否则验证失败。不被支持的材料必须保持 exploratory,直到证据被添加。
来源集在 default_citation_matrix() 中以稳定来源标识符、可解析引用与一份记录的许可姿态
声明。它跨越三个层级:标准组合-优化语料(仅引用与链接,绝不捆绑)、生产集群轨迹,以及一组
广泛的当代真实世界 Edge–Fog–Cloud-连续统数据集——GPU 与 machine-learning 集群轨迹、
微服务与 serverless 基准套件、科学-工作流轨迹、超算作业轨迹、edge-placement 与移动性数据
集、IoT 与蜂窝-需求数据集、电网碳与能源信号、流-处理负载、federated-learning 设备-参与
基准、扩展-现实系统测试床,以及近地-轨道卫星-网络轨迹:
规范参考套件
default_reference_suites() 中的注册表记录每个通用调度族所锚定的规范已发表实例套件:
身份、族、实例计数、检索指针,以及为该套件发布界值的最佳-已知-解追踪器。经典套件仅被
引用与链接——DispatchAtlas 绝不捆绑或重新分发第三方实例文件。
| 套件 | 族 | 实例数 | 下载 | BKS 追踪器 |
|---|---|---|---|---|
fisher-thompson | job-shop | 3 | OR-Library | van-hoorn-2018, scheduleopt-benchmarks |
lawrence | job-shop | 40 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
adams-balas-zawack | job-shop | 5 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
applegate-cook-orb | job-shop | 10 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
storer-wu-vaccari | job-shop | 20 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
yamada-nakano | job-shop | 4 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
taillard-jsp | job-shop | 80 | JSPLIB 镜像 | van-hoorn-2018, scheduleopt-benchmarks |
demirkol-dmu | job-shop | 80 | JSPLIB 镜像 | scheduleopt-benchmarks |
brandimarte-mk | 柔性 job-shop | 15 | SchedulingLab 镜像 | scheduleopt-benchmarks |
hurink-fjsp | 柔性 job-shop | 198 | SchedulingLab 镜像 | scheduleopt-benchmarks |
dauzere-peres-paulli | 柔性 job-shop | 18 | SchedulingLab 镜像 | scheduleopt-benchmarks |
taillard-pfsp | 流水车间 | 120 | OR-Library | zenodo-pfsp-bks-2021 |
vrf-pfsp | 流水车间 | 480 | SOA 研究组站点 | zenodo-pfsp-bks-2021 |
sdst-taillard-ruiz | 换装流水车间 | 480 | SOA 研究组站点 | 最佳解随实例一同提供 |
cicirello-wt-sds | 机器调度 | 120 | Harvard Dataverse | cicirello-wtsds-benchmark |
or-library-smtwt | 机器调度 | 375 | OR-Library | crauwels-potts-vanwassenhove-1998 |
vallada-ruiz-upmsp | 机器调度 | 1640(报告值) | SOA 研究组站点 | — |
psplib | RCPSP | 2040 | PSPLIB 站点 | psplib-1997 |
mmlib | RCPSP | 4320(报告值) | OR&S 着陆页 | solutionsupdate-ugent-rcpsp |
rg300 | RCPSP | 480 | OR&S 着陆页 | solutionsupdate-ugent-rcpsp |
带捆绑解析器的套件(标准 job-shop 文本、Taillard 流水车间矩阵、.fjs 柔性 job-shop、
WfCommons WfFormat JSON)用 load_reference_suite(suite_id, instances_root=...) 从
操作者下载并放置于本地 resources/ 树下的文件摄取。摄取完全离线运行,复用与合成生成器
相同的验证、特征化、哈希与来源信封,并为每个问题打上其 suite_id 与
upstream_instance_id 印记。仅-注册表套件以其引用与检索指针记录,不带捆绑解析器。
最佳-已知-解注册表
逐-实例最佳已知值绝不随 DispatchAtlas 分发。操作者将它们作为 JSON 文件摄取到一个私有的
resources/benchmarks/bks/ 目录之下,每个套件一个文件,每个文件携带 schema_version、
suite_id、追踪器 source_id、检索日期,以及取值条目(实例标识符、目标、取值、
最优-或-上界种类、可选下界)。load_best_known_registry 针对参考套件与引用矩阵验证每个
文件,并在未知套件、未知追踪器、重复条目或不一致界值上失败关闭。没有已摄取的注册表,
相对-偏差度量就完全不可用——它们绝不被部分计算,且任何公开表面上都不出现最佳已知值。
校准分歧
合成通用族锚定于规范套件,而不声称复现其生成方案。已知分歧被记录而非隐藏:
| 族 | 已发表惯例 | 合成惯例 |
|---|---|---|
| 换装流水车间 | SDST-Taillard 换装为处理时间的 10/50/100/125% | 三个换装族,代价 = 族 + 1 |
| 机器调度(R||Cmax) | U[1,100] 持续时间类别与相关-机器变体 | 逐-对速度因子 0.5–2.0 |
针对已发表惯例的比较经由已摄取的规范实例进行,而非经由合成族。
特征化
每个物化问题接收针对以下方面的归一化描述符:
- 机会密度
- 兼容性稀疏度
- 争用与过载
- 依赖深度
- 通信压力
- 换装强度
- 负载偏斜与异构性
- 目标冲突
- 不确定性与动态性
- 求解器敏感性
现实-差距桥接
每个完整活动证据-等级剖面声明一个现实-差距桥接:其状态(synthetic、
calibrated-synthetic、trace-backed,或 externally-sourced)、校准证据、领域场景、
迁移与扰动覆盖,以及残余现实-差距风险。除非声明迁移与扰动覆盖,否则向完整活动证据等级的
提升失败关闭,且一个 calibrated-synthetic 剖面必须命名其据以校准的 trace-backed 参考。
Calibrated-synthetic 族显式命名其轨迹参考;已摄取的规范套件携带一个 externally-sourced
桥接,而 WfCommons 适配器是第一个外部-解析的 trace-backed 实例来源,为
distribution_distance_score 提供了一条真实的 trace-backed 参考支路。
具名校准度量报告一个 calibrated-synthetic 剖面的特征化特征分布与其 trace-backed 参考实例
之间逐-特征的 1-Wasserstein(推土机)距离。逐-特征距离被聚合为单一现实-差距分数;一个高于
最大-离散度阈值(默认 0.25)的分数意味着该剖面已偏离其参考太远并未通过校准。该度量可从
物化实例与具名参考轨迹复现。
from dispatchatlas.bench import (
build_smoke_catalog,
metrics_from_instance_set,
distribution_distance_score,
)
catalogs = {c.config.profile_id: c for c in build_smoke_catalog()}
synthetic = metrics_from_instance_set(catalogs["cloud-edge-capacity"])
reference = metrics_from_instance_set(catalogs["workflow-dag"])
score = distribution_distance_score(
synthetic, reference, reference_trace_id="google-cluster-data"
)分层与子集选择
difficulty_score 将争用、过载、依赖-深度与求解器-敏感性描述符聚合为一个归一化难度分数,
而 stratify_instances 将物化实例分箱为低、中、高难度层。select_benchmark_subset 选取
一个按族、剖面类与难度层过滤的确定性子集,按问题标识符排序,使选择可复现。
烟雾目录
from dispatchatlas.bench import build_smoke_catalog, smoke_benchmark_provider
catalogs = build_smoke_catalog(root_seed=20260527)
provider = smoke_benchmark_provider(root_seed=20260527)
first_problem = provider.get_problem(provider.list_problem_ids()[0])捆绑的烟雾目录将两个 distributed-computing 族(cloud/edge 独立-任务与 workflow DAG)与十四个 通用调度族(机器调度、job-shop、柔性 job-shop、排列流水车间、序列相关换装流水车间、RCPSP、开放车间、混合流水车间、分布式排列流水车间、无等待流水车间、阻塞流水车间、分布式装配流水车间、多目标排列流水车间,以及RCPSP/max)作为co-equal同侪一并包含。每个实例从根种子确定,并使用有引用支撑的生成器元数据, 同时保持标记为烟雾开发材料。
候选完整目录
候选完整活动目录使用相同的物化路径,配以更大的已配置问题计数与更严格的证据标签:
from dispatchatlas.bench import build_full_catalog, full_benchmark_provider
catalogs = build_full_catalog(root_seed=2026052713, problem_count_per_profile=30)
provider = full_benchmark_provider(
root_seed=2026052713,
problem_count_per_profile=30,
)那些完整活动证据-等级目录有引用支撑、经特征化、哈希-链接,且在活动、披露与发布关卡提升 特定主张之前仍标记为校准证据。