Open-source · Python · DAG-native · Wi-Fi aware

What if the “best” scheduler is only best because the network model is wrong?

ncsim is a lightweight discrete-event simulator for networked computation. It lets you place DAG tasks on heterogeneous nodes, route the resulting data flows over multi-hop networks, and see what happens when those wireless transfers actually contend and interfere.

A scheduler ranking can flip when interference is turned on.
Interference-free model
HEFT
RR
HEFT appears faster.
CSMA/CA model
HEFT
RR
Round-robin wins.

Illustrative 4×4-grid case from our experiments: HEFT 14.9 s vs. round-robin 25.7 s without interference; under CSMA/CA, HEFT 1244 s vs. round-robin 523 s.

See it in action

ncsim is not just a model; it gives you replayable executions.

The visualization shows the wireless topology, active transfers, Gantt-style execution timeline, and event log together, so you can see how a placement decision turns into network contention over time.

Screenshot of ncsim visualization showing wireless topology, active DAG transfers, Gantt chart, and event log
Screenshot from the ncsim visualization interface: animated network replay, live task/transfer timeline, and event log.
The gap ncsim is designed to close

Task placement, routing, and wireless interference are one coupled problem.

Traditional DAG schedulers often treat communication time as data size ÷ a fixed pairwise bandwidth. On a wireless mesh, the scheduler’s placement changes which routes are needed; those routes determine which links are active; and those links change each other’s effective rates.

1

Placement creates traffic

Assigning dependent tasks to different nodes creates transfers. A placement that looks compute-efficient can generate a large communication footprint.

2

Routing creates contention

Multi-hop paths activate multiple relays and contention domains. The widest path for one flow may be a poor choice once many flows run together.

3

Contention changes the schedule

As flows start and finish, effective link rates change. Transfer completion times move, task readiness moves, and the realized makespan can diverge sharply from the planner’s estimate.

What ncsim is

A deliberately middle-weight simulator.

ncsim sits between packet-level network simulators and workflow simulators: more wireless-realistic than fixed-bandwidth DAG tools, but much lighter than full packet simulation when you want to sweep schedulers, routes, topologies, workloads, and RF parameters.

You provide

Scenario + workload

DAGscompute capacitiesnode positionslinks
ncsim

Discrete-event execution

Pluggable scheduler, routing, and interference components; dynamic bandwidth recalculation as transfers start and finish.

23 SAGA schedulersround-robinmanualwidest / shortestCSMA Bianchi
You get

Metrics + replayable traces

makespanJSONL traceutilizationweb visualization
802.11Path loss, SNR/MCS, CSMA/CA contention, hidden terminals.
multi-hopDirect, widest-path, and shortest-path routing with shared links.
deterministicSame inputs + same seed produce identical simulation results.
flow-levelFast enough for structured scheduler and topology sweeps.
What we have learned with it

Wireless realism changes conclusions, not just numbers.

27.8%

Rank inversions on grid experiments

In a 108-run factorial study, the scheduler selected by an interference-free evaluation changed once realistic wireless interference was included in 5 of 18 scheduler-comparison cases.

  • Maximum wrong-choice regret: 2.68×.
  • At 100 nodes, the inversion rate rose to 50% in the tested random geometric graph cases.
2.3–10.1×

Locality can beat widest-path placement

A locality-biased HEFT model that strongly discourages non-adjacent placements dramatically outperformed a widest-path HEFT model across the configurations studied.

  • Turning off inter-link interference collapsed a >10× gap to about 2×.
  • The widest-path planner could be 9–70× too optimistic about realized makespan.
4%

Mean error against ns-3 in contention scaling

ncsim’s analytical/flow-level Wi-Fi model was validated internally, against Bianchi’s published results, and against packet-level ns-3 experiments.

  • Contention-scaling mean error: 4.0%.
  • The hidden-terminal separation sweep reproduced the same qualitative transition and throughput dip seen in ns-3.
simple wins

Routing results can be counterintuitive

Single-flow “best path” logic does not necessarily survive shared wireless airtime. In our studies, shorter routes often beat wider ones because they activate fewer relays and contention domains.

  • Shortest-path beat widest-path in 7 of 9 grid cases in one study.
  • Across a broader 18-cell routing study, shortest-hop was the most frequent winner.
The recurring lesson: a scheduler does not merely run on the network; its placement decisions partially create the network load that it will later experience.
What should you use it for?

Research questions that need both computation and networking in the loop.

Compare DAG schedulers fairly

Test HEFT, CPOP, PEFT, Min-Min, Sufferage, round-robin, or your own scheduler under the same executable network model.

Study placement × routing

Ask whether a placement remains good after its data dependencies are mapped onto real multi-hop paths.

Design interference-aware algorithms

Prototype new schedulers or routing policies that use locality, contention state, or congestion feedback.

Sweep architectures

Vary topology, density, compute heterogeneity, payload size, Wi-Fi parameters, and concurrent workflows.

Generate reproducible traces

Use deterministic event traces and metrics for analyses, plots, algorithm debugging, and artifact evaluation.

Teach networked computing

Show students why “communication cost” is not just a fixed number in distributed wireless systems.

Scope

Know what ncsim is — and what it is not.

Good fit

Macroscopic scheduler evaluation, bulk DAG-edge transfers, static or slowly varying deployments, contention-driven Wi-Fi effects, parameter sweeps.

Use ns-3 instead when…

You need packet/protocol engineering, detailed retransmission behavior, fast mobility/fading, TCP slow-start effects for short flows, or fine PHY dynamics.

Design philosophy

Fast enough to explore, grounded enough to matter.

ncsim intentionally keeps first-order wireless effects that can change scheduling outcomes—distance-dependent PHY rate, CSMA/CA contention, hidden terminals, link sharing—while avoiding packet-level detail that would make large scheduler sweeps cumbersome.

Try it

From zero to a simulation in a few commands.

# Clone the full repo
git clone https://github.com/ANRGUSC/ncsim.git
cd ncsim
pip install -e .

# Run a demo
ncsim --scenario scenarios/demo_simple.yaml \
      --output results/demo

# Inspect the event trace
python analyze_trace.py results/demo/trace.jsonl \
       --gantt --timeline --tasks

Python 3.12+. You can also install the core package with pip install anrg-ncsim.

No local setup?

Open a ready-to-use GitHub Codespace.

The repository includes a CLI and web visualization. The UI can configure scenarios and replay simulations with synchronized network activity, task Gantt charts, and an event log.

An invitation

Use ncsim to break your scheduler before the real network does.

We would love to see researchers use it for new scheduling, routing, dispersed-computing, edge-AI, and tactical-networking questions—and to contribute models, scenarios, and algorithms back to the project.

github.com/ANRGUSC/ncsim ↗
Papers behind the results

Read more

  1. B. Krishnamachari, M. Gutierrez, J. Coleman. “ncsim: A Lightweight Simulator for Networked Edge Computing with Wireless Interference Modeling.” arXiv preprint, 2026. arXiv:2605.01094 ↗
    Note: A short version of this paper has been accepted to the ACM/IEEE Symposium on Edge Computing (SEC), 2026, to appear.
  2. M. Gutierrez, J. Coleman, B. Krishnamachari. “Locality Beats Widest-Path: DAG Scheduling under Wireless Edge Interference.” IEEE MILCOM, 2026.