Car-tech

Google post compression code Zopfli upang mapabilis ang pag-download

Elegant Compression in Text (The LZ 77 Method) - Computerphile

Elegant Compression in Text (The LZ 77 Method) - Computerphile

Talaan ng mga Nilalaman:

Anonim

Ang Google ay bukas-sourcing ng isang bagong general purpose data compression library na tinatawag na Zopfli na maaaring magamit upang mapabilis ang pag-download ng Web.

Ang Zopfli Compression Algorithm, na nakuha ang pangalan nito mula sa isang Swiss bread recipe, ay isang pagpapatupad ng algorithm ng compression ng Deflate na lumilikha ng mas maliit na sukat ng output kumpara sa mga nakaraang diskarte, sinulat Lode Vandevenne, isang software engineer sa Google's Compression Team, sa Google Open Source Blog noong nakaraang linggo.

"Ang mas maliit na laki ng compressed ay nagbibigay-daan para sa mas mahusay paggamit ng espasyo, mas mabilis na paghahatid ng data, at mas mababang latency ng pag-load ng pahina ng Web. Bukod dito, ang mas maliit na laki ng compressed ay may mga karagdagang benepisyo sa paggamit ng mobile, tulad ng mas mababang data transfer fee at pinababang paggamit ng baterya, "Van sinulat ni devenne.

Ang mas malawak na mga diskarte sa compression na ginamit ay nakakamit ang mas mataas na densidad ng datos ngunit gumagawa din ng compression ng maraming mas mabagal. Ito ay hindi nakakaapekto sa bilis ng decompression, bagaman, isinulat ni Vandenne.

Zopfli ay isang compression-only library at umiiral na software na maaaring magamit upang mabulok ang data, sinabi niya. Ang Zopfli ay tugma sa mga kahilingan ng Zip, PNG, gzip at HTTP bukod sa iba pa, Idinagdag ni Vandevenne.

Sa paglaganap ng partikular na pag-download ng video, ang Google at iba pang mga serbisyo ay nagsasaliksik ng mga paraan upang mapalakas ang compression. Nakuha ng Google ang On2, isang kompyuter na teknolohiya ng kompresyon ng data, noong 2009. Ang paggawa ng browser ng Opera ay nagpo-refine din ng mga function ng compression.

Resource-hinihingi ngunit epektibo

Ang output ni Zopfli ay karaniwang 3 porsiyento hanggang 8 porsiyento na mas maliit kumpara sa zlib, isa pa compression library batay sa Deflate compression algorithm, ayon kay Vandevenne. "Kami ay naniniwala na ang Zopfli ay kumakatawan sa estado ng sining sa Deflate-compatible compression," sabi niya.

"Ang compressor na ito ay tumatagal ng mas maraming oras (~ 100x mas mabagal), ngunit compresses sa paligid 5 porsiyento mas mahusay kaysa sa zlib at mas mahusay kaysa sa anumang iba pang zlib -magkatugma na tagapiga na aming natagpuan, "sinabi ng Google sa pahina ng Google Code ng Zopfli. Ang code ay makukuha sa ilalim ng Apache License 2.0.

Gayunpaman, ang bagong compression library ay nangangailangan ng dalawa hanggang tatlong beses na mas maraming CPU time kaysa zlib sa maximum na kalidad. Samakatuwid, ito ay pinaka-angkop para sa mga application kung saan ang data ay naka-compress nang isang beses at ipinadala sa network ng maraming beses, tulad ng static na nilalaman para sa Web, sinabi Vandevenne.

Vandevenne at ang kanyang kasamahan Jyrki Alakuijala, isang Google software engineer na nagtrabaho din sa ang proyektong ito, inirerekumenda sa kanilang papel na pananaliksik upang gamitin ang Zopfli "para sa compression ng static na nilalaman at iba pang nilalaman kung saan ang paglipat ng data o mga gastos sa imbakan ay mas makabuluhan kaysa sa pagtaas sa oras ng CPU."

"Sa pamamagitan ng bukas na sourcing Zopfli, mas mahusay na i-optimize ang laki ng madalas na naka-access na static na nilalaman, umaasa kaming gawing mas mabilis ang Internet para sa lahat sa amin, "sinabi ni Vandevenne.