Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Активные темы » Zstandard | zstd

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12

Открыть новую тему     Написать ответ в эту тему

Fenrizz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Zstandard — алгоритм сжатия данных без потерь, разрабатываемый с 2015 года Яном Колле (фр. Yann Collet) при поддержке Facebook'а; zstd — эталонная реализация алгоритма Zstandard на языке программирования Си под свободной лицензией BSD. Версия 1.0 алгоритма и реализации были представлены в конце августа 2016 года[5][6].  
 
Сочетает словарный алгоритм сжатия данных типа LZ77 и эффективное энтропийное кодирование типа tANS (FSE — Finite State Entropy), алгоритм, сходный с кодом Хаффмана, реализующий нецелое количество бит для хранения символов[7][8].  
 

 
GitHub - https://facebook.github.io/zstd  
Release v1.5.6 - https://github.com/facebook/zstd/releases/tag/v1.5.6
Total Commander plugin - http://franke.ms/download/wcx_zstd_1_1_3_5.zip
https://github.com/facebook/zstd/blob/dev/programs/zstd.1.md
https://manpages.ubuntu.com/manpages/focal/en/man1/zstd.1.html

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 20:25 25-05-2020 | Исправлено: lelik007, 23:00 30-03-2024
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lelik007

Цитата:
В Windows программа стала еще более user friendly.

починили

Всего записей: 2908 | Зарегистр. 11-10-2005 | Отправлено: 04:55 11-02-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В 1.5.2  было
https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-v1.5.2-win32.zip
https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-v1.5.2-win64.zip
 
В 1.5.4 стало
https://github.com/facebook/zstd/releases/download/v1.5.4/zstd-v1.5.4-win64.zip
 
Версии для win32 нету. Это конечная для неё, или они её позже выкладывают?
 
Добавлено:
Помните старый анекдот про pkunzip.zip ?
Эти загнались точно так же
https://github.com/facebook/zstd/releases/download/v1.5.4/zstd-1.5.4.tar.zst

Всего записей: 16767 | Зарегистр. 04-11-2010 | Отправлено: 05:16 11-02-2023
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
да ёклмн... ну не нравится - не пользуй. чего бред то писать? все там есть.
https://github.com/facebook/zstd/releases/download/v1.5.4/zstd-1.5.4.tar.gz

Всего записей: 2908 | Зарегистр. 11-10-2005 | Отправлено: 06:24 11-02-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GoblinNN
Цитата:
все там есть
Что есть?
Если ты под линуха - то да, я это видел. Но улыбает же упаковка самого себя в себя.
Или ты где-то нашёл 32-битку под винду, которую я не наблюдаю?

Всего записей: 16767 | Зарегистр. 04-11-2010 | Отправлено: 06:33 11-02-2023 | Исправлено: insorg, 06:34 11-02-2023
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Или ты где-то нашёл 32-битку под винду,

мне оно не надо у меня 64 битная винда. проблем нет.

Всего записей: 2908 | Зарегистр. 11-10-2005 | Отправлено: 06:40 11-02-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да у меня, в принципе тоже, но надо понимать - оставлять у себя версию 1.5.2 ради 32-битки, или можно смело старую выбрасывать...

Всего записей: 16767 | Зарегистр. 04-11-2010 | Отправлено: 06:43 11-02-2023
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
напиши сюда все свои вопросы и хотелки.

Всего записей: 2908 | Зарегистр. 11-10-2005 | Отправлено: 06:49 11-02-2023
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mithridat1

Цитата:
То есть целью авторов является создание быстрого и эффективного алгоритма для распаковки пакетов инсталляции, а не очередного "убийцы" RAR или 7Zip ?

создание возможной замены gzip, bzip2 и т.п.. К конкуренции с 7z или rar это мало имеет отношение. Использование zstd как алгоритма в zip, 7z это больше побочное явление.

Всего записей: 7341 | Зарегистр. 08-09-2001 | Отправлено: 10:55 11-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А все ж чуть потестил, ну каждый тест упаковки медленнее на 1-2 секунды, может конечно распаковка стала быстрее, но она и была быстрая.
 
Добавлено:
GoblinNN
Спасибо, я читал ответ Yanna.

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 12:20 11-02-2023
neorion

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg

Цитата:
Помните старый анекдот про pkunzip.zip ?
Эти загнались точно так же
https://github.com/facebook/zstd/releases/download/v1.5.4/zstd-1.5.4.tar.zst

Меня тоже это улыбнуло. Но там в tar.gz и tar.zst исходники.
Сначала я tar.gz не видел (копипастил из примеров арча) и оказалось как в анекдоте.
 
Добавлено:
Хотя, ничего странного. У многих ведь уже есть какая-то версия zstd.
 
Добавлено:

Цитата:
Версии для win32 нету. Это конечная для неё, или они её позже выкладывают?

Если они стали собирать msys'ом, то скорее всего официальной 32 битной версии больше не будет. Msys официально поддерживает и рекомендует только 64 бита. Хотя, 32 битный msys еще существует, запрятан только далеко и может быть не очень свежий.

Всего записей: 448 | Зарегистр. 02-10-2022 | Отправлено: 13:44 11-02-2023 | Исправлено: neorion, 13:50 11-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я вот не совсем понял про многопоточность, в готовых бинарниках msys2 1.5.2 есть pzstd.exe - но у него зависимостей столько, не смог запустить. А для 1.5.4 - есть zstdmt. Он что может быть многопоточный или нет? Или вот я читал что у него вроде пока match finder не очень многопоточный. А готовый на github для Windows какой?
neorion
А почему вы без многопоточности собрали?  

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 14:52 11-02-2023
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lelik007,

Цитата:
zstdmt is equivalent to zstd -T0
...
-T#, --threads=#: Compress using # working threads (default: 1). If
           # is 0, attempt to detect and use the number of physical CPU cores.
           In  all cases, the nb of threads is capped to ZSTDMT_NBWORKERS_MAX,
           which is either 64 in 32-bit mode, or 256 for 64-bit  environments.
           This  modifier does nothing if zstd is compiled without multithread
           support.


Всего записей: 7341 | Зарегистр. 08-09-2001 | Отправлено: 15:36 11-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Хм, да дело в том, что у меня любая программа рисует
загрузку всех ядер. Только с zstdmt чуть большую. Я пробовал zstdmt
msys2 результат то же получился по времени и обьему памяти.

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 15:59 11-02-2023
neorion

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lelik007

Цитата:
А почему вы без многопоточности собрали?

С ней не получается, ошибка при линковке. Я кросскомпилил из линуха. Есть подозрение, что он пытается использовать pthread линуксовый и получается ошибка.
Но это только в 1.5.4 что-то изменили.
1.5.2 собирается с mt, правда тогда не запускается на XP:
Точка входа в процедуру InitializeConditionVariable не найдена в библиотеке DLL KERNEL32.dll.

Всего записей: 448 | Зарегистр. 02-10-2022 | Отправлено: 18:41 11-02-2023 | Исправлено: neorion, 18:42 11-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
neorion
То есть вы прямо в GCC собирали, даже не в MinGW?  
Интересно, ее нельзя собрать в VS 2022 или Intel C/C++ Compiler?
Или то же самое и будет?

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 20:00 11-02-2023
neorion

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lelik007
Mingw у меня установлен. Я использовал cmake и meson с такими тулчайнами:
cmake
meson
 

Код:
cmake -DCMAKE_TOOLCHAIN_FILE=mingw.cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/zstd


Код:
meson --cross-file i686-w64-mingw32.txt .. --prefix=/zstd --libdir=lib -Dbuildtype=release -Ddefault_library=static -Dstrip=true

 
Visual Studio вроде тоже поддерживается (через cmake, может). Но, если нужна поддержка XP, нужна Студия 2017 с XP тулчайном. А старый Mingw изначально поддерживает XP.
Я не против поиграться со Студией, но куда мне ставить эту жирноту?

Всего записей: 448 | Зарегистр. 02-10-2022 | Отправлено: 21:35 11-02-2023 | Исправлено: neorion, 21:36 11-02-2023
metatrop

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
1.5.2 собирается с mt, правда тогда не запускается на XP:  
Точка входа в процедуру InitializeConditionVariable не найдена в библиотеке DLL KERNEL32.dll.
 

 
Запустить официальный 32-битный zstd.exe на XP/2003 не составляет труда. Делается это методом OneCoreAPI (см. версии WinRAR > 6.02 для NT5). Нужно положить файлы KERNELOC.dll, NTEXT.dll, PSAPI.dll рядом с zstd.exe в отдельной директории (для подобных программ). zstd.exe подвергнуть правке:
 
repls.exe -wk -i "KERNEL32.DLL[0]" "KERNELOC.dll[0]" zstd.exe
miniperl.exe -Sx textop.bat -it -pelaa:1 -pess:5.1 -pechk:1 zstd.exe
 
Заодно устанавливается бит LargeAddressAware (что это не сделано при компиляции - большое упущение), дабы zstd.exe мог использовать до 3 ГБ памяти в режиме boot.ini /3GB в x32 ОС, и до почти 4 ГБ в любой x64 ОС.
 
Для случая NT6 x32 (или x64) ОС замену строчки "KERNEL32.DLL" на "KERNELOC.dll" делать не следует (не будет запускаться!), только LargeAddressAware установить, да пересчитать контрольную сумму.
 
Работает zstd -T2 --ultra -21 ... для очень большого файла, забирая до 2.4gb памяти. В три -T3 или четыре -T4 потока с уровнем компрессии -21 даже 3-4 ГБ памяти не будет хватать в случае больших файлов. С уровнем -20 можно в 4 потока на x32.
 
Что интересно, качество упаковки в режиме -T2 не только не ухудшилось в сравнении с однопоточным, но архивы получились просто побайтово идентичные.

Всего записей: 314 | Зарегистр. 17-09-2010 | Отправлено: 09:03 12-02-2023 | Исправлено: metatrop, 09:18 12-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
neorion
Да уж VS - здоровая штука. XP если честно не видел уже лет 5, да и системы 32-бита нет в обозримом
пространстве. Но, собирать я смотрю не просто этот ZSTD.
los
Увидел я многопоточность, спасибо, оказывается не кол-во ядер задействованных увеличивается, а нагрузка на все ядра, то есть - T1,2,3 - 30%,60%,90%.

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 12:49 12-02-2023 | Исправлено: lelik007, 13:05 12-02-2023
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lelik007

Цитата:
Но, собирать я смотрю не просто этот ZSTD.  

под *nix вроде как проще уже некуда.
 

Цитата:
Увидел я многопоточность

там еще занятный параметр ввели

Цитата:
--auto-threads={physical,logical} (default: physical): When using a
           default amount of threads via -T0, choose the default based on  the
           number of detected physical or logical cores.

Всего записей: 7341 | Зарегистр. 08-09-2001 | Отправлено: 13:39 12-02-2023
lelik007



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
Это как раз фишка была в zstdmt - если -v написать,
там в выводе команды - "4 physical cores is detected" - типа того.

Всего записей: 2772 | Зарегистр. 13-10-2006 | Отправлено: 15:52 12-02-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12

Компьютерный форум Ru.Board » Компьютеры » Программы » Активные темы » Zstandard | zstd


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru