{"id":170618,"date":"2026-05-11T18:24:52","date_gmt":"2026-05-11T16:24:53","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/openzl-0-2-0"},"modified":"2026-05-11T18:24:52","modified_gmt":"2026-05-11T16:24:53","slug":"openzl-0-2-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/no\/blog\/news\/openzl-0-2-0","title":{"rendered":"OpenZL 0.2.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23395\/original.png\">           <img decoding=\"async\" alt=\"OpenZL 0.2.0\" src=\"\/wp-content\/uploads\/2026\/05\/5a95eacd080df4ddd86f1cc2d2af0762.jpg\" style=\"display:block;margin: 0 auto;\" \/>         <\/a>                <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23396\/original.png\">           <img decoding=\"async\" alt=\"OpenZL 0.2.0\" src=\"\/wp-content\/uploads\/2026\/05\/e654044b14efa48eb39324fa8a242458.jpg\" style=\"display:block;margin: 0 auto;\" \/>         <\/a>                                              <noindex>          <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23395\/original.png\" class=\"active\"><\/a><\/noindex>                                                      <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23396\/original.png\"><\/a>                                     <noindex><\/p>\n<p>Etter syv m\u00e5neder med utvikling ble versjon 0.2.0 av rammeverket lansert. <a rel=\"nofollow\" href=\"https:\/\/openzl.org\">OpenZL<\/a>, designet for \u00e5 lage tapsfrie datakompressorer.<\/p>\n<p><\/noindex> <\/p>\n<p>Rammeverket best\u00e5r av et grunnleggende bibliotek og verkt\u00f8y for \u00e5 lage spesialiserte kompressorer, beskrevet p\u00e5 spr\u00e5ket <a rel=\"nofollow\" href=\"https:\/\/openzl.org\/sddl\">SDDL<\/a>.<br \/> For \u00e5 lage en god spesialisert kompressor er det to trinn:<\/p>\n<ol>\n<li>Analyse av data for \u00e5 utvinne struktur.<\/li>\n<li>Bruk av gode backend-kompressorer, som benytter den utvunnede strukturen for \u00e5 oppn\u00e5 god kompresjon.<\/li>\n<\/ol>\n<p>OpenZL tilbyr verkt\u00f8y for begge trinnene.<\/p>\n<p>Prosjektet er skrevet i C og C++ og distribueres under BSD-lisens.<\/p>\n<h5>Viktige endringer<\/h5>\n<p><strong>SDDL2<\/strong><\/p>\n<p>SDDL har blitt fullstendig redesignert fra bunnen av for \u00e5 oppn\u00e5 de m\u00e5lsetningene som ble lagt ut i designet. Mens den opprinnelige demoen var et forenklet kj\u00f8ringsmilj\u00f8, er SDDL2 en fullt utviklet kompilator: parseren sender data til den semantiske analysatoren, som deretter sender det typiserte abstrakte syntakstreet (AST) til optimalisatoren, og optimalisatoren styrer kodegeneratoren som genererer bytekode for den virtuelle maskinen.<\/p>\n<p>Det viktigste resultatet er umiddelbar syntaktisk analyse. N\u00e5r posisjonen til en post kan bestemmes utelukkende basert p\u00e5 parametere og konstanter, g\u00e5r motoren direkte til ethvert felt uten \u00e5 skanne de foreg\u00e5ende byte, noe som gir tilgang uten kopiering og b\u00e5ndbredde p\u00e5 flere GB\/s.<\/p>\n<p>Spr\u00e5ket har utviklet seg sammen med verkt\u00f8ysettet. N\u00e5 st\u00f8tter det when-blokker for betingede plasseringer, parametiserte og anonyme poster, tilgang til felts medlemmer samt bit- og logiske operatorer.<\/p>\n<p>N\u00e5r det gjelder utviklerens komfort, identifiserer det semantiske analysetrinnet n\u00e5 usikre referanser, typekonflikter og aritmetikkfeil ved kompilering \u2013 med spesifikasjon av plassering i kildekoden \u2013 og ikke under kj\u00f8ring, i tillegg til at det er utgitt en VS Code-utvidelse for syntaksutheving av .sddl-filer.<\/p>\n<p><strong>Den nye innebygde LZ-kodeken<\/strong><\/p>\n<p>I OpenZL har n\u00e5 inkludert en egen LZ-kodek, presentert som ZL_GRAPH_LZ, samt en profil for sekvensiell kompresjon i verkt\u00f8yet zli. Arbeidet med kodeken fortsetter: funksjonaliteten utvides og ytelsen forbedres ved behandling av sm\u00e5 inngangsdata. S\u00e5 langt st\u00f8tter den funksjonalitet som tilsvarer zstd niv\u00e5 1, med et kompresjonsvindu p\u00e5 64 KB.<\/p>\n<p> <noindex><\/p>\n<p>OpenZL gir mulighet til \u00e5 omdanne hvert trinn i LZ-pipelinen for \u00e5 \u00f8ke hastigheten. Den grafiske arkitekturen lar ogs\u00e5 kombinere trinnene for entropikoding i stedet for \u00e5 bruke en enkelt pipeline som passer like godt for alle bruksomr\u00e5der. Deretter kan flere trinn sl\u00e5s sammen til \u00e9n operasjon for \u00e5 \u00f8ke behandlingshastigheten. Dette gj\u00f8r det mulig for OpenZL \u00e5 oppn\u00e5 10 % h\u00f8yere kompresjonshastighet og 70 % h\u00f8yere dekompresjonshastighet sammenlignet med Zstandard niv\u00e5 1 p\u00e5 Silesia. <a rel=\"nofollow\" href=\"https:\/\/gist.github.com\/terrelln\/412cda99d1e54126477219cacf38c971\">i v\u00e5re tester<\/a>:<\/p>\n<p><\/noindex> <\/p>\n<table>\n<thead>\n<tr>\n<th><strong>Kompressor<\/strong><\/th>\n<th><strong>Kompresjonsforhold<\/strong><\/th>\n<th><strong>Kompresjonshastighet<\/strong><\/th>\n<th><strong>Dekomprimeringshastighet<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>OpenZL LZ niv\u00e5 1<\/td>\n<td>2.74<\/td>\n<td>466 MB\/s<\/td>\n<td>2288 MB\/s<\/td>\n<\/tr>\n<tr>\n<td>Zstd niv\u00e5 1 med 64K vindusst\u00f8rrelse<\/td>\n<td>2.74<\/td>\n<td>419 MB\/s<\/td>\n<td>1254 MB\/s<\/td>\n<\/tr>\n<tr>\n<td>Zstd niv\u00e5 1<\/td>\n<td>2.89<\/td>\n<td>424 MB\/s<\/td>\n<td>1345 MB\/s<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>St\u00f8tte for sv\u00e6rt store inngangsdata<\/strong><\/p>\n<p>zli st\u00f8tter n\u00e5 behandling av enorme datainnganger (i flere gigabyte). F\u00f8r komprimering deles slike data automatisk opp i h\u00e5ndterbare biter (som standard omtrent 16 MB), noe som bidrar til \u00e5 begrense mengden brukt minne, forbedre datalokaliseringen, og \u00e5pner for muligheter for parallell behandling. I SDDL2 er det implementert en lignende funksjon for automatisk bitering ved arbeid etter plan. Nye eller oppdaterte segmentatorer har blitt laget for CSV, Parquet og standard numeriske data, og alle segmentatorer er n\u00e5 serialiserbare og konfigurerbare, slik at den valgte oppsetningen kan lagres i kompressoren og gjenbrukes senere.<\/p>\n<p>Dette brukes s\u00f8ml\u00f8st under komprimering. V\u00e6r oppmerksom p\u00e5 at treningspipen er forskjellig og forblir uendret, s\u00e5 den er ikke ment for \u00e5 ta imot gigantiske inngangsdata som treningsmateriale.<\/p>\n<p><strong>Forbedringer i online grafvisualiseringen (<a rel=\"nofollow\" href=\"https:\/\/openzl.org\/tools\/trace\">pr\u00f8ve<\/a>)<\/strong><br \/> N\u00e5 gjenkjenner visualiseringen komprimerings- og dekomprimeringstracer fra start til slutt.<\/p>\n<p>Str\u00f8mforh\u00e5ndsvisningspanelet lar deg se byte-str\u00f8mmen som faktisk g\u00e5r gjennom hver kant, og med klippkontroller forblir selv store str\u00f8mmer enkle \u00e5 h\u00e5ndtere.<\/p>\n<p>Innstillingspanelet samler alle visningsalternativer p\u00e5 ett sted, mens det komplette settet av hurtigtaster \u2013 navigering i retninger, ordnet gjennomgang, utvidelse og sammentrekning, valg av noder \u2013 gj\u00f8r det enkelt \u00e5 bruke verkt\u00f8yet uten mus.<\/p>\n<p>N\u00e5 har sporingene versjoner, blokkbasert komprimering vises korrekt, og zli kan endelig generere egne spor med de nye flaggene --trace og --trace-streams-dir.<\/p>\n<p><strong>Diverse<\/strong><\/p>\n<ul>\n<li>Flere kodeker har blitt lagt til katalogen. Kodekene Partition og bitpack bruker n\u00e5 en kombinert dekoder. Kodekene Floating-point bitsplit har spesialiserte kodere og dekodere for fp16-, fp32-, fp64- og bf16-formater med spesialiserte akselerasjoner. Det er lagt til rekkeviddebasert splitting (split_byrange), lengdemultiplexer, kodek sentinel, graf lz4, og sm\u00e5 hjelpfunksjoner som tryParseInt og splitByParam.<\/li>\n<li>API-en er ordnet.<\/li>\n<li>Fuzzing-testing er forbedret.<\/li>\n<li>Bygge- og pakkeprosessene er forbedret for flere plattformer.<\/li>\n<\/ul>\n<p>Kilde: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/opensource\/18286976\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0441\u0435\u043c\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a 0.2.0 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 OpenZL, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0435\u0437 \u043f\u043e\u0442\u0435\u0440\u044c. \u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 SDDL. \u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u0430 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u044d\u0442\u0430\u043f\u0430: \u0410\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u043e\u0440\u043e\u0448\u0438\u0445 \u0431\u044d\u043a\u0435\u043d\u0434-\u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0441\u0436\u0430\u0442\u0438\u044f. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":170619,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-170618","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\".\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/no\/blog\/news\/openzl-0-2-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"nn_NO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47OpenZL 0.2.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\".\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/no\/blog\/news\/openzl-0-2-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-05-11T16:24:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-05-11T16:24:53+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47OpenZL 0.2.0 | ProHoster","description":".","canonical_url":"https:\/\/prohoster.info\/no\/blog\/news\/openzl-0-2-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nn_NO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47OpenZL 0.2.0 | ProHoster","og:description":".","og:url":"https:\/\/prohoster.info\/no\/blog\/news\/openzl-0-2-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-05-11T16:24:53+00:00","article:modified_time":"2026-05-11T16:24:53+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/170618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/comments?post=170618"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/posts\/170618\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/media\/170619"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/media?parent=170618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/categories?post=170618"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/no\/wp-json\/wp\/v2\/tags?post=170618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}