Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.11.15;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.63 MB
Время: 0.009 c
8-1199890749
AlexanderMS
2008-01-09 17:59
2009.11.15
Воспроизвести WAV из части файла.


1-1223964035
jiny
2008-10-14 10:00
2009.11.15
TNTForm ; TWideCaption- не воспринимает казахский язык


8-1200386810
barakuda
2008-01-15 11:46
2009.11.15
изменение размера jpg


1-1224746986
gameus
2008-10-23 11:29
2009.11.15
Как заставить чужое приложение двигаться


2-1254421987
Семён. А
2009-10-01 22:33
2009.11.15
Как модифицировать функцию? + Array





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский