文件名称:fzcat:带有 mmap 和 miniz 的快速 zcat
文件大小:89KB
文件格式:ZIP
更新时间:2024-07-20 06:22:59
C++
猫猫 带有和快速 zcat 我偶然注意到将 mmap、miniz 和 C++11 线程一起使用我可以比 pigz 更快地对多个文件进行 zcat,因此我决定为那些可能从中受益的人单独发布代码。 怎么更快 首先,miniz 是 zlib 的快速实现。 其次,我们使用和管道,而不是使用和直接进入 miniz。 然后我们将输出写入缓冲区并将其直接写入标准输出。 这减少了内存被复制的次数,从而提高了性能。 它有多快 运行 189 个文件,每个文件大约 20MB Warming up by catting all files to /dev/null zcat 107.95278143882751 parallel_zcat 42.61844491958618 pigz 55.39036321640015 parallel_pigz 42.56399941444397 fzcat 28.7991
【文件预览】:
fzcat-master
----.gitignore(242B)
----README.org(2KB)
----src()
--------decompressor.cpp(4KB)
--------decompressor.h(849B)
--------main.cpp(2KB)
----LICENSE(1KB)
----3rdparty()
--------miniz()
----premake4.lua(576B)
----test()
--------perftest.py(2KB)
--------validationtest.py(1KB)