Engineered for speed

Everything a modern download manager should do. And then some.

ZDM was rebuilt from the ground up around asynchronous I/O and adaptive scheduling - the same ideas that power the tools you already love, without the bloat.

Asynchronous, non-blocking I/O

Network reads and disk writes use async APIs, so ZDM never waits on a slow disk or a slow connection. Full speed, zero stalling.

Direct seek-and-write

The file is pre-sized and each block is written at its final offset. No temporary part files, no merge step at the end. Files under 4 MB still use the part-file path.

Parallel, ordered writes

Finished blocks wait in an in-memory queue and are written in ascending file order, two writes at a time.

Blocks that grow with the file

Small files use 2 to 4 MB blocks, rising to 16 MB (from 1 GiB), 32 MB (from 16 GiB) and 64 MB (from 128 GiB). A 500 GB file needs about 8,000 requests, not about 125,000.

2 MB → 64 MB

Up to 64 parallel connections

A memory budget (default 256 MB) caps block size while connections max out throughput.

Adaptive scheduling

Fast connections get bigger blocks, slow ones are dropped and replaced, and faster mirrors get more blocks. Idle fast connections duplicate the last stragglers.

Unsafe buffering, made safe

Buffer.allocUnsafe() with guarantees: a block is written to disk only after every byte has been overwritten by received data. Partial blocks are never written, and buffers are recycled.

Worker threads

Network and disk work run off the main thread, so the window stays responsive. Hashing has its own worker, with a fallback if it can't start.

HTTP/1.1 + HTTP/2 (ALPN)

Connections are kept alive, TCP_NODELAY is set, and HTTP/2 flow-control windows are enlarged to 8 MB per stream and 64 MB per session for full-speed multiplexing.

8 MB / 64 MB windows

Everything that IDM has

Browser takeover, a redrawn icon set, a new tabbed Options window, an About window, installer and workflow fixes, and many more features that IDM has.