BoxRouter

Files

Builds on Common Methodology

Times the job-host round trip for BoxRouter to list a directory and to read and write a 4 KiB incompressible file in a sandbox.

Coding agents and build tools constantly inspect directory trees and read or write small source files through a sandbox provider's file API.

The Files tab measures the per-call round-trip time of those three primitive operations through BoxRouter: listing a directory of 200 empty files (List), writing an incompressible 4096-byte file (Write 4 KiB), and reading that 4096-byte file back with SHA-256 verification (Read 4 KiB).

All three benchmarks execute sequentially inside one shared sandbox per trial (List, then Write 4 KiB, then Read 4 KiB), repeating each operation 100 times back to back.

View the Procedure View Files Results Download Raw Data

Metrics

Read 4 KiB

Read 4 KiB is the round-trip duration of a single files.read call reading the 4 KiB incompressible file /workspace/prim/file-4kib.bin, pooled across 100 sequential reads per trial and 40 trials (4,000 reads total).

List

List is the round-trip duration of a single files.list call on /workspace/prim/list returning the sorted names of 200 empty files, pooled across 100 calls per trial and 40 trials (4,000 calls total).

Write 4 KiB

Write 4 KiB is the round-trip duration of a single files.write call transferring a 4 KiB incompressible payload to /workspace/prim/file-4kib.bin, pooled across 100 sequential writes per trial and 40 trials (4,000 writes total).

List (2 vCPU / 8 GiB)

List (2 vCPU / 8 GiB) is the same measurement as List, taken in a 2 vCPU / 8 GiB sandbox.

Write 4 KiB (2 vCPU / 8 GiB)

Write 4 KiB (2 vCPU / 8 GiB) is the same measurement as Write 4 KiB, taken in a 2 vCPU / 8 GiB sandbox.

Read 4 KiB (2 vCPU / 8 GiB)

Read 4 KiB (2 vCPU / 8 GiB) is the same measurement as Read 4 KiB, taken in a 2 vCPU / 8 GiB sandbox.

Timed Part Starts Ends
Read file Each read request is dispatched. The complete file returns to the job host.
List directory Each list request is dispatched. The directory names return to the job host.
Write file Each write request is dispatched. The write call returns after staging and copying the bytes into place.
M_{\mathrm{op},\,i} = \operatorname{median}_{r} \left( t_{\mathrm{op},\,i,\,r} \right)
  • M_{\mathrm{op},\,i} Summary value of operation op in trial i, the nearest-rank median across its repetitions.
  • t_{\mathrm{op},\,i,\,r} Job-host duration of repetition r of operation op in trial i.

Measurement

Each trial uses one shared sandbox created from BoxRouter's pinned standard image across all three file benchmarks.

  1. Create sandbox, run readiness check and create 200 empty files.
  2. Call files.list 100 times back to back and verify the names (List).
  3. Generate and verify the 4 KiB payload.
  4. Call files.write 100 times (Write 4 KiB).
  5. Read 4 KiB Call files.read 100 times and verify each payload (Read 4 KiB). Timed
  6. Destroy sandbox.

The 200 empty files in /workspace/prim/list are named f000 through f199, and the 4096-byte payload is generated in memory from SHAKE256 (boxrouter-primitives/file-4kib/v1) and verified by SHA-256 digest on every read.

Scope Limits and Caveats

  • Calls to files.list publish job-host total time only, because files.list wraps no user command with guest clock reads.
  • Each files.write call includes BoxRouter's staging step (writing the bytes to a private path and copying them into place in the same call), and writes two through 100 overwrite the existing file.
  • Because of the staging step a write takes several provider requests and is slower than a read, which is the path a BoxRouter user takes.
  • Because the file was just written in the same sandbox, the sandbox's page cache may serve the reads, so they measure the file API's per-call overhead rather than disk speed.
  • The sandbox has already passed the readiness check and the directory setup command, so the calls measure warm steady-state file operations, not cold first-touch ones.
  • On some providers BoxRouter does extra work per file call (on Vercel it re-checks its process tool on every listing), and that work is part of the provider's path and of the timed call.

Failures and Exclusions

Outcome classifications, top-up rounds, and outlier rules follow Common Methodology; the first failed step ends the trial without in-trial retries.

A trial succeeds only when the directory setup completes, all 100 files.list calls return the expected sorted set of 200 filenames, all 100 files.write calls complete without error, all 100 files.read calls return a buffer whose SHA-256 matches the pinned SHA-256, and the shared trial sandbox is confirmed destroyed.

Step Time Limit
Create 5 min
Write file 60 s
List directory 60 s
Write file 60 s
Read file 60 s
Destroy 5 min

Statistics

Based On
Common Methodology

Per-unit percentiles, bootstrap confidence intervals, and tail rules follow Common Methodology.

For each of List, Write 4 KiB and Read 4 KiB, all 4,000 individual call durations across the 40 trials are pooled for the headline median, mean, and p95, with bootstrap confidence intervals resampled by whole trial. A provider is ranked once it has at least 20 successful trials.

Sandbox and Trials

Image Digest
sha256
Image Version
0.3.11
Image Registry Page
View on the Registry
Pull the Image
docker pull ghcr.io/boxrouter/standard-image@sha256:89d4c97048dbdfb8b6d85ad91833962ff38d1c334a5f47e6de80a9762310191b Copy
Lifetime
30 min
Idle Connection Time
5.0 min

From Common Methodology

Idle Connection Exceptions
Provider Rule File Transfer Idle Time
Daytona The SDK has no idle-timeout setting. Its command channel keeps its connection open, and its file-transfer channel reconnects after 5 s of idle time. 5.0 s

From Common Methodology

Network Path Attempts
10

From Common Methodology

Mode
Single
Sandboxes per Trial
1
Parallel Trials
10
Concurrent Sandboxes
1

At a Glance

Metrics
  • Read 4 KiB
  • List
  • Write 4 KiB
  • List (2 vCPU / 8 GiB)
  • Write 4 KiB (2 vCPU / 8 GiB)
  • Read 4 KiB (2 vCPU / 8 GiB)
Quantity
Time
Unit
Milliseconds (ms)
Direction
Lower Is Better
Statistic
Median
Clock
Job-host clock

From Common Methodology

Machine Size
2 vCPU / 4 GiB
Trials
40
Variants
  • Read 4 KiB
  • List 200 empty files
  • Write a 4 KiB payload

All Methods

Files

Times the job-host round trip for BoxRouter to list a directory and to read and write a 4 KiB incompressible file in a sandbox.

Coding agents and build tools constantly inspect directory trees and read or write small source files through a sandbox provider's file API.

The Files tab measures the per-call round-trip time of those three primitive operations through BoxRouter: listing a directory of 200 empty files (List), writing an incompressible 4096-byte file (Write 4 KiB), and reading that 4096-byte file back with SHA-256 verification (Read 4 KiB).

All three benchmarks execute sequentially inside one shared sandbox per trial (List, then Write 4 KiB, then Read 4 KiB), repeating each operation 100 times back to back.

Metrics

Loading results…

Measurement

Loading results…

Scope Limits and Caveats

Loading results…

Failures and Exclusions

Loading results…

Statistics

Loading results…

Sandbox and Trials

Loading results…