MSc Individual Project · Imperial College London

Shared work.
Separate sandboxes.

Pysolate separates each logical run from the physical work that serves it. Eligible Host work may start earlier, and unchanged runtime state may be reused, while control flow, permissions, mutable state, workspace and output remain per run.

Yuzhe ShiPython · WebAssembly · WASI2026

One separation, two mechanisms

A run remains private even when its physical work does not begin from zero.

The Host changes when eligible work starts or which unchanged pages are reused. It does not merge logical runs.

Within a run

Prepare early

Start eligible provider work before Python reaches the original call, then recheck the temporal contract before observation.

Across instances

Share unchanged backing

Map one pre-initialised image into private instances. Writes create disposable private dirty pages.

Measured evidence

Selective reuse pays off at different points for different physical costs.

The measurements locate workload-specific crossover regions rather than universal thresholds.

Whole-program PLM
8 → 4 → 2

First favourable medians

Independent reads as provider delay increases from 25 to 75 to 200 ms. The 25 ms boundary interval includes zero.

COW Fan-Out
2 / 4

Time / PSS crossover

Full-lifecycle time crosses at two instances; after-run proportional set size at four.

Streaming Overlap

With a 1.5 s provider operation and 1.4 s of source still to arrive, Pysolate completes 1.405 s sooner than whole-file serial once analyser capacity is ready.

Scheduling boundary

When Pysolate and EAGER start the same read, their gains against their own serial treatments differ by 14.2 ms. Ordinary Python computation remains in program order in Pysolate.

Shimmy application

Image copy-on-write reduces following-request latency from 154.5 ms to 1.22 ms and four-slot retained PSS from 2,049.6 MiB to 237.7 MiB.

What changes; what stays per run

The Host may move physical work; each run keeps its authority and mutable state.

Physical work that may move or be reused

  • Eligible read-only Host operations under declared temporal contracts
  • Unchanged pages from a pre-initialised runtime image

State that remains with each run

  • Capability grants, call budget and ownership context
  • Python control flow, mutable memory and cancellation scope
  • Private workspace changes, external writes and final output

Project artifacts

Read the complete argument or inspect the defence route.

The dissertation contains the system model, implementation, controlled experiments, a Shimmy application, discussion and limitations. The live deck includes presenter-controlled mechanism animations.