HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Наш форум > Флуд > Многоядерность в играх
Нужна или нет?
  Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Многоядерность в играх

https://overclockers.ru/blog/Razg0n...em-na-konsolyah

Это собственно то, о чём мы с Ксероксом давно уже твердим - асинхронная мульипоточность может даже снижать производительность. Ну или просто не давать какого-то особого прироста. Хотя с точки зрения операционной системы раскидать задачи по ядрам - вполне выгодная тема. Ну и разумеется это хорошо для задач, которые сбалансированно параллелятся. Но игры к ним не относятся.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 215435

Старое сообщение 23-08-2023 11:12
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Большинство современных процессоров рассчитаны именно на многопоточность. Однопоточность даже у топовых процев сосёт (если только не разгонять их до каких то безумных значений под жидким азотом). Наверное ресурсоёмкие задачи лучше распределять на несколько ядер. А вот простые можно и в одном потоке делать.

Цитата:
Дядя Миша писал:
Это собственно то, о чём мы с Ксероксом давно уже твердим - асинхронная мульипоточность может даже снижать производительность


Это зависит скорее от реализации, например Автодеск и тима Блендера в один голос говорят что нет никакого смысла во многопоточности для расчета физики жидкостей, т.к. оно будет даже медленнее. И при этом есть РеалФлов который прекрасно в этой многопоточности работает и работает намного быстрее, в то время как все конкуренты считают в одном потоке. Так что если снижается производительность, это вероятнее проблема алгоритма, а не многопоточности.

Цитата:
Дядя Миша писал:
Ну и разумеется это хорошо для задач, которые сбалансированно параллелятся. Но игры к ним не относятся.


Ну вот да, если в самом движке ничего нельзя параллелить, то какой смысл в многопоточности? Хотя сильно сомневаюсь что там прямо вообще нечего параллелить. Может трасса поэтому фризы у тебя давала?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Отредактировано FiEctro 23-08-2023 в 12:35

Сообщить модератору | | IP: Записан
Сообщение: 215436

Старое сообщение 23-08-2023 12:28
- За что?
nemyax
Нёмыч

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 4137

Рейтинг



Поток для физики, поток для инпута, поток для основного цикла.

Сообщить модератору | | IP: Записан
Сообщение: 215437

Старое сообщение 23-08-2023 12:33
- За что?
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Re: Многоядерность в играх

Цитата:


Ну ты же понимаешь что Core i9-13900K с 4090 на борту, работающем на 5,5 ГГц, памятью на ДДР 5 и конским кешем хоть и с одним ядром, это совсем не тоже самое что ваши задрипанные пентиумы 2010 года ? Там наверное ещё и водянку до кучи поставили. Объективность теста весьма сомнительная, а то что с консолями сравнивают так это вообще до уровня абсурда. И кстати да SMT у АМД вроде как.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Отредактировано FiEctro 23-08-2023 в 12:53

Сообщить модератору | | IP: Записан
Сообщение: 215438

Старое сообщение 23-08-2023 12:39
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
Однопоточность даже у топовых процев сосёт

Я понял. Ты вообще не понимаешь что такое распараллеливание задач и как оно работает. Не вижу смысла продолжать дискуссию.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 215443

Старое сообщение 23-08-2023 14:06
-
Decay
Житель форума

Дата регистрации: Mar 2010
Проживает: N/A
Сообщений: 231

Рейтинг



Цитата:
В итоге получается, что миф о концептуальной невозможности запуска современных игр на CPU с одним ядром был целиком и полностью развенчан. В подавляющем большинстве проектов средняя частота кадров была выше 30 консольных FPS. Даже вышедшие месяц назад тайтлы идут вполне себе бодро.

https://www.youtube.com/watch?v=ypDcl0KHSs8
Я тоже в этом не разбираюсь. Не знаю что здесь значит "бодро", если время кадра так скачет и игра статтерит, больно в такое играть. Лично мне это видео говорит скорее о том что не стоит отключать ядра

Сообщить модератору | | IP: Записан
Сообщение: 215450

Старое сообщение 23-08-2023 15:49
- За что?
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Дядя Миша писал:
Я понял. Ты вообще не понимаешь что такое распараллеливание задач и как оно работает. Не вижу смысла продолжать дискуссию.


А ты понимаешь? Почитай комментарии под твоей статьёй, и все поймешь.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Отредактировано FiEctro 23-08-2023 в 17:14

Сообщить модератору | | IP: Записан
Сообщение: 215452

Старое сообщение 23-08-2023 17:12
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Если на соседнее ядро привязан стриминг - конечно будет статерить.
Впрочем сталкер ухитрялся это делать независимо от кол-ва ядер.
Ну ладно оригинал кажется вообще был одноядерный. Так его недавно переписали и чтожы? Да всё так же логает

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 215455

Старое сообщение 23-08-2023 18:13
-
SNMetamorph
Житель форума

Дата регистрации: Jun 2018
Проживает: Ижевск
Сообщений: 560

Рейтинг



Цитата:
FiEctro писал:
Так что если снижается производительность, это вероятнее проблема алгоритма, а не многопоточности.

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

Добавлено 29-08-2023 в 01:09:

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord

Сообщить модератору | | IP: Записан
Сообщение: 215544

Старое сообщение 28-08-2023 21:09
- За что?
Chyvachok
Житель форума

Дата регистрации: Jul 2011
Проживает: (void)
Сообщений: 1844

Рейтинг



Я не эксперт в этом конечно, но имхо делать однопоточными всякие игры симуляторы, стратегии с тысячами юнитов или вообще мясные шутаны с теми же тысячами врагов такая себе идея, если прям кучи расчетов то как по мне можно уперется в одно ядро, тут наоборот неплохо бы иметь какую никакую расширяемость.

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

Сообщить модератору | | IP: Записан
Сообщение: 215553

Старое сообщение 30-08-2023 12:16
- За что?
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



Цитата:
Chyvachok писал:
Интересно вот, есть такие игры как Факторио и Римворлд, почему первый хорошо работает, второй лагает как говно когда там сотни врагов нападают разом да и вообще сам лейт гейм лагучий? Хотя в факторио если так подумать то тоже куча сущностей что что-то делают, руда на конвеерах, заводики, дроны и поезда что это возят, хотя я не в курсе как у них там многопоточность, есть, нету.



https://dtf.ru/u/1922-andrei-apanas...entov-na-ekrane

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Сообщить модератору | | IP: Записан
Сообщение: 215556

Старое сообщение 30-08-2023 17:57
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32213
Нанёс повреждений: 392 ед.

Рейтинг



Ну конечно, если юнитов прям много-много, логику неплохо вынести в отдельный поток. Впрочем это делали ещё в хл2.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 215558

Старое сообщение 30-08-2023 18:18
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12901
Возраст: 32

Рейтинг



В играх частенько большие просадки от партиклей различных, те же взрывы.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!

Сообщить модератору | | IP: Записан
Сообщение: 215564

Старое сообщение 31-08-2023 07:03
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 16:08. Новая тема    Ответить
  Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Наш форум > Флуд > Многоядерность в играх
Нужна или нет?
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024