HyperDUBETA

DISK USAGE, WITHOUT THE WAIT.

Find the space.
Skip the wait.

Find the folders filling your disk and review cleanup candidates. Native metadata reads and parallel traversal share one Rust engine, available from the CLI, GUI, and AI agents.

v0.5.0-beta.7 · Published beta · MIT

01 / SPACE EXPLORERUsage illustration
~/workspace
$ hyperdu . --top 3
Top 3 under . (physical desc):
  1. . | phys=18.2 GiB | log=17.9 GiB | files=412088
  2. ./target | phys=12.4 GiB | log=12.1 GiB | files=48211
  3. ./.git | phys=3.1 GiB | log=2.6 GiB | files=1530

CLI · GUI · MCP

Two progress lines redraw at speed while it scans, then the largest folders remain.

BUILT IN RUSTWindowsLinuxmacOS Not verifiedMCP · READ-ONLY

01 / BENCHMARKS

Up to 3.25× faster on 1M Linux files.

Linux was compared with GNU du in eight runs per tool on GitHub Actions. Windows measurements add a 1M-file HyperDU-only result and a 10K-file diagnostic. These are records of the displayed benchmark commit, not fresh measurements of the published release or current HEAD. Windows adds a comparison with dua-cli and reference timings for tokei, which does a different job.

/ 2645689 / WARM

HyperDU vs GNU du

GitHub Actions / Linux

AMD EPYC 9V74 80-Core Processor · 4 vCPU · 15.6 GiB RAM · ext4
Ubuntu 24.04 · 1M files per tree · 256 B per file · median of 8 runs per tool · allocated size

HyperDU vs GNU du — Elapsed time · shorter is faster
DatasetFilesHyperDUGNU duSpeed ratio
Flat directoryflat1,000,0002327.49 ms2763.52 ms1.187×
Wide directory treewide1,000,000745.96 ms2428.8 ms3.256×
Deep directory treedeep1,000,000764.67 ms2434.28 ms3.183×
Wide directory treeElapsed time · shorter is faster
HyperDU
745.96 ms
GNU du
2428.8 ms

HyperDU / 1M files

Local Windows / standalone

AMD Ryzen 9 3900X · 12 cores / 24 threads · 128 GiB RAM · NTFS / NVMe
Windows 11 · 1M files · 256 B per file · logical size · median of 8 HyperDU-only runs

HyperDU / 1M files — Elapsed time · shorter is faster
DatasetFilesHyperDUGNU du (MSYS)Speed ratio
Flat directoryflat1,000,000589.91 msTimed out at 600 sNo comparison

GNU du timed out after 600 seconds during warmup, before any measured run. The 1M-file comparison is incomplete; wide and deep 1M-file workloads were not run.

HyperDU vs GNU du (MSYS)

Local Windows / 10K-file diagnostic

AMD Ryzen 9 3900X · 12 cores / 24 threads · 128 GiB RAM · NTFS / NVMe
Windows 11 · 10K files per tree · 256 B per file · logical size · median of 2 runs per tool

HyperDU vs GNU du (MSYS) — Elapsed time · shorter is faster
DatasetFilesHyperDUGNU du (MSYS)Speed ratio
Flat directoryflat10,00032.98 ms704.17 ms21.35×
Wide directory treewide10,00027.46 ms712.33 ms25.94×
Deep directory treedeep10,00032.32 ms836.73 ms25.89×
Wide directory treeElapsed time · shorter is faster
HyperDU
27.46 ms
GNU du (MSYS)
712.33 ms

All directory totals matched between tools. These ratios apply only to this 10K-file, two-run diagnostic, not to 1M-file workloads or the Linux comparison.

HyperDU vs dua-cli

Local Windows / 2026-09-30 / d4ebdb8

AMD Ryzen 9 3900X · 12 cores / 24 threads · 128 GiB RAM · NTFS / NVMe
Windows 11 · logical size · median of 12 runs per tool · three 100K-file synthetic trees + two real trees

HyperDU vs dua-cli — Elapsed time · shorter is faster
DatasetFilesHyperDUdua-cli 2.45.0Speed ratio
Wide directory tree (synthetic)wide99,85667.57 ms187.37 ms2.77×
Deep directory tree (synthetic)deep100,000179.68 ms194.62 ms1.08×
Flat directory (synthetic)flat100,00098.8 ms997.51 ms10.1×
Cargo registry (real files)cargo-registry107,953478.55 ms554.61 ms1.16×
node_modules (real files)node-modules27,94072.26 ms156.6 ms2.17×

