Оптимизация параллелизма в оценке кистей Blender

Опубликовано 30.01.2026 | Перевод с испанского
Blender улучшает оценку кистей с более быстрой и эффективной работой, устраняя блокировки в памяти и оптимизируя плавность цифрового скульптинга.

Одна из самых важных задач в оптимизации режима скульптинга Blender — улучшение управления системными ресурсами. Ранее блокировки в выполнении параллельных процессов приводили к значительной потере производительности. Благодаря новым оптимизациям эти проблемы устранены, обеспечивая гораздо более плавный и отзывчивый опыт скульптинга.

Влияние параллелизма на цифровой скульптинг

Современные системы оснащены многоядерными процессорами, способными выполнять несколько задач параллельно. Однако в предыдущих версиях Blender процессы оценки кистей не были хорошо оптимизированы для такого параллельного выполнения, что приводило к:

«Эффективная система — та, которая распределяет задачи без создания конфликтов, максимально используя ресурсы оборудования.»

Выявление узких мест

Анализ производительности показал, что до 60% времени вычислений кистей уходило на ожидание доступа к памяти вместо выполнения необходимых расчетов. Это было вызвано блокировками в системе отмены (undo), что резко замедляло отклик программного обеспечения.

Улучшения в структуре данных

Для решения этой проблемы линейный поиск в памяти отмены был заменен на структуру данных на основе хеш-таблиц. Это изменение позволило:

Снижение конфликтов в памяти

Еще одной выявленной проблемой была одновременная обновление счетчиков памяти. Ранее каждый раз, когда кисть генерировала данные отмены, обновлялся глобальный счетчик, что вызывало конфликты между потоками. Теперь учет памяти выполняется после завершения расчетов всех потоков, устраняя эти конфликты и оптимизируя выполнение.

Оптимизация управления общими переменными

Даже обновление булевой переменной могло создавать проблему параллелизма. Было выявлено, что несколько потоков одновременно пытались изменить булево значение во время расчета средней нормали под курсором. Удаление этой ненужной переменной привело к:

Более плавный скульптинг без прерываний

Благодаря этим оптимизациям оценка кистей в Blender теперь быстрее и эффективнее, позволяя художникам работать без прерываний. Эти улучшения не только оптимизируют текущую производительность, но и закладывают прочную основу для будущих продвинутых инструментов скульптинга.