Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ushitora-anqou/zipar
https://github.com/ushitora-anqou/zipar
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/ushitora-anqou/zipar
- Owner: ushitora-anqou
- License: mit
- Created: 2024-08-15T13:31:24.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2024-08-18T01:59:48.000Z (5 months ago)
- Last Synced: 2024-08-18T04:37:10.280Z (5 months ago)
- Language: OCaml
- Size: 14.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ZipAr
ZipAr is a fast alternative to `zip -0 -r --symlinks`.
It does **NOT** compress any files; instead,
it simply combines them into a single zip file,
using multiple threads for maximum speed.## A quick benchmark
I ran a benchmark comparing zip(1) and ZipAr
on my setup (Ubuntu 24.04 LTS, Intel Core i7-8700, 32GiB RAM)
using ten 1GB files.```
$ mkdir bench
$ cd bench
$ seq 10 | while read i; do fallocate -l 1G $i; done
$ time zip -0 -r ../zip . > /dev/null
zip -0 -r ../zip . > /dev/null 21.03s user 7.18s system 99% cpu 28.232 total
$ time zipar run ../zip2 .
../_build/default/bin/main.exe run ../zip2 . 14.67s user 18.52s system 315% cpu 10.529 total
```As you can see, ZipAr ran about **2.7 times faster** than zip(1).
Of course, this is a quick benchmark, and I plan to run
more thorough benchmarks soon.## How to setup your environment to develop zipar
Install opam >= 2.2.0 (for `--with-dev-setup`). Then:
```
cd zipar
make setup-dev
make
make test
```