Cowork (Windows desktop): ~66-75x write-speed penalty through the mounted folder bridge (virtiofs+bindfs)
Summary
Writes to a connected Windows folder from the Cowork sandbox run at ~4 MB/s
while the same sandbox writes ~300 MB/s to its native filesystem — a
consistent 66-75x penalty measured 9 weeks apart (2026-05-29 and
2026-08-01). The bottleneck is isolated to the mount bridge itself: the
disk is a healthy SATA SSD, and a Windows Defender A/B test shows no
antivirus contribution. This is the same layer implicated in two
already-filed correctness bugs (#55206 unlink denied, #70414 silent
truncation/NUL-padding), so a fix here likely pays down all three.
Environment
- Windows laptop: Intel i5-7300U, 32 GB host RAM; sandbox VM sees 2 cores / ~3.8 GB
- Disk: TEAM TM8PS7512G, 512 GB SATA SSD (healthy;
Get-PhysicalDiskMediaType=SSD) - Connected folder:
C:\Archive\Claude Storage→/sessions/<name>/mnt/Claude Storage/ - Claude desktop app, Cowork mode
Reproduction
From the Cowork sandbox shell:
# mount (connected Windows folder)
dd if=/dev/zero of="/sessions/<name>/mnt/<folder>/.iobench.tmp" bs=1M count=64 conv=fdatasync
# native sandbox fs
dd if=/dev/zero of=/tmp/.iobench.tmp bs=1M count=64 conv=fdatasync
Measurements
| Date | Mount write | Native write | Penalty |
|---|---|---|---|
| 2026-05-29 | 4.5 MB/s | 297 MB/s | ~66x |
| 2026-08-01 | 4.1 MB/s | 309 MB/s | ~75x |
Caveat stated up front: conv=fdatasync forces a durable sync and
exaggerates FUSE overhead vs buffered writes; buffered mount writes are
faster than 4 MB/s but remain far below native. The relative gap is the
point, not the absolute number.
Ruled out
- Antivirus: Defender A/B on the same command — folder excluded:
4.5 MB/s; folder scanned: 4.3 MB/s. Noise-level delta; exclusion removed
again after the test.
- Disk: SSD confirmed healthy; native-side 297-309 MB/s through the same
VM shows the VM's I/O path is fine until the bridge.
Impact
Every file operation against the user's real files pays this tax. Practical
consequences observed over ~3 months of daily use: multi-second single-file
writes, session workflows redesigned around "stage in /tmp, copy once at the
end", and scripted full-folder scans (e.g. a ~200-file digest pass) running
40+ seconds instead of sub-second. Combined with the correctness defects in
the same layer (#55206, #70414 — the latter with on-disk proof), the mount
bridge is currently the least reliable and slowest component of an otherwise
solid product.
Incidental corroboration while re-measuring for this report: the benchmark
file written to the mount could not be deleted from the sandbox afterward —
the exact #55206 unlink defect, reproduced in the same run.
Ask
Profile the virtiofs+bindfs write path on Windows. Even a partial
improvement (e.g. batching/buffering FUSE writes) would compound across
every Cowork session on Windows.