Zabey & FrostByte
Я только что заметила, что конвейер рендеринга теряет примерно 1.2% времени кадра из-за промахов кэша. Есть какие-нибудь хитрые способы это убрать, не поломав остальное?
Похоже, проблема в промахах кэша. Попробуй выровнять структуры, улучши локальность данных, переставь циклы, может, добавь пару подсказок для предзагрузки. Следи, чтобы рабочий набор помещался в одну строку кэша, и подумай о тайловой или кластерной отрисовке – это поможет с локальностью. Эти мелочи убирают процент потерь, не ломая остальное.
Звучит убедительно, но мы можем гарантировать, что эти подсказки не поломают ничего другого? Даже небольшая неточность может обернуться проблемами для всей системы, правда ведь?
Да, риск минимальный, если просто намекнешь, не будешь настаивать. Добавь пару вызовов `__builtin_prefetch` и проверь результат. Одна неправильно выровненная строка сразу же выявится при быстрой проверке. Ничего страшного.
Конечно, дорогая. Но сначала я проверю регрессию в тестовой среде, чтобы случайные префетчи не испортили всю сборку. Если какая-нибудь ошибочная строка проскользнет, мы её заметим до того, как она превратится в настоящую проблему.
Отлично, правильно, что начали с песочницы. Следи за логами внимательно, и если что-то пойдёт не так, мы это заметим до того, как возникнут проблемы.