Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14

FileCompressor Technical Preview build 13073 (ProgramId 2 not full)

01.03.2019, 17:03. Показов 1814. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дорогие пользователи форума CyberForum! Прошу оценить новое мое творение - не супергигантское, но сравнительно большое обновление компрессора файлов! Оно является прямым продолжением этой и этой версий, поэтому подробно описывать не буду. Как и в прошлый раз, напишу список изменений:
1. В десятки, сотни, а иногда и в тысячи раз увеличена скорость сжатия. Теперь пиковая замеченная мной скорость составляет 1.5 ГБ/ч. Впрочем, на текстах разница намного меньше, так как Лемпель-Зив ускорился всего в несколько раз, и в случае, если Хаффман и E-RLE (смотрите ниже) не сжали файл в несколько десятков раз, занимает 95% времени. Упомянутое мной в предыдущей аналогичной теме изображение теперь сжимается за 5 секунд, а что касается пустой и цветной клеток - я не успеваю открыть часы после того, как щелкну по файлу. Что касается сжатия Destroying of Figures 1.bmp предыдущей версией - два раза я пытался это сделать, и два раза компрессор вылетел.
2. Появились новые методы сжатия - E-RLE, кодирующий не только повторные, но и неповторные серии (полностью заменил RLE), BWT, MTF и Хаффман для слов. Вследствие этого, существенно увеличилось количество однобитных гарантий - еще немного, и оно перепрыгнет через байт! Как можно видеть во втором прикрепленном архиве (по техническим причинам результаты распались на 3 файла), в основном на файлах достаточного размера степень сжатия увеличилась. Также добавилось много новых файлов, сжатие которых стало возможным благодаря ускорению и исправлениям.
3. Немного увеличилась форма компрессора, добавилась кнопка "Открыть для пересжатия" (пока не работает) и примитивные настройки - можно менять время сжатия и включать полную проверку (по умолчанию выключена для ускорения). Заранее предупреждаю, что степень сжатия не всегда прямо зависит от времени.
4. По просьбе Usaga я отказался от C++/CLI и перешел на C#.
5. К сожалению, одно из обещаний, данных в теме про первое обновление, оказалось невыполненным и уже невыполнимым - распаковывать файлы, сжатые первой версией FileCompressor, больше нельзя. При попытке это сделать высвечивается соответствующее сообщение.
6. Прозрачный фон надписей на полосах загрузки я сделать не смог, а подписать их хотелось, поэтому пришлось сделать компромиссный вариант - надписи непрозрачные, но занимают не всю высоту полос, посередине можно видеть надписи, а сверху и снизу - прогресс сжатия.
7. Опять же из-за ускорения, я убрал обращение к статусной полосе загрузки в каждой итерации цикла, и теперь она может заполняться скачками, зависать и быть рассинхронизированной с полной и текущей.
8. Убрано консольное окно.
9. Существенно увеличились требования к памяти. Теперь для сжатия "Гигантским" временем файла размером 10 КБ памяти требуется 1.2 ГБ, так что слабый компьютер сжатие большого файла может вообще не потянуть. Впрочем, после достижения этого порога - 1.2 ГБ - рост требований к памяти резко замедляется.
10. Суровая реальность такова, что возникли серьезные проблемы с распаковкой. И теперь, выражаясь языком теории вероятностей, событие "при распаковке компрессор вылетит" является практически достоверным (вероятность около 99.999%, а если один раз вылетел на данном файле, то при неограниченном количестве повторных попыток распаковать его же - 100%).
Что появится в третьем обновлении:
1. Распаковать файлы, сжатые первой версией, будет нельзя уже никогда. Единственный выход - скачать первую версию и распаковать ею, а затем сжать новой.
2. Будет оптимизирован порядок методов, что в некоторых случаях увеличит как скорость, так и степень сжатия.
3. Надеюсь, распаковка файлов наконец будет более вероятна.
4. Есть небольшая вероятность, что появятся еще какие-либо методы, а значит, и "Супергигантское" время сжатия.
Предупреждение для желающих оценить компрессор: прошу сравнивать не только с всемирно известными компрессорами/архиваторами, а и с предыдущими версиями FileCompressor - мне кажется, программа улучшилась существенно, хотя, конечно, до уровня ZIP мне еще далеко.
Вложения
Тип файла: rar FileCompressor Technical Preview build 13073.rar (25.7 Кб, 13 просмотров)
Тип файла: zip FileCompressor.zip (15.57 Мб, 15 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.03.2019, 17:03
Ответы с готовыми решениями:

Перестала работать кнопка пуск в Windows 10 Pro Technical Preview Build 9926
Дела такое. Перестала работать кнопка пуск вообще. Походу залипание происходит из-за каких то проблем с реестром. ...

Windows 10 Technical Preview доступна для скачивания
Как и было обещано на прошедшем мероприятии с предварительным анонсом Windows 10, публичная ранняя сборка (Technical Preview) новой версии...

Новые возможности консоли CMD в Windows 10 Technical Preview
Windows 10: новые возможности и функции в командной строке Microsoft недавно представили предварительную версию Windows 10 для...

21
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 19:44
Автор хоть проверяешь свои поделки?

Комп 12 потоков 5Gh (хотя смотрел - походу прога использует 1 поток процентов на 20 максимум)

Итог: кинул mp3 файл на 1.3 метра

После 2 часов мне надоело ждать что там прога делает (она не зависла)

Вернее сказать я забыл про неё, а потом вспомнил через 2 часа - посмотрел а она ещё работает Закрыл нафиг.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 19:49  [ТС]
Цитата Сообщение от developer123 Посмотреть сообщение
mp3 файл на 1.3 метра
1.3 метра - это сколько килобайт/мегабайт? А то я не знаю этого сленга. И кроме того, mp3 файлы и так сильно сжаты, и поэтому несжимаемы. Лучше попробуйте сжать какой-нибудь текст на несколько десятков килобайт версиями 13052 и 13073, и сравните. Например, хоть и Program log.txt из второго архива.
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 19:50
1 прога вообще не работает?

Прога закрывается - файла сжатого нет.

Добавлено через 48 секунд
1,3 мегабайта. Т.е. по современным реалям - вообще ничто.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 19:51  [ТС]
"1 прога" - это что такое? Версия 13052?
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 20:00
Попробовал сжать 1 прогой html файл 252k

На этот раз не сдохла. Результат - 119k. время примерно 5с

Сделал архив 7z. Результат 40k - 7z сделал архив мгновенно.

Поставил максимальное сжатие - прога похду ушла в своё многочасовое блуждание. Выключил.

Поставил время сжатия огромное - результат 124k

Вобщем в чём смысл существования проги?

Добавлено через 37 секунд
1 прога в списке стартового поста
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:04  [ТС]
Цитата Сообщение от developer123 Посмотреть сообщение
Вобщем в чём смысл существования проги?
Смысл - в перспективности. Попробуйте сравнить время сжатия версий 13073 (первый архив) и 13052 (можно найти во втором архиве или по второй ссылке под словом "этой").
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 20:07
Зная что mp3 сжатый формат - но ради прикола сжал mp3 размером 4255k

Так 7z умудрился его сжать ещё чуть чуть 4172k

И сделал это мгновенно

Добавлено через 2 минуты
Поясню про вопрос смысла

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

Сегодня размер дискового пространства уже потерял всякий смысл. Флешки вон microSD на 1Т уже делают.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:12  [ТС]
Хорошо. Тогда напишите - как можно искать совпадения в Лемпеле-Зиве иначе, кроме как полным перебором? И если не хотите сравнить ДВЕ версии, напишу - время сжатия File.html из второго архива 13052 - полчаса, 13073 - 14 секунд. Это не прогресс?
0
Эксперт .NET
 Аватар для Usaga
14138 / 9366 / 1350
Регистрация: 21.01.2016
Сообщений: 35,219
01.03.2019, 20:23
Цитата Сообщение от developer123 Посмотреть сообщение
Вобщем в чём смысл существования проги?
В том, чтобы ПРОДАВАТЬ!!!

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
9. Существенно увеличились требования к памяти. Теперь для сжатия "Гигантским" временем файла размером 10 КБ памяти требуется 1.2 ГБ, так что слабый компьютер сжатие большого файла может вообще не потянуть. Впрочем, после достижения этого порога - 1.2 ГБ - рост требований к памяти резко замедляется.
10. Суровая реальность такова, что возникли серьезные проблемы с распаковкой. И теперь, выражаясь языком теории вероятностей, событие "при распаковке компрессор вылетит" является практически достоверным (вероятность около 99.999%, а если один раз вылетел на данном файле, то при неограниченном количестве повторных попыток распаковать его же - 100%).
Нет никакого (от слова совсем) смысла выкладывать программу, которая жрёт овер дофига памяти, работает часами, а потом вылетает, при попытке распаковать свои архивы. Кому это может быть интересно? Ладно бы в природе вообще архиваторов не было...
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 20:26
Не хотел писать пр очевидные вещи, но раз не понимаете - напишу.

Лемпеле-Зиве - говно алгоритм. (детали не знаю и знать не хочу - сужу по тому как он сжимает и сколько времени требует)

Берите другой.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:31  [ТС]
Usaga, то, что вылетает при распаковке - это временно. То, что работает часами - я уже писал:
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
время сжатия File.html из второго архива 13052 - полчаса, 13073 - 14 секунд
Прогресс налицо, и надеюсь, будет продолжаться и дальше, и в шестом обновлении время уже будет допустимым.
Цитата Сообщение от developer123 Посмотреть сообщение
Лемпеле-Зиве - говно алгоритм.
Лемпель-Зив - один из самых главных алгоритмов сжатия, используется в той или другой версии почти во всех компрессорах/архиваторах. Просто я, вероятно, чего-то не знаю, если у меня он работает так медленно.
0
Эксперт .NET
 Аватар для Usaga
14138 / 9366 / 1350
Регистрация: 21.01.2016
Сообщений: 35,219
01.03.2019, 20:35
developer123, это хороший алгоритм. Он лежит в основе всех популярных архиваторов. Другое дело как его реализуют разные умельцы. Вы на основе чего решили, что это фиговый алгоритм?

Добавлено через 2 минуты
Etyuhibosecyu, не важно временно или нет. Не имеет смысла выкладывать падучее говно. Никто это не оценит. Вообще никто. Доведите приложение до умеренно стабильного состояния, потом выкладывайте.

Вы же на полностью управляемый язык перешли. Как при этом можно такой хлам падучий выкладывать? Это же не С++, где чудеса разнородные можно славливать. Тут вам CLR на любой чих исключение кидает с трейсом.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:35  [ТС]
Usaga, вы тоже не знаете, как реализовать этот алгоритм быстро? Может, быть, хоть ссылку дадите? А то правила рекомендуют не отсылать других пользователей в поиск...
0
Эксперт .NET
 Аватар для Usaga
14138 / 9366 / 1350
Регистрация: 21.01.2016
Сообщений: 35,219
01.03.2019, 20:36
Etyuhibosecyu, я вам уже говорил про открытые исходники zlib, которая уделывает ваше авторское поделие на раз-два?
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 20:36
Да я хотел написать - или вы не умеете его готовить, но не стал прикидываться мистером КЕП.

И вообще алгоритмы 100% восстановления никому сейчас уже не нужны - в том смысле что математически уже походу достигнуты пределы давно.

А вот сжатие видеоконтента, аудиоконтента, не знаю там всякие гейм виртуальная реальность. Вот где можно денег заработать.

Кстати на хабре сегодня статья была про архиваторы. И коментов там было 0. Видимо никому не интересны архиваторы

вот статья
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:38  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Etyuhibosecyu, я вам уже говорил про открытые исходники zlib, которая уделывает ваше авторское поделие на раз-два?
Я скачал их, но там столько методов вызывают друг друга, что прыгать по ним я устал.
0
Эксперт .NET
 Аватар для Usaga
14138 / 9366 / 1350
Регистрация: 21.01.2016
Сообщений: 35,219
01.03.2019, 20:39
Etyuhibosecyu, тогда сидите и изобретайте свой новый классный архиватор)
0
107 / 65 / 0
Регистрация: 20.08.2013
Сообщений: 321
01.03.2019, 20:42
Цитата Сообщение от Usaga Посмотреть сообщение
Вы на основе чего решили, что это фиговый алгоритм?
Да я вообще не решал ничего - просто ищу пути заставить автора хоть каким то способом увидеть, что то что он сделал мягко сказано полная фигня. Если автор не признаётся что сделал лажу то возможно утверждение что алгоритм говно, не так сильно ударит по самооценке.

Хотя мне честно всё равно - автор выложил прогу получить критику. Он её получил. Что делать дальше - его проблема.
1
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 180 / 41
Регистрация: 13.07.2017
Сообщений: 4,603
Записей в блоге: 14
01.03.2019, 20:48  [ТС]
Цитата Сообщение от developer123 Посмотреть сообщение
автор выложил прогу получить критику. Он её получил.
Согласен. Получил. Пойду дальше улучшать, может быть, в третьем обновлении уже будет сжимать Властелина колец за 5 минут, а в четвертом-пятом - за минуту...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.03.2019, 20:48
Помогаю со студенческими работами здесь

Win 8.1 build 9600 распознаётся как Windows 8 build 9200
Проблема с версией. Win 8.1 build 9600 распознаётся как Windows 8 build 9200 . Проверил ток что . #include <windows.h> ...

Почему в Eclipse неактивно действие Build Project и Build All?
Доброго времени суток) У меня вопрос такой: почему в Eclipse неактивно действие Build Project и Build All?

Новые свойства Version Information: ProgramID
В XE 10.2 (может быть, раньше) в настройках проекта "Include Version Information" появилось новое свойство ProgramID, имеющее значение по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru