?

Log in

No account? Create an account
nyaload

Журнал Пушыстого

Журнал Пушыстого

Previous Entry Share Flag Next Entry
ZDXT.
nyaload
_winnie
Провёл эксперимент, насколько лучше жмётся zlib-ом DXT1 из DDS, если разделить цвета от индексов. Получилось, что лучше на 10%, мне такое не очень интересно (надо писать быстрый код на C, причем допонительно для DXT2-5, и очень подробно разбираться с сюрфейсами и заголовком внутри DDS).
Если у кого-то это -10% времени чтения с DVD и типа очень важно, то вот быстронаписаный говноскрипт который проводит подсчёты.
Вообще на моих тестовых картинках zlib уменьшает размер DXT1 в полтора раза, вот это несложно и представляет интерес.


  • 1
Развей мои сомнения... Использование сжатия при чтении HDD на всех моих тестах давало лишь просадку в скорости (LZO в том числе). Сжатие необходимо лишь при чтении с CD/DVD?

Ну вот как показал сейчас тупой синтетический тест - zlib у меня декомпрессится со скоростью 100 выходных мегабайт в секунду. Это где-то раза в два больше скорости чтения с моего ЖД. То есть, числа одного порядка, и расжимается быстрей чем читается.

Значит, всё зависит от конкретной аппаратуры, очень сильно зависит сделали ли мы параллельно чтение и расжатие (а не последовательно), учли ли мы кеш файловой системы. Если проц многоядерный, скорость распаковки можно увеличивать (если будет затык не в памяти).

В моём тесте где коэфициент сжатия был 0.7, скорость HDD - 40 метров/сек, а скорость расжатия 100 метров/сек был бы профит.





С год назад я пробовал LZO (который фришный) -- DXT жалось местами чуть ли не вдвое. Скорость померять было очень проблемно из-за системного кеша.

Попробовать на диске (круглом и блестящем) до сих пор не сложилось. Если успею -- попробую в деле на текущем псп-проекте (ну или на пс3 с LZOpro), на глаз смысл должен быть тем более на пс3, где распаковку зашвырнуть на спу можно.

когда я возился на эту тему, то пробовал не zlib, а quad. у него степень сжатия выше, и сам алгоритм достаточно несложный, чтобы быть эффективным. погугли на "quad", может, пригодится. надо только исходники причесать. :)

  • 1