Skocz do zawartości
Zamknięcie Forum PC LAB

Szanowny Użytkowniku,

Informujemy, że za 30 dni tj. 30 listopada 2024 r. serwis internetowy Forum PC LAB zostanie zamknięty.

Administrator Serwisu Forum PC LAB - Ringier Axel Springer Polska sp. z o.o. z siedzibą w Warszawie: wypowiada całość usług Serwisu Forum PC LAB z zachowaniem miesięcznego okresu wypowiedzenia.

Administrator Serwisu Forum PC LAB informuje, że:

  1. Z dniem 29 listopada 2024 r. zakończy się świadczenie wszystkich usług Serwisu Forum PC LAB. Ważną przyczyną uzasadniającą wypowiedzenie jest zamknięcie Serwisu Forum PC LAB
  2. Dotychczas zamowione przez Użytkownika usługi Serwisu Forum PC LAB będą świadczone w okresie wypowiedzenia tj. do dnia 29 listopada 2024 r.
  3. Po ogłoszeniu zamknięcia Serwisu Forum od dnia 30 października 2024 r. zakładanie nowych kont w serwisie Forum PC LAB nie będzie możliwe
  4. Wraz z zamknięciem Serwisu Forum PC LAB, tj. dnia 29 listopada 2024 r. nie będzie już dostępny katalog treści Forum PC LAB. Do tego czasu Użytkownicy Forum PC LAB mają dostęp do swoich treści w zakładce "Profil", gdzie mają możliwość ich skopiowania lub archiwizowania w formie screenshotów.
  5. Administrator danych osobowych Użytkowników - Ringier Axel Springer Polska sp. z o.o. z siedzibą w Warszawie zapewnia realizację praw podmiotów danych osobowych przez cały okres świadczenia usług Serwisu Forum PC LAB. Szczegółowe informacje znajdziesz w Polityce Prywatności

Administrator informuje, iż wraz z zamknięciem Serwisu Forum PC LAB, dane osobowe Użytkowników Serwisu Forum PC LAB zostaną trwale usunięte ze względu na brak podstawy ich dalszego przetwarzania. Proces trwałego usuwania danych z kopii zapasowych może przekroczyć termin zamknięcia Forum PC LAB o kilka miesięcy. Wyjątek może stanowić przetwarzanie danych użytkownika do czasu zakończenia toczących się postepowań.

elenorf

Forumowicze
  • Liczba zawartości

    16
  • Rejestracja

  • Ostatnia wizyta

Odpowiedzi dodane przez elenorf


  1. Polskie kodowanie od kilku miesięcy jest w jądrze Linuxa (od 4.14): https://www.phoronix.com/scan.php?page=news_item&px=Linux-4.14-Zstd-Pull

    Niedługo będzie w naszych mailach - trwa standaryzacja MIME ( https://en.wikipedia.org/wiki/MIME ): https://datatracker.ietf.org/doc/draft-kucherawy-dispatch-zstd/

     

    Szkoda że nie ma jakiegoś wideo które łatwo by je tłumaczyło ...

     

    ps. patent gugła wstępnie odrzucony, ale oczywiście walczą dalej: https://encode.ru/threads/2648-Published-rANS-patent-by-Storeleap?p=54339&viewfull=1#post54339


  2. Tyle to umiem odczytać z etykiet. Ale skąd się np. biorą różne kropki w ramach tego samego kompresora, czym się od siebie różnią?

    Jak napisałem, 22 kropki odpowiadają ustawieniu które wybierasz: od -1 do -22. Tradeoff między kosztem i stopniem kompresji.

    W gzip miałeś 9 możliwości: od -1 do -9, więc jest 9 kropek.

    Z oryginalnego artykułu o zstd: https://code.facebook.com/posts/1658392934479273/smaller-and-faster-data-compression-with-zstandard/

    "At Facebook, we find the default level 3 suitable for many use cases, but from time to time, we will adjust this slightly depending upon what our bottleneck is (often we are trying to saturate a network connection or disk spindle); other times, we care more about the stored size and will use a higher level."

     

    Żadnym ekspertem od kompresji nie jestem, ale uczyli mnie, że współcześnie kody Huffmana to już raczej nie rdzeń a bardzie dodatkowa kompresja pomocnicza. Tak, że na pewno postęp, ale raczej nie przełom.

    Kodowanie entropijne (Huffman, arytmetyczne, teraz ANS) to jest jakby serce kompresora.

    Wcześniej masz różne transformacje, jak Lempel-Ziv w zip, rar, zstd: kopiujesz powtarzające się podciągi, np. https://pl.wikipedia.org/wiki/LZ78

    Potem zliczasz wystąpienia symboli żeby oszacować prawdopodobieństwa (modelowanie statystyczne) i na końcu "pompujesz" tą całą informację przez koder entropijny - który optymalnie powinien użyć log(1/p) dla symbolu o prawdopodobieństwie p (zna zamodelowane prawdopodobieństwa).

    Huffman używa pełnych bitów, przybliżając prawdopodobieństwa potęgami 1/2 - dając nieoptymalną kompresję.

    Arytmetyczne i ANS używają praktycznie dokładnych prawdopodobieństw - potrafią operować na ułamkowych bitach dzięki specjalnemu buforowi (przedział w arytmetycznym, jedna liczba naturalna w ANS).

     

    Przed 2014 to finalne "przepompowanie informacji" było Huffmanem (szybkie ale niedokładne) lub kodowaniem arytmetycznym (dokładne ale kosztowne).

    Natomiast nowe kompresory robią to ANS który jest dokładny i szybki ... no i z Polski.


  3. Obrazek to z open source kompresora Facebook zstd - po lewej masz szybkość kompresji (kropki to wybrany parametr od 1 do 22): od np. 4x szybciej niż standardowy zlib (zip-y), aż do znacznie lepszej maksymalnej kompresji ... potem dekodowanie jest ze 3x szybsze niż dla zip.

    Jest 7-zip z zstd: https://github.com/mcmilk/7-Zip-zstd/releases

     

    Na poziomie kodowania "entropijnego" (serce kompresorów), w 2013 state-of-art dla dekodowania Huffmana (m.in. zip, rar, jpg, png, mp3, pdf) to było ~200MB/s rdzeń i7, dla arytmetycznego (lepsza kompresja, m.in. współczesne kompresory wideo, LZNA (7-zip, xz)) rzędu 50MB/s.

    Obecnie implementacje Huffmana przyśpieszyły do ~1000MB/s na tym samym procesorze ... a ANS (kompresja jak w arytmetycznym) do ~1500MB/s.

    Czyli ~30x przyśpieszenie na poziomie software w ciągu 3 lat dla podstawowej czynności: https://sites.google.com/site/powturbo/entropy-coder


  4. Chyba wszyscy informatycy słyszeli o kodowaniu Huffmana - jest ono szybkie ale niedokładne (przybliża prawdopodobieństwa potęgami 1/2), lepszy stopień kompresji daje kodowanie arytmetyczne, tyle że jest znacznie bardziej kosztowne obliczeniowo (potrzebuje mnożenia).

    Okazuje się że od 2014 nowe kompresory są oparte już na innym kodowaniu (ANS), które pochodzi z Uniwersytetu Jagiellońskiego - jest ono dokładne i tanie obliczeniowo (nie potrzebuje mnożenia):

    Wikipedia: https://en.wikipedia.org/wiki/Asymmetric_Numeral_Systems

    wiadomość z UJ: http://www.uj.edu.pl/wiadomosci/-/journal_content/56_INSTANCE_d82lKZvhit4m/10172/134381865

    materiały: http://encode.ru/threads/2078-List-of-Asymmetric-Numeral-Systems-implementations

     

    Przykładowo obecnie domyślny kompresor Apple (LZFSE), czy open-source kompresor z Facebook (Zstandard), który ma aspiracje do wyparcia standardowego gzip/zlib (zip-y) jako że jest kilkukrotnie szybszy i pozwala na znacznie lepszą kompresję:

    https://github.com/facebook/zstd

    ZSTD.png

×
×
  • Dodaj nową pozycję...