Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Оптимизация Direct3D приложений. (комментарии) (2 стр)

Оптимизация Direct3D приложений. (комментарии) (2 стр)

Страницы: 1 2
SuslikМодераторwww29 ноя. 200923:30#15
XaeroX
> У поумневших оптимизаторов есть одно замечательное свойство - они наотрез
> отказываются компилировать код, написанный под глупый оптимизатор, выдавая в
> лучшем случае килобайты варнингов, а в худшем - ерроров. Т.е. завтра танцы с
> бубном будут в любом случае.
именно поэтому я предпочитаю писать понятный код, который пусть сегодня будет на 10% медленнее, зато завтра его не надо будет переписывать и его будет куда проще поддерживать.

>ICL?
Intel C++ Compiler

XaeroXУдалёнwww29 ноя. 200923:38#16
Suslik
> именно поэтому я предпочитаю писать понятный код, который пусть сегодня будет
> на 10% медленнее, зато завтра его не надо будет переписывать и его будет куда
> проще поддерживать
Не факт, что написанный сегодня код завтра не устареет.
Да и строго следовать стандарту языка не так уж легко.
>Intel C++ Compiler
Ну я так и понял, что опечатка.

SuslikМодераторwww29 ноя. 200923:42#17
XaeroX
> Ну я так и понял, что опечатка.
да нет, почему
Intel C++ Compiler (also known as icc or icl) , http://en.wikipedia.org/wiki/Intel_C%2B%2B_Compiler

> Не факт, что написанный сегодня код завтра не устареет.
> Да и строго следовать стандарту языка не так уж легко.
я говорю о common коде, который устареет не раньше, чем устареет язык, на котором он написан.

XaeroXУдалёнwww29 ноя. 200923:47#18
Suslik
> да нет, почему
Понятно, буду знать. Я раньше только ICC видел.
>я говорю о common коде, который устареет не раньше, чем устареет язык, на котором он написан.
Коммон-код - да. А вот игровые движки в целом (о чем собсно комментируемая статья) устаревают очень быстро. В том числе с точки зрения архитектуры.
Взять тот же дум3 - там куча SIMD-оптимизированных функций, но они очень узкоспециальны. Стоит немного поменять архитектуру движка - и все они будут нуждаться в переписывании.
doc.Постоялецwww29 ноя. 200923:50#19
Suslik
> И, да, если ты и получишь выигрыш своих 3% на среднем по характеристикам оптимизации компиляторе
Если не получилось у тебя то это незначит что всё и всегда настолько плохо, не стоит впадать в крайности ;)

>то уж точно не факт, что завтра твои танцы с бубном не будут пудрить мозг поумневшему оптимизатору.
Это совершенно неактуальная проблема, а вот реальный результат, частенько, можно (а иногда и нужно) получить "здесь и сейчас".

>например, оптимизировать алгоритмическую часть.
Применительно к предмету обсуждения замена точного округления на упрощенный алгоритм учесения и есть алгоритмическая оптимизация.

SuslikМодераторwww29 ноя. 200923:52#20
doc.
> Это совершенно неактуальная проблема, а вот реальный результат, частенько,
> можно получить "здесь и сейчас".
ок, переформулирую. у меня после изрядного времени, потраченного на попытки оптимизировать узкое место, перевод float->int, на компиляторе ICL10, результат отрицательный, буста производительности получить не удалось.
XaeroXУдалёнwww29 ноя. 200923:54#21
Suslik
Это может значить как то, что компилятор сам делает преобразование умнее, так и то, что он плохо компилирует ваши "попытки оптимизации". (:
doc.Постоялецwww29 ноя. 200923:55#22
Suslik
> ок, переформулирую. у меня после изрядного времени
Это в некой конкретной, специальной задаче, да и то, непонятно что и как ты там делал.

Правка: Также возможно там есть что-то, что принципиально ограничивает скорость выполнения кода, доступ к памяти например или еще чего, всякое бывает.

SuslikМодераторwww30 ноя. 20090:02#23
XaeroX
> Это может значить как то, что компилятор сам делает преобразование умнее, так и
> то, что он плохо компилирует ваши "попытки оптимизации". (:
ну, ассемблерные вставки оптимизатор, вроде, пропускает мимо ушей, оставляя как есть. так что второе маловероятно.
doc.Постоялецwww30 ноя. 20090:08#24
Suslik
> ну, ассемблерные вставки оптимизатор, вроде, пропускает мимо ушей, оставляя как есть.
Да, но вот цикл со вставкой он вряд ли развернет, по крайней мере не должен, в во избежание т.с.
Страницы: 1 2

/ Форум / Программирование игр / Графика

Тема в архиве.

2001—2018 © GameDev.ru — Разработка игр