1 Востаннє редагувалося tchort (19.12.2020 11:16:48)

Тема: Дистрибутив Гри і Різні Компілятори. (щодо Оптимізації)

З чогось стало цікаво, але не можу знайти пояснень, - з якої причини розробники ігор не постачають різні версії .exe  відкомпільовані для різних процесорів, наприклад відкомпільоване на AOCC Compiler для AMD, чи тим що Intel займається для своїх процесорів? Тобто коли бенефіт хоча б у той 1% у швидкості, на тестах, - то й те не погано і має бути вигідно чимось, та і розмір дистрибутиву наче вже так багато не значить як колись, хіба тут якась помилка в моїх міркуваннях?
*Може бути що погано формулював запити в пошуковику. За посилання(на обговоренням, пояснення і т.п.) буду вдячний.

2 Востаннє редагувалося wander (19.12.2020 15:49:38)

Re: Дистрибутив Гри і Різні Компілятори. (щодо Оптимізації)

Я не являюсь розробником ігор, проте знайомий з близько-ігровою індустрією/ідеологією розробки ПЗ. В голову приходить кілька банальних причин, чому це не дуже ефективно:
1. Всякі внутрішні бюрократичні питання компаній, в плані комерційних ліцензій. Тобто, якщо ти розробляєш не open source продукт, то будь добрий придбати той же ICC. Це може виглядати абсурдно, але такі правила гри, перш ніж щось почати використовувати потрібно буде пройти кілька кіл "пекла", щоб довести, що це дійсно потрібно купити.
2. Стабільність. Рівень підтримки останніх стандартів C++, а також загальна стабільність компіляторів AOCC/ICC досить низька (тобто наскільки легко написати well-defined код, який тим не менш поламає компілятор з помилкою типу: Error 2325 або якоюсь подібною нісенітницею). Іншими словами, якщо ви хочете насолоджуватися найновішими функціями С++ і хочете компілятор, який не буде ламатись у випадкових місцях - не для вас.

Прихований текст

If you have a cluster and need to do number crunching then go ahead.

3. Це досить дорого для компаній розробляти, налагоджувати, тестувати, перевіряти, супроводжувати програмний продукт і підтримувати кілька версій свого коду з використанням різних компіляторів. Зручніше використовувати один компілятор, який забезпечує хорошу продуктивність для всіх марок ЦП (тим більше це навіть простіше).
4.

tchort написав:

Тобто коли бенефіт хоча б у той 1% у швидкості, на тестах, - то й те не погано і має бути вигідно чимось

Ні, не вигідно. Ігри загалом орієнтуються більше на продуктивність GPU ніж на продуктивність CPU.
5. Реальна ефективність. Частково відноситься до першого пункту, в плані, чи дійсно воно того варте? Я пам'ятаю читав статтю про ICC і там порівнювалась ефективність, то ICC генерував ідентичний код до GNU GCC в багатьох місцях. Правда це була стаття року 2015, тож я б перевірив інформацію станом на сьогодні.

Подякували: Arete, tchort, koala, harentius4

3

Re: Дистрибутив Гри і Різні Компілятори. (щодо Оптимізації)

wander Прекрасна відповідь, - окреме вам текстове дякую. Деякі пункти були мені сюрпризом.

Подякували: wander1