воскресенье, мая 17, 2009

КРИ-2009. День третий

Сегодня был последний день КРИ, я была на двух докладах.

Роман Лут, Deep Shadows
Внедрение многопоточного рендеринга в игровой движок

Полезный вдумчивый доклад. Начался с общих рассуждений о многопоточности. Что вот, бывает "плохая" многопоточность, это когда создаем несколько потоков и делаем в них что-нибудь. Так лучше не делать, лучше анализировать код и разделять его на независимые компоненты с минимальным, четко описанным взаимодействием. Говорил про task parallel, data parallel и построение task dependency graph'а.
Что сделали у себя. Хотели task dependency graph, но было понятно, что это займет сильно много времени поэтому сделали вот что: обход сцены в одном поток, они пишет все в ring buffer, откуда читает код рендеринга, который находится в другом потоке. Заняло это 2 недели разработки и 3 месяца отладки. Получили увеличение производительности в 1.5 раза.
По ходу рассказа хвалил Intel TBB. Они даже портировали TBB под XBOX. Рассказывал, что пользовались Intel Thread Checker'ом. Все это вызвало оживление в стане Интела :-).
Упомянул emergent DirectX command buffer library, которая позволяет распараллелить работу с DirectX версии ниже одиннадцатой, который, как известно, не поддерживает работу с многопоточностью.

Евгений Макаров, NVIDIA
NVIDIA APEX - широкий взгляд на технологии PhysX

Доклад был в разделе арт, пошла на него, потому что его рекомендовали на лекции по CUDA. Но был действительно в основном арт, много красивых картинок, по программингу практически ничего. Для себя узнала, что все это есть и под Nintendo Wii.


Давайте в заключение скажу пару слов об организации КРИ. Организовано все было хорошо. Мест всем хватало, возникавшие на докладах проблемы с слайдами разрешались быстро (и было их мало, надо признать). Не тесно, не душно, чего еще надо...

Updated 18.05.2009: В комментариях поправляют, мест хватало не всегда.

Итог дня: Есть TBB под XBOX, есть PhysX под Wii

4 коммент.:

Андрей комментирует...

На многих докладах, где был я, люди стояли, т.к. мест не хватало.

Marcellus комментирует...

Очень интересно, самому бы послушать...

А где же в Wii PhysX'то считается?
Насколько я понимаю, на десктопах вся его прелесть - в параллельных вычислениях на GPU.

Dmitry O. комментирует...

Эх, жалость-то какая, не знал я, что вы там будете... Очень мне хотелось вживую увидеть хоть одного победителя Game Demo ;)

Алёна комментирует...

2Marcellus:А где же в Wii PhysX'то считается?
Насколько я понимаю, на десктопах вся его прелесть - в параллельных вычислениях на GPU.


Угу, я тоже об этом спросила. Мне ответили, что будет все работать хуже и медленнее, но будет. Надо самим смотреть, проверять, короче.

2Dmitry O.:Эх, жалость-то какая, не знал я, что вы там будете... Очень мне хотелось вживую увидеть хоть одного победителя Game Demo ;)

Обидно, да... :-(