sea2sky Posted April 5, 2017 Share Posted April 5, 2017 Собственно, есть вопрос к ED, касательно тестирования модулей от сторонних компаний на предмет производительности. Вопрос вот какой: существует ли процесс тестирования/анализа сторонних модулей на предмет производительности и оптимизированности кода (code review)? Дело в том, что мне довелось поучавствовать в создании одного из сторонних модулей (который к сожалению так и не увидел свет, но это уже другая история) и довольно быстро стало понятно, что хоть немного коряво написанный код приводил к значительным потрерям в FPS. Т.е., дупустим незначительные вариации в алгоритмах кода могли приводить к падению ФПС процентов на 5-10 легко, например с 120 до 100. Давеча летал на Вигене, минимальная миссия - только мой самолёт и ничего больше, ФПС - 55. Та же миссия, но с L-39, FPS - 80. Как объяснить такую разницу и не может ли она косвенно указывать на низкий уровень оптимизации кода в модуле Виггена? i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
ED Team Laivynas Posted April 5, 2017 ED Team Share Posted April 5, 2017 Есть одна метода проверки производительности. В процессе игры (при неблагоприятном FPS) ставим игру на паузу и наблюдаем: - FPS вырос - проблема в вычислениях - FPS не изменился - проблема в графике Это самое простое, что можно сделать "не отходя от кассы". ;) Best Regards, Dmitry. "Чтобы дойти до цели, надо прежде всего идти." © О. Бальзак Link to comment Share on other sites More sharing options...
Dronas Posted April 5, 2017 Share Posted April 5, 2017 Тут наверное все же к движку вопрос и к оборудованию Вигена Дима, классный вариант! DimAss Coljo Yappo Link to comment Share on other sites More sharing options...
sea2sky Posted April 5, 2017 Author Share Posted April 5, 2017 Есть одна метода проверки производительности. В процессе игры (при неблагоприятном FPS) ставим игру на паузу и наблюдаем: - FPS вырос - проблема в вычислениях не совсем понятно почему сие есть показатель проблем. Ведь оно вполне логично, что фпс должен вырости, какие-то процессы останавливаются при постановке игры на паузу. - FPS не изменился - проблема в графике а что должно происходить с фпс при постановке на паузу в случае отсутствия проблем вообще? :) i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
ED Team Laivynas Posted April 5, 2017 ED Team Share Posted April 5, 2017 не совсем понятно почему сие есть показатель проблем. Ведь оно вполне логично, что фпс должен вырости, какие-то процессы останавливаются при постановке игры на паузу. Вообще-то, не факт. Если система упирается в производительность ЦПУ, то высвободившийся ресурс в режиме пауза уйдет на поднятие ФПС. Так как некоторая часть расчетов действительно тормозится в режиме паузы. а что должно происходить с фпс при постановке на паузу в случае отсутствия проблем вообще? :) ФПС упрется либо в ограничитель, либо (если видео является узким местом системы) не изменится вовсе. ПС. Собственно, чем теоретически дискутировать, предлагаю Вам проверить на практике. :) Тем паче, есть сомнения по поводу кода модели, а не графической составляющей. Best Regards, Dmitry. "Чтобы дойти до цели, надо прежде всего идти." © О. Бальзак Link to comment Share on other sites More sharing options...
ED Team Laivynas Posted April 5, 2017 ED Team Share Posted April 5, 2017 ППС. Да. Еще хотелось бы отметить. Что подобный тест на выявление "тормознутого кода" лучше производить в "незаселенных" областях карты. На том же Кавказе можно либо в середине Черного моря, либо в "Турции", "Болгарии" и т.д., по аналогии. Best Regards, Dmitry. "Чтобы дойти до цели, надо прежде всего идти." © О. Бальзак Link to comment Share on other sites More sharing options...
sea2sky Posted April 5, 2017 Author Share Posted April 5, 2017 ППС. Да. Еще хотелось бы отметить. Что подобный тест на выявление "тормознутого кода" лучше производить в "незаселенных" областях карты. На том же Кавказе можно либо в середине Черного моря, либо в "Турции", "Болгарии" и т.д., по аналогии. Это понятно, но с другой стороны если мы выявляем относительную тормознутость (сравниваем два модуля), а не абсолютную, то вроде не должно быть критично. Так или иначе, имеет место значительная разница в фпс между модулями. Нужен модуль-эталон, содержащий достаточное количество/сложность систем, чтобы всё остальное мерять по нему. Так же, не плохо бы писать на "обложке" модуля сколько фпс он гарантирует при "пустой" миссии на рекомендуемом железе, иначе у разрабов нет и не будет никакой заинтересованности создавать максимально эффективный код. i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
ED Team Chizh Posted April 5, 2017 ED Team Share Posted April 5, 2017 Никто ничего гарантировать не будет. Не идеализируйте. Единственный урок, который можно извлечь из истории, состоит в том, что люди не извлекают из истории никаких уроков. (С) Джордж Бернард Шоу Link to comment Share on other sites More sharing options...
ED Team Laivynas Posted April 5, 2017 ED Team Share Posted April 5, 2017 Это понятно, но с другой стороны если мы выявляем относительную тормознутость (сравниваем два модуля), а не абсолютную, то вроде не должно быть критично. Так или иначе, имеет место значительная разница в фпс между модулями. Нужен модуль-эталон, содержащий достаточное количество/сложность систем, чтобы всё остальное мерять по нему. Так же, не плохо бы писать на "обложке" модуля сколько фпс он гарантирует при "пустой" миссии на рекомендуемом железе, иначе у разрабов нет и не будет никакой заинтересованности создавать максимально эффективный код. Вы сами понимаете, о чем пишите? Это симулятор с открытым миром, а не коридорная консольная стрелялка, которую можно вылизать до блеска. Тут условий стандартных нет и быть не может. Кроме предложенных мною выше. Потому эталонов нет. Best Regards, Dmitry. "Чтобы дойти до цели, надо прежде всего идти." © О. Бальзак Link to comment Share on other sites More sharing options...
sea2sky Posted April 5, 2017 Author Share Posted April 5, 2017 Вы сами понимаете, о чем пишите? Это симулятор с открытым миром, а не коридорная консольная стрелялка, которую можно вылизать до блеска. Тут условий стандартных нет и быть не может. Кроме предложенных мною выше. Потому эталонов нет. систему вцелом, действительно, "вылизать" очень сложно, но мы же про модули тут говорим. i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
ED Team Chizh Posted April 5, 2017 ED Team Share Posted April 5, 2017 Понятно что разработчики не такие злобные бармалеи, которые нарочито пишут кривой и тормозящий код. Всем хочется сделать лучше, но бывает, что в силу тех или иных причин идела не получается. Разработчики тоже люди со своими особенностями и недостатками. У кого-то не хватает компетенции, у кого-то времени, у кого-то просто банальные ошибки от невнимательности и т.д. Единственный урок, который можно извлечь из истории, состоит в том, что люди не извлекают из истории никаких уроков. (С) Джордж Бернард Шоу Link to comment Share on other sites More sharing options...
sea2sky Posted April 5, 2017 Author Share Posted April 5, 2017 Понятно что разработчики не такие злобные бармалеи, которые нарочито пишут кривой и тормозящий код. Всем хочется сделать лучше, но бывает, что в силу тех или иных причин идела не получается. Разработчики тоже люди со своими особенностями и недостатками. У кого-то не хватает компетенции, у кого-то времени, у кого-то просто банальные ошибки от невнимательности и т.д. Согласен полностью. Я потому и озадачился этим вопросом - есть ли процесс выявления некачественного кода, влияющего прежде всего на производительность (измеряемую нами юзерами в фпс-ах). Просто тренд то неутешительный, народу уже gtx 1080 порой мало. i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
ED Team BillyCrusher Posted April 6, 2017 ED Team Share Posted April 6, 2017 Согласен полностью. Я потому и озадачился этим вопросом - есть ли процесс выявления некачественного кода, влияющего прежде всего на производительность (измеряемую нами юзерами в фпс-ах). Просто тренд то неутешительный, народу уже gtx 1080 порой мало. Если речь именно о внешниках, то нет. Они сдают уже скомпиллированные бинарники. К их исходному коду у нас доступа нет (что вполне логично). "You become responsible, forever, for what you have tamed.” ― Antoine de Saint-Exupéry, The Little Prince. Link to comment Share on other sites More sharing options...
ED Team USSR_Rik Posted April 6, 2017 ED Team Share Posted April 6, 2017 Нужен модуль-эталон......работающий на эталонном железе с эталонной ОС, настроенной тоже по эталону и эталонным набором софта. На любой из этих стадий нас ждут самые разнообразные сюрпризы. Сфероконь получается, в общем. Но грубое оценочное сравнение, конечно, вполне возможно. Men may keep a sort of level of good, but no man has ever been able to keep on one level of evil. That road goes down and down. Можно держаться на одном уровне добра, но никому и никогда не удавалось удержаться на одном уровне зла. Эта дорога ведёт вниз и вниз. G.K. Chesterton DCS World 2.5: Часто задаваемые вопросы Link to comment Share on other sites More sharing options...
Dronas Posted April 6, 2017 Share Posted April 6, 2017 В конкретном примере скорее всего будет достаточно вывести информацию о вызовах отрисовки. Ну и вывод информации о времени выполнения той или иной части расчетов реализовать наверное не сложно. В DCS наверняка же все этапы по просчету модели регламентированы. Разве чего-то подобного ранее не было? Вроде выводилась скорость отработки разных кусков. DimAss Coljo Yappo Link to comment Share on other sites More sharing options...
sea2sky Posted April 6, 2017 Author Share Posted April 6, 2017 В конкретном примере скорее всего будет достаточно вывести информацию о вызовах отрисовки. Ну и вывод информации о времени выполнения той или иной части расчетов реализовать наверное не сложно. В DCS наверняка же все этапы по просчету модели регламентированы. Разве чего-то подобного ранее не было? Вроде выводилась скорость отработки разных кусков. самое интересное было бы посмотреть статистику по затратам времени на расчёты и отрисовку индикаторов систем (особенно таких как БРЛС, ИЛС, СПО, прицельные комплексы и т.п.). В луашниках тоже могут быть косяки, особенно там где создаются множественные графические элементы, управляемые "контроллерами". 1 i5-9600K@4.8GHz ★ 32Gb DDR4 ★ Asus TUF rtx3080 OC ★ Quest Pro ★ Warthog on Virpil base Link to comment Share on other sites More sharing options...
sous005 Posted September 24, 2017 Share Posted September 24, 2017 здравствуйте, не могу настроить окулус dk2 , все запускается, но в окне манитора, в очках пишет ошибку, может подскажите как победить? Windows10; QuadCore Intel Core i5-6600, 3800 MHz; 32 ГБ DDR4-2400; nVIDIA GeForce GTX 1070; SSD 480 ГБ, SATA-III; Rift CV1+touch; X-56 hotas+flight rudder pedals. Link to comment Share on other sites More sharing options...
Recommended Posts