Byte totals from both tools equalled the independent walk on every dataset. HyperDU was faster on all five, but the gap depends on tree shape (1.08-2.77x excluding flat). The deep tree has almost no width to parallelize, so the two are close. The flat figure includes dua printing one row per direct entry (100,001 rows) and is not a representative ratio. Unrelated jobs held the CPU at roughly 60-90% busy during measurement, so absolute times are inflated.

HyperDU / tokei (reference)

Local Windows / 2026-09-30 / different workload

AMD Ryzen 9 3900X · 12 cores / 24 threads · 128 GiB RAM · NTFS / NVMe
Windows 11 · two real trees · median of 12 runs per tool · HyperDU sums sizes, tokei counts lines

HyperDU / tokei (reference) — Elapsed time · shorter is faster
DatasetFilesHyperDUtokei 15.0.0Speed ratio
Cargo registry (real files)cargo-registry107,953478.55 ms9407.19 msNo comparison
node_modules (real files)node-modules27,94072.26 ms782.31 msNo comparison

tokei reads file contents and counts lines, while HyperDU only totals sizes. These are different jobs, so no speed ratio is shown; the times are reference only. tokei parsed 80,897 files in the Cargo registry and 16,576 in node_modules (recognized source extensions only). The synthetic fixtures have no extensions, so tokei parses nothing there and was not timed.

All values are warm-cache medians. Speed ratio is the comparison tool's time (GNU du or dua-cli) divided by HyperDU time; tokei does a different job, so no ratio is shown. Linux uses allocated size; Windows uses logical size. OS, accounting, file counts and run counts differ, so ratios cannot be compared across environments or extended to unmeasured conditions.

See every run and the method ↗Linux GitHub workflow run ↗

02 / UNDER THE HOOD

Fast, from the filesystem up.

Change how metadata is read and how work is shared. Platform-specific reads reduce extra operations; per-worker queues and work stealing distribute traversal across uneven directory trees.

01

Windows

NtQueryDirectoryFile

Batches names, sizes, allocation sizes, and file IDs to reduce additional file opens while scanning large folders.

NTFS · native CI
02

Linux

getdents64 + statx

Reads directory entries and required metadata, then aggregates in parallel. It does not eliminate the I/O needed for accurate sizes.

CLI · GNU du comparison
03

macOS

getattrlistbulk

Bulk metadata reading is implemented, but macOS is outside current CI and release targets. CLI verification remains incomplete.

Implementation · not in current CI

On eligible Windows NTFS volume roots, --mft can try direct reads with the required privileges and options. Incomplete required reads or parsing fall back to enumeration; success does not guarantee complete accounting parity.

Read the architecture ↗

03 / YOUR WORKFLOW

Meet your workflow where it is.

Inspect in a terminal, explore on your desktop, or integrate with an app or agent. Choose the interface and reuse the scanning engine.

Command line

Rank directories and export JSON or CSV. GNU du compatibility mode is available, but not a complete replacement for every du option.

hyperdu . --top 20
hyperdu . --json usage.json
hyperdu --compat gnu -k /var/log

Desktop GUI

See completed child folders while the remaining scan runs. The Windows and Linux GUI offers scan modes, filters, and detailed settings.

hyperdu-gui ↗

Rust library

Embed the independent hyperdu-core library in Rust without launching the CLI. Reuse scanning, aggregation, and platform optimizations.

hyperdu-core ↗

04 / FOR YOUR AGENTS

Give your agent a map of the disk.

From free space to large folders and cleanup candidates, hyperdu mcp provides typed tools and structured results.

All three MCP tools are read-only and never delete files. A candidate is not proof that removal is safe; a person reviews and decides. The Skill also works through the CLI alone.

Set up MCP / Skill / Plugin ↗
01
list_volumes

Which volume is running out of space?

02
scan_path

What is taking up that space?

03
find_reclaimable

Which outputs might be regenerated?

cargo install hyperdu --locked --version 0.5.0-beta.7
codex mcp add hyperdu -- hyperdu mcp

05 / GET STARTED

Start with one directory.

Install the published beta from crates.io. One hyperdu command includes the CLI and MCP server. To run without Rust, choose a Windows or Linux binary from Releases.

cargo install hyperdu --locked --version 0.5.0-beta.7

Cargo source builds need a recent stable Rust (the CLI declares a 1.88 minimum) and platform build tools. Prebuilt binaries do not require Rust to run.

Go a little deeper.