Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.11.15;
Скачать: CL | DM;

Вниз

Упаковка (сжатие) исполняемых файлов - за и против   Найти похожие ветки 

 
TIF ©   (2009-09-05 23:15) [40]

> Для таких случаев zip придумали :)

zip уже малоэффективен. Лучше уж тогда cab, а ещё лучше 7z


 
Игорь Шевченко ©   (2009-09-05 23:20) [41]

Иногда я жалею, что вычислительная техника перестала быть уделом избранных :)


 
Кто б сомневался ©   (2009-09-05 23:21) [42]


>  По-моему, бред (если у меня нет ошибки в рассуждениях),
>  ведь при запуске всё будет распаковано в ОЗУ... Лишние
> выкрутасы.


Народ, вы забыли что при старте exe или dll проецируется в память, что есть практически то же самое - сейчас памяти у большинства от 2 ГБ.
На средние системы ставят уже 4 ГБ. Почему бы не уменьшить размер, если это никак не повлияет на производительность (какие то миллисекунды).


 
KilkennyCat ©   (2009-09-05 23:25) [43]


> Игорь Шевченко © (05.09.09 23:20) [41]


и ремонт телевизоров!


 
turbouser ©   (2009-09-05 23:27) [44]


> Игорь Шевченко ©   (05.09.09 23:20) [41]

Иногда все об этом жалеют..


 
Kerk ©   (2009-09-05 23:37) [45]


> TIF ©   (05.09.09 23:15) [40]
>
> > Для таких случаев zip придумали :)
>
> zip уже малоэффективен. Лучше уж тогда cab, а ещё лучше 7z

Что значит "уже малоэффективен"? И чем ты на среднестатистической машине собрался распаковывать 7z?


 
sniknik ©   (2009-09-05 23:54) [46]

насчет uTorrent-а и упаковщиков, личный опыт так сказать
http://delphimaster.net/view/3-1164735877/


 
sniknik ©   (2009-09-06 00:00) [47]

p.s. после этого у них была еще одна известная проблема с упаковщиком, они его меняли, уже с NOD32. (и это даже не вторая и не последняя. просто одна из известных)


 
TIF ©   (2009-09-06 00:05) [48]

> Что значит "уже малоэффективен"?

Появились более совершенные алгоритмы сжатия данных
В принципе, zip тоже неплох, если упаковка шла через 7-zip:
Для форматов ZIP и GZIP, архиватор 7-Zip предлагает сжатие которое в 2-10 % лучше чем сжатие предоставляемое архиваторами PKZip и WinZip

> И чем ты на среднестатистической машине собрался распаковывать
> 7z?

Среднестатистическая - это какая?
Если
> сейчас памяти у большинства от 2 ГБ
> На средние системы ставят уже 4 ГБ.

то при установке программы не грех выделить для распаковки 7z-архива:
66 МБ при ультра-сжатии
34 МБ - максимальном //Золотая середина
18 МБ - нормальном
3 МБ - быстром или скоростном

Для распаковки обычного zip надо 2 МБ :)

Embarcadero (Codegear), Adobe (адобе плохой пример, у них системные требования выше) и многие другие уже давно используют 7-zip. Пользователи вроде не жалуются. Хотя черт его знает, может для кого-то выделение лишних 34 МБ для установки Photoshop - нормальное явление, а для установки маленькой программки - нонсенс... Однако ОЧЕНЬ сомневаюсь, что кто-то устанавливает софт в моменты, когда 90% оперативной памяти уже занято, поэтому проблем с применением 7z быть не должно


 
Kerk ©   (2009-09-06 00:10) [49]


> TIF ©   (06.09.09 00:05) [48]
> Среднестатистическая - это какая?

Среднестатистическая - это чей владелец про 7zip даже не слышал, зато распаковка zip у него поддерживается на уровне ОС.


 
KilkennyCat ©   (2009-09-06 00:14) [50]


> Kerk © (06.09.09 00:10) [49]


Абсолютно согласен.


 
KilkennyCat ©   (2009-09-06 00:15) [51]

Добавлю, что даже pdf далеко не все могут (знают как) прочитать.


 
Хитрий Лис   (2009-09-06 00:19) [52]


> Кто б сомневался ©   (05.09.09 23:21) [42]
> сейчас памяти у большинства от 2 ГБ. На средние системы ставят уже 4 ГБ.

Покорнейше простите - но у меня несколько другая статистика...

На нашем предприятии несколько сотен компьютеров, из них больше половины старше 5-ти лет, т.е. на этих машинах стоит 256МВ памяти и очень редко 512МВ. Клиенских машин с памятью больше 1024МВ практически нет. Если не считать два сервера, на которых 16Гиг, но там никто софт вручную не запускает :)

Не знаю по поводу Москвы, но в провинции ситуация не такая радужная, причем не только по предприятиям, но и по домашние компам...


 
TIF ©   (2009-09-06 00:25) [53]

> чей владелец про 7zip даже не слышал

Самое главное не написал :)
Функционал для распаковки естественно таскается с собой. Это оправданно* для распаковки больших архивов, или же для ситуации, которую уже описал выше: частые обновления программы

*Оправданно = размер кода, используемого для извлечения файлов из архива, окупается с избытком размером сэкономленных при сжатии байтов


 
Kerk ©   (2009-09-06 00:29) [54]


> TIF ©   (06.09.09 00:25) [53]

Ты самое главное таки забыл.
Подобная упаковка не имеет ничего общего с сжатием исполняемых файлов тулзами типа UPX, с которого ты начал этот топик :)


 
Игорь Шевченко ©   (2009-09-06 00:34) [55]

Кстате о 7-zip-е - надыть бы запаковать файл порциями по 4,6х Гб, дабы на болванки его пописать. Размер файла 283 гига. Цель - уложить файл на наименьшее количество болванок за приемлемое время (не больше 16 часов)

Имеется 7-zip file manager 4.65
Что бы лучше выбрать в качестве метода сжатия, уровня сжатия (как оно по времени соответствует), размера словаря, размера слова, размера блока, числа потоков ?

Inter core duo 2.33 ГГц, 2 Гб памяти


 
TIF ©   (2009-09-06 00:43) [56]

> Подобная упаковка не имеет ничего общего с сжатием исполняемых
> файлов тулзами типа UPX, с которого ты начал этот топик
> :)

Ну так тема постепенно перетекла в другое русло, где-то вот здесь:
Kerk ©   (05.09.09 23:06) [38]
> > Небольшая программа, которая очень часто дорабатывается,
> >  совершенствуется, обновляется. Желательно всех пользователей
> > держать на самой последней версии. Если придётся каждый
> > раз выкачивать exe по 5 МБ, вместо 1 МБ в упакованном виде,
> >  сомневаюсь что процент тех, кто захочет не обновляться,
> >  будет маленьким.
>
> Для таких случаев zip придумали :)

Это скорее не потеря нити, а наоборот правильный ход мыслей: UPX (и прочие) в чистом виде - не панацея, однако в примеси с другими способами (тот же 7z) уже полезная штука
Точнее даже так, получается: UPX - это яд, но в малых дозах - лекарство :)


 
Kerk ©   (2009-09-06 00:48) [57]


> TIF ©   (06.09.09 00:43) [56]
> Это скорее не потеря нити, а наоборот правильный ход мыслей:
>  UPX (и прочие) в чистом виде - не панацея, однако в примеси
> с другими способами (тот же 7z) уже полезная штука

Начал за здравие, кончил за упокой :)
Действительно. Zip и прочие нужно использовать вместо UPX и подобных. Самому же UPX место на свалке, потому что никаких плюсов он не дает, а минусы имеет.


 
Кто б сомневался ©   (2009-09-06 01:05) [58]


> Имеется 7-zip file manager 4.65
> Что бы лучше выбрать в качестве метода сжатия, уровня сжатия
> (как оно по времени соответствует), размера словаря, размера
> слова, размера блока, числа потоков ?


Метод сжатия lzma - дает лучшие результаты в большинстве случаев.
Для вас лучше поставить размер словаря -  8 мб (между Fast и Normal). Потоки по дефолту (2 на двухядерный) . Либо можно поставить на сжатие и посмотреть примерное время до окончания.
Solid Block Size - если в будущем не надо будет залезать в архив чтобы вытащить один файл, тогда максимум - 64gb  - сжатие будет лучше. Но если залезть в архив - тогда будет распакован блок размеров 64 гига, чтобы вытащить те файлы что указаны.
Иначе 4 или 2 - но сжатие раза в 1,5 -2  упадет.

7z дольше пакует чем тот же rar. Но это еще зависит от типа файлов. Фильм будет дольше паковатся чем текст.


 
Игорь Шевченко ©   (2009-09-06 01:19) [59]

Кто б сомневался ©   (06.09.09 01:05) [58]

Спасибо, поставил значения LZMA, 16Mb словарь, 64GB размер блока (у меня в архиве один файл), говорит, 31 час будет думать.

Файл у меня ближе к текстовому, чем к фильму, gzip его сжимал до 58 гиг (из 283), я надеюсь, что 7-zip мне пожмет получше.

Попробовал поставить метод сжатия bzip2, пишет, что степень сжатия 14% (против 8% у LZMA), но думать обещает 27 часов.


 
TIF ©   (2009-09-06 01:35) [60]

Скорость сжатия в среднем будет примерно такая (для текстовых файлов будет по минимальному значению или даже меньше):
Ультра:12-20 минут на гигабайт // 56 часов для 283 ГБ
Нормальный: 7-15 минут на гигабайт // 33 часа
Скоростной: 5-8 минут на гигабайт // 24 часа

7-12 минут - со словарём в ~12 МБ

Парадокс: быстрое сжатие медленнее нормального (в два раза). По крайней мере у меня так, хотя у меня и 7-zip 9.07 beta, может причина в этом


 
Германн ©   (2009-09-06 01:52) [61]


> Упаковка (сжатие) исполняемых файлов - за и против

Радикально против.


 
KilkennyCat ©   (2009-09-06 01:57) [62]


> Кстате о 7-zip-е - надыть бы запаковать файл порциями по
> 4,6х Гб, дабы на болванки его пописать. Размер файла 283
> гига. Цель - уложить файл на наименьшее количество болванок
> за приемлемое время (не больше 16 часов)


может, имеет смысл вычислить среднюю степень сжатия, после чего разбить файл на куски, и сжимать каждый в отдельности (или по нескольку сразу, смотря скока ресурсов)?


 
Кто б сомневался ©   (2009-09-06 02:18) [63]


> Спасибо, поставил значения LZMA, 16Mb словарь, 64GB размер
> блока


Там кстати можно поставить Solid - архив будет цельным блоком, это еще лучше.


 
Игорь Шевченко ©   (2009-09-06 02:30) [64]

KilkennyCat ©   (06.09.09 01:57) [62]


> может, имеет смысл вычислить среднюю степень сжатия, после
> чего разбить файл на куски, и сжимать каждый в отдельности
> (или по нескольку сразу, смотря скока ресурсов)?


Разбить на куски я его могу tar-ом, пропустив вход для него через gzip/bzip2, но хочется под виндой. А распараллеливать нет смысла - диск для подобных манипуляций у меня один, дергать головами особого смысла не вижу. Я даже не могу назначить архив на другой диск - места нету :)

Завтра с утра запущу 7-zip, если за день не отмучается, буду дальше думать.


 
Кто б сомневался ©   (2009-09-06 02:36) [65]

ДА разбить его можно и Тотал коммандером (наверное и фаром) - File > Split File


 
KilkennyCat ©   (2009-09-06 02:39) [66]


> А распараллеливать нет смысла

ну, я тож так думаю... но вдруг? :) я обычно пробую экспериментально.


 
Кто б сомневался ©   (2009-09-06 02:41) [67]

НО смысла разбивать не вижу (если только для проверки), т.к. архив получится меньше раза в 2, а так ровно под диск DVD.


 
Игорь Шевченко ©   (2009-09-06 02:46) [68]

Кто б сомневался ©   (06.09.09 02:36) [65]


> ДА разбить его можно и Тотал коммандером (наверное и фаром)
> - File > Split File


Глупый вопросы -
1. зачем ?
2. сколько это займет времени - переписывание 283 гиг покусочно?

И еще - у меня собственно нет лишних 283 гиг под куски. У меня на всех 14 логических дисках хорошо, если в сумме 200 гиг свободно.


 
KilkennyCat ©   (2009-09-06 02:46) [69]


> Кто б сомневался © (06.09.09 02:41) [67]


я имел ввиду потом куски сжать. возможно, в два потока. либо меньший объем архиватору легче будет сторить словарь или что-то еще... смутно представляю себе его работу. Т.е.  мое предложение с целью минимизировать общее время. Учитывая такое количество, даже если 10% экономии - уже существенно.


 
KilkennyCat ©   (2009-09-06 02:47) [70]


> 2. сколько это займет времени - переписывание 283 гиг покусочно?


написать утилиту, которая разобъет не переписывая :)
Вообщем, да. глупое предложение вышло.


 
KilkennyCat ©   (2009-09-06 02:52) [71]

А вот интересно: винды поддерживают сжатые диски. Можно ли скопировать файл с сжатого диска в его сжатом виде?


 
TIF ©   (2009-09-06 04:05) [72]

> Кто б сомневался ©   (05.09.09 20:09) [4]
> Есть одно НО. Некоторые антивирусы, у которых плохая
> поддержка пакеров, - а таких сейчас много (ввсе хотят сделать
> свой антивирус пофиг что базы обновляются фэйком.. :) )
>  часто видят трояна\вирус в упакованных файлах. Вот только
> это одно но.

Поставил эксперимент по уменьшению этого НО :)
Обычно все упакованные UPX-ом программы на вирустотале детектируют по базам два антивируса. Оказывается, можно снизить это число аж до одного...

Опция --all-filters
http://tinyurl.com/upx-all-filters
1/41

Опция --all-methods
http://tinyurl.com/upx-all-methods
Опции --all-filters --all-methods
http://tinyurl.com/upx-all-filters-all-methods
2/41

eSafe ругается в любом случае, зато McAfee-GW-Edition уже не ругается


 
Германн ©   (2009-09-06 04:14) [73]

Пока так и не услышал ничего о полезности "упаковки" исполняемых файлов.
Кроме "передачи" их по И-нету. С чем zip и иже с ним справляется вполне нормально.
Имхо.


 
Игорь Шевченко ©   (2009-09-06 11:25) [74]

KilkennyCat ©   (06.09.09 02:52) [71]


> А вот интересно: винды поддерживают сжатые диски. Можно
> ли скопировать файл с сжатого диска в его сжатом виде?


Можно, из другой операционной системы


 
McSimm ©   (2009-09-06 12:17) [75]


> Можно, из другой операционной системы

а распаковать потом можно?


 
sniknik ©   (2009-09-06 12:31) [76]

Кто б сомневался ©   (06.09.09 02:18) [63]
> Там кстати можно поставить Solid - архив будет цельным блоком, это еще лучше.
насколько понимаю, солид лучше для кучи файлов, за счет неудобного после "разжатия" т.к. он считает всю цепочку файлов за один.
а для одного это будет без разницы.

Игорь Шевченко ©
да возьми ты rar, при хорошем сжатии (по умолчанию) у него время сжатия не пример меньше. чего именно в 7z упираться?


 
12 ©   (2009-09-06 13:27) [77]

7z бесплатен, много форматов
но скорость сильно падает при увеличении степень сжатия.
Каждый день архивирую около 30ГБ(БД mssql), командной строкой, -mx6, в формат zip
6.2 / 6.3 ГБ в результате
за 3 часа примерно.
Ставил больше - -mx7, 8 .. чуть не в 2 раза время увеличивалось
а результат не очень..


 
Игорь Шевченко ©   (2009-09-06 13:59) [78]

sniknik ©   (06.09.09 12:31) [76]

ты гарантируешь, что rar сожмет лучше и быстрее ?


 
vrem   (2009-09-06 14:00) [79]

>283 гигабайта
я бы купил винчестер. 16 часов резать, прожигать по 20 минут на болванку это себя не уважать. 30$ цена.
ну или выкрутил бы диск где лежит сейчас этот файл.


 
boriskb ©   (2009-09-06 14:38) [80]


> я бы купил винчестер.


А на самом деле, Игорь.
Не расскажешь ли конечную цель своего предприятия?



Страницы: 1 2 3 вся ветка

Текущий архив: 2009.11.15;
Скачать: CL | DM;

Наверх




Память: 0.65 MB
Время: 0.016 c
15-1253050186
Nic
2009-09-16 01:29
2009.11.15
Москвичи!!!


2-1254227370
Aleks
2009-09-29 16:29
2009.11.15
Реестр и StringToColor


15-1252788017
Nic
2009-09-13 00:40
2009.11.15
Купить своё авто


2-1254387158
TRSteep
2009-10-01 12:52
2009.11.15
Работа с web (парсинг)


2-1254139608
dplz
2009-09-28 16:06
2009.11.15
Прозрачный color на label е, возможно?