Size: a a a

pro.graphon (and gamedev)

2020 April 24

AT

Anatoly Tomilov in pro.graphon (and gamedev)
источник

AT

Anatoly Tomilov in pro.graphon (and gamedev)
из-за отсутствия restrict такая оптимизация может отсутствовать в автоматическом порядке
источник

AT

Anatoly Tomilov in pro.graphon (and gamedev)
вообще такого говнокода стоит избегать почти всегда
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Anatoly Tomilov
ну у тебя ручное разворачивание цикла привело к том, что не addss, а addps стали эмиттиться?
Нет, просто цикл не смог развернуться из-за компилятора (MSVC). Изначальный код не оптимизировался потому, что он не знал кол-во двойных указателей, которые ему посылались, поэтому никакие флаги тут не помогли, и пришлось самому для каждого кол-ва каналов (1, 2, 4, 6, 8) делать свою версию этой функции
источник

AT

Anatoly Tomilov in pro.graphon (and gamedev)
а оно стоило того? что за задача? на сколько ускорил?
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Общее ускорение 10%
источник

AV

Anton Vertver in pro.graphon (and gamedev)
источник

IL

Igor Lynn in pro.graphon (and gamedev)
если код вызывается часто (а я так понял очень часто) то вполне себе решение и говно код того стоит
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Igor Lynn
если код вызывается часто (а я так понял очень часто) то вполне себе решение и говно код того стоит
Довольно часто, если учитывать, что код работает в отдельном потоке и пока что без системы тасков
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Осталось ресамплер оптимизировать и тогда скорость возрастет ещё сильнее
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Потому что так не должно быть (код до и после)
источник

AV

Anton Vertver in pro.graphon (and gamedev)
источник

IL

Igor Lynn in pro.graphon (and gamedev)
Anton Vertver
Довольно часто, если учитывать, что код работает в отдельном потоке и пока что без системы тасков
планировщик будешь свой писать или готовый брать?
источник

AV

Anton Vertver in pro.graphon (and gamedev)
У нас в движке уже есть своя система тасков, когда эту либу буду в него встраивать буду использоват
источник

IL

Igor Lynn in pro.graphon (and gamedev)
и что, лучше чем Intel TBB?
источник

AV

Anton Vertver in pro.graphon (and gamedev)
В некоторых лучше, в некоторых хуже
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Intel TBB универсален и для всего, наша же система тасков для конкретных целей создана и с одной архитектурой
источник

IL

Igor Lynn in pro.graphon (and gamedev)
Anton Vertver
Потому что так не должно быть (код до и после)
а что меняется-то?
источник

IL

Igor Lynn in pro.graphon (and gamedev)
кроме качества изображения
источник

AV

Anton Vertver in pro.graphon (and gamedev)
Анализатор даже перестает игнорировать то время, что занимает LinearToPlanar
источник