FastRawViewer 1.4.7-1312: очень нуждаемся в тестерах

Многие места в FastRawViewer ожидают, что при чтении данных из текстуры будет прочитано ровно то, что в текстуру записано, без какой-либо обработки ("улучшения")

К сожалению, современные видеокарты/драйвера позволяют включить "улучшение внешнего вида" текстур (Anisotropic filtration, Anti-aliasing) насильно для всех программ (а не только тех приложений, которые запрашивают это у драйвера явно), к еще большему сожалению это может быть включено по-умолчанию (проблема отмечена у Intel HD3000).

Для борьбы с этим:

  • OpenGL (и если поддерживается нужная функциональность): FRV будет использовать расширения
  • ...

FastRawViewer 1.4.7-1309: новый подход к JPEG

В новой версии FastRawViewer (ссылки на скачивание - ниже) полностью переработана идеология работы с JPEG, что позволило увеличить скорость последовательного листания примерно вдвое. Кроме этого, чуть-чуть улучшена скорость работы интерфейса.

Обработка JPEG

Как выяснилось из чтения многочисленных лог-файлов от предыдущей версии, примерно половину времени, от нажатия кнопки следующий файл до собственно показа файла, FastRawViewer занимается распаковкой JPEG-а (если он полноразмерный; если в RAW-файл зашит огрызок, как у Sony, то ситуация много лучше). Это смешно, но показать RAW (особенно если...

Административа

Читающим этот бложик по RSS:

  • После добавления IPv6 адреса к blog.lexa.ru - сломался гугловый фидбернер, через которые RSS-ы и раздавались.
  • Я этого не заметил, был занят OpenGL-программированием, "вроде в читалке RSS что-то появляется - и хорошо"
  • Читатели - указали, спасибо!
  • Убрал AAAA из DNS - фидбернер прочихался
  • И все опять работает.

Что это было и можно ли научить фидбернер ходить по AAAA - не вдавался, мне IPv6 адрес у блога особо и не нужен.

FastRawViewer 1.4.7-1301: и еще быстрее

Как разработчику, мне конечно проще писать changelog, но вот читать их - удовольствие сомнительное. Поэтому новый анонс FRV 1.4.7 ("техническое превью") написан с нуля, а для тех кто читал предыдущие анонсы пишу список изменений:

  • Добавлена настройка GPU Processing - Parallel GPU Data upload (и для CPU и для GPU-режимов), работает только с OpenGL, должно стать несколько быстрее (и в CPU и в GPU режимах)
  • переключаемые режимы CPU-MIX-MIX-GPU-GPU - упрощены,
  • ...

Товарищи ученые, у меня в подполе....

Есть у меня, извиняюсь за выражение, самопальный NAS:

  • M/B Supermicrp X11SSH-LN4F:
    • Intel C236 chipset
    • В ентом чипсете - 8 портов SATA
    • 4x 1GbE LAN
  • + LSI-евский китайский SAS-контроллер на 8 портов (пишет про себя Avago SAS2008)
  • 1 SSD + 7xSATA воткнуты в наплатный контроллер
  • 6xSATA (мелких, 2.5") - в LSI
  • И еще есть Intel X540 китайская, 2x10GbE
  • Питальник на 400вт, должно бы хватать с запасом.

Так вот, начался у меня в какой-то момент подземный стук....

AVX2 speedup

На одном и том же CPU (i7-7700k на базовых частотах), переход с SSE3 на AVX2 дает выигрыш, если по отдельным кускам:

  • Half-демозаика + ББ + цветовая конверсия + тоновая кривая, запись RGB bitmap: 1.97/1.11 sec (SSE/AVX)
  • Half-демозаика + ББ + цветовая конверсия + построение гистограммы: 2.11/1.483
  • Чтение raw-данных (int16), преборазование в float, вычитание черного, построение RAW-гистограммы: 1.78/1.72. Гистограмма - это очень медленно.....

Тестовый набор: 22 файла Sony A7RM2, т.е. ~900Mpix в сумме. Чиселки - CPU time (не wall time, потому что мультитрединг).

Общий выигрыш на всю программу - не больше 10 процентов, потому что уперлись теперь в видеодрайвер (генерация мипмепов, загрузка текстур в видеокарту), все спинлоки - тама.  Надо более продвинутый OpenGL использовать.

 

О размножении сущностей....

Вот возьмем, к примеру, какой-то софт, который хочет работать с RAW.

Базовая функциональность: целочисленный байер из камеры (черный вычтен камерой/не вычтен).

Размножаем сущности раз: просто байер, X-Trans, Super-CCD, полноцветный (3 цвета /sRAW/), BW.

На этом сущности, которые вылезают из камер кончаются, всего - 10 вариантов (даже 9, полноцветные из камеры - вроде везде вычтен черный).

Идем дальше, потому что есть всякие спец-случаи, вылезающие из полуобработанных RAW (HDR и так далее):

  1. Floating point вообще (независимо от цвета: байер, X-Trans, BW,
  2. ...

МГТС/GPON + статический адрес = no IPv6

Хозяйке на заметку: если у МГТС включить статический адрес, то отваливается IPv6.

После всех праздников - попробую таки вступить в сношение с их технарями...

Штатив Gitzo GT4533LS: доведение до ума

Сначала термин: хабом будем называть ту хрень, которая у штатива объединяет ноги.

Так вот, при использовании ног от штатива Gitzo GT4533LS можно пользоваться такими хабами:

  • Родной, сделанный под возможность установки как площадки, так и выравнивающего устройства (шара) диаметром 75мм. Большой, тяжелый и на самом деле не очень хороший (см подробнее ниже). «Бесплатный», продается в комплекте с родными ногами.
  • Markins TH-230. Компактный, легкий, но имеет недостаточную жесткость: ребр жесткости там пожалели.
    Ну и дорогой, 230 евро + доставка
  • ...

И о штативных головах

В прошлом году я купил штативную голову Sunwayfoto XB-52, коей был почти доволен: рукоятка затяжки пана была на заводе собрана неверно и пришлось ее доковывать (что свелось к намазыванию резьбы красным локтайтом - его вполне хватило для). Производителю тогда не жаловался, но узел был проблемный.

Вот только-что пришла еще одна, той же модели (штативы размножаются как кролики).

Проблемный узел переделан совсем:

  • Дырка в этой ручке не сквозная, соответственно при затяжке не может получиться так, что ручка свернется.
  • При вывинчивании - оно не вывинчивается целиком
  • Сама ручка стала больше - и удобнее.

Короче, слушают они своих юзеров - и дорабатывают.

P.S. Хотел для разнообразия купить не XB-52, а что-то другое, но вменяемой альтернативы не нашел.

P.P.S. Разобрал, чтобы посмотреть что там внутри. Предыдущую не разбирал (не помню почему), но разбирал пред-предыдущую, Photoclam PC-54. Так вот, сделано просто зашибись. Если у фотоклама общее впечатление было "говно и палки" (и та же панорамная база работал чудом), то тут все сделано хорошо и солидно.

Попали под лошадь

Сим сообщаю, что адобовский обновлятор (Creative Cloud) прекрасно чувствует себя через IPv6 (без каких-то дополнительных движений).

И сами знаете как (лежат под лошадью) - через v4

Единственное для чего таки нужен альтернативный путь (из используемого) - rutracker, потому что v6-адреса у них нет.

IPv6 дома: как быть с маршрутизацией?

Вынесу из комментариев отдельной записью, потому что иначе мало кто увидит.

Вот у меня есть IPv6 в доме, теперь хочется нормально его маршрутизировать.

Топология

-- МГТС -- (a)[роутер МГТС](b)----(c)[FreeBSD 11 box] -(d,e,f) локальные подсети.

Тут латинскими буквами обозначены интерфейсы.

Что происходит сейчас:

a) - какой-то v6 адрес из транспортной сети МГТС. МГТС знает, что на этот адрес нужно отдавать весь трафик для меня.

[роутер МГТС] - получил от провайдера PrefixDelegation и анонсировал его в сабнет (b-c).

b) какой адрес...

МГТС/IPv6-2, на модеме HG8245T

Скорее записки для памяти, но пусть будут.

Если у вас МГТС-GPON и модем ПлохойПуть HG8245T, то конфигурирование IPv6 (если убрать все тупиковые пути по которым я ходил) сводится к:

  1. Входим как telecomadmin (пароль admintelecom)
  2. WAN - Wan configuration, кликаем в интернетовский VLAN
  3. Скриншотим его на предмет всех параметров.
  4. Удаляем описание VLAN
  5. Создаем такой же, но в режиме IPv4/IPv6
  6. Ставим все параметры так же как были (Vlan ID, MTU, биндинг к LAN-портам, NAT)
  7. IPv6 параметры оставляем по умолчанию.

Все....

МГТС/IPv6

Вот возжелалось мне иметь IPv6 через МГТСовский GPON (судя по форумам, стандартное желание у людей ровно обратное, отключить его нах).

Имею модем HG8245T у которого интернет ходит по VLAN#30 в настройках которой написано "IPv4" и отредактировать это поле нельзя.

Вопрос: а что будет, если старое описание VLAN удавить, создать новую с тем же ID (и прочими настройками) и режимом IPv4/v6?

В принципе, конечно, я могу настройки побэкапить сначала и если что не так - восстановить, только вот бэкап настроек дал...

Про AVX2 и размывание кэшей

Вот наконец удалось ощутить офигенную пользу от AVX2, причем двойную. Вот такой вот код:

_mm256_stream_si256((__m256i *)&drowp[col], _mm256_i32gather_epi32((const int*)table, _mm256_cvttps_epi32(_mm256_load_ps(&srowp[col])), 4));

в 4.5-5 раз быстрее, чем простой SSE2 аналог (в котором, понятно, нет gather) и в ~6 раз быстрее скалярного C-кода:

drowp[col] = table[(unsigned)srowp[col]];

Рассмотрение всего хозяйства под микроскопом показало, что основной взнос в результат дает _mm256_stream, а вовсе не gather. Стоит заменить stream на store, как все сразу портится. По достаточно очевидной причине: длина строки и drowp и srowp -...

AVX(2) data load

Граждане, что-то вот отчаялся понять, отчего может быть так что

Вот так - хорошо, профайлер в этом месте особых тормозов не показывает:

                __m128 p0 = _mm_loadu_ps(source);
                __m128 p1 = _mm_loadu_ps(source + 4);
                __m128 p2 = _mm_loadu_ps(source + 8);

 

А вот так - нехорошо:

                __m256 i0008 = _mm256_loadu_ps(fsrcstart3);
                __m256 i0915 = _mm256_loadu_ps(fsrcstart3 + 8);
                __m256 i1623
...

FastRawViewer 1.4.6: release

FastRawViewer 1.4.6 выпущен ограниченным тиражом ой, пока только на .RU-сайте (бету качали плохо, поэтому наберем тестеров таким способом). На .COM - ориентировочно в четверг-пятницу.

Брать тут: https://www.fastrawviewer.ru/download

Изменения скопирую вот прямо с официального сайта же, зря что ли писал....

...

Про МГТС и GPON

Вот в декабре сменил МГТС-овский тариф на 200 мегабит и как-то не было счастья, ну то есть 15-16 мегабайт/сек регулярно видел, а так чтобы 20-22 - редко.

Даже думал, не надо ли роутер менять с ПлохогоПути на что-то более современное.

Но нет, курсы английского для детей качаются честно на 22MB/sec, по всей видимости мои другие желания - менее общие и просто нужных источников на нужной скорости нет (ну и забугор все шейпят...).

 

FRV 1.4.7 (alpha): режим стандартной отметки файлов

Как знают все постоянные пользователи FastRawViewer, механизм отметки (выборки) файлов там сильно отличается от общепринятого (в Windows Explorer/Mac Finder/далее везде). Главное (и принципиальное) отличие: случайный клик мимо не сносит тщательно сделанную выборку. Это (базовое) отличие автоматически приводит и к другим, например текущий файл не обязан быть отмеченным.

Новые пользователи редко (но регулярно) жалуются на это, им непривычно. Чтобы сделать их жизнь чуть проще, в FRV 1.4.7 мы дополнительно реализовали и стандартный (общепринятый) механизм выборки/отметки. Пока нет планов делать его умолчанием...

FastRawViewer 1.4.6 release candidate

Несмотря на многочисленные отвлечения (1,2,3) от основных продуктов, FastRawViewer тоже не забыт и версия 1.4.6  близка к релизу как никогда ранее.

В прошлом анонсе (первой беты) уже было описано быстрое копирование в подпапку, а сейчас мы сделали еще одну штуку, которая, как мы надеемся, найдет свою аудиторию:

В большинстве цифровых камер можно защитить файл (это обычно называется Protect или Lock) т.е. установить атрибут Read-Only файлу...

Monochrome2DNG: полезный тул для пользователей конвертированных ЧБ камер

Преамбула: ч-б камеры, переделанные из цветных

Наверное не все знают, но есть в природе такие чудные штуки, как "черно-белые цифровые камеры, переделанные из цветных". Смысл в них в том, что байеровских фильтров нет, соответственно не нужен дебайер, соответственно нет артефактов дебайеризации.

Нет, есть и "настоящие", которые прямо с завода такие (лейки и фазаны), но речь именно о переделках.

У переделок - остается родная прошивка, которая о переделке не в...

LibRaw 0.19 (Beta1)

LibRaw 0.19 (beta1) (github)- это не только ценный мех, но и:

  • 1014 поддержаных камер
  • улучшенная обработка вложенных IFD в DNG
  • улучшенный разбор метаданных разных вендоров
  • улучшенная обработка превьюшек
  • вызов open_bayer для тех самоделкиных, кто дамп данных с сенсора имеет уже в памяти и без метаданных.
  • отсутствие поддержки LibRaw-demosaic-pack-GPLn, вместо них теперь сделаны callbacks, надеюсь что найдутся энтузиасты, которые demosaic packs прикрутят новым методом (а не через #ifdef как раньше).

Прошу любить, тестировать и жаловаться.

Pages

Subscribe to blog.lexa.ru: все статьи