Форум Trainsim  

Вернуться   Форум Trainsim > Microsoft Train Simulator > MSTS - Об игре

Ответ
 
Опции темы Опции просмотра
Старый 10.12.2010, 21:41   #1
Виталик
Матёрый пользователь
 
Регистрация: 03.09.2008
Адрес: Москва
Сообщений: 388
Вы сказали Спасибо: 1
Поблагодарили 1 раз в 1 сообщении
Виталик стоит на развилке (репутация по умолчанию)
По умолчанию

МСТС кстати очень часто на современном Core i7 выдаёт низкий ФПС. Здесь нужно разобраться в архитектуре процессора Core i7. В процессоре 4 ядра. Каждое ядро имеет свой кэшL1 и кэш L2, в кэш L1 хранятся инструкции для запуска страниц, в кэш L2 уже сами страницы кэш L2 довольно маленький - 256 кб. А кэш L3 8 мб является общим на все ядра (в Core 2 Duo кэш L1 был в каждом ядре, а L2 - общий). По 1/4 он не поделён на каждое ядро. Во-вторых, в i7 вместо шинного интерфейса связи между ядрами сделали канальный интерфейс, что увеличило производительность в современных приложениях, и убрали арбитр шины (был в Core2 Duo), который "следил" за выполняемыми поцессами и пускал другой процесс только после выполнения первого. В Core i7 сделали контроллер памяти, он позволял параллельно выполняться многим процессам на разных ядрах. Обмен информации между кэш L1,2 и кэш L3 осуществляется через контроллер памяти. А МСТС не умеет использовать все возможности данного процессора, в частности, неправильно распределяется по кэшу, грузит, похоже, в основном L2, L1, а L3 оставляет полупустым. В целом Core i7 заточен под современные программы и игры, а под МСТС лучше взять Core 2 Duo мне кажется.
Виталик вне форума   Ответить с цитированием
Старый 10.12.2010, 22:22   #2
Vlad
Матёрый пользователь
 
Аватар для Vlad
 
Регистрация: 24.05.2007
Сообщений: 899
Вы сказали Спасибо: 310
Поблагодарили 299 раз(а) в 141 сообщениях
Vlad стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Сообщение от Виталик Посмотреть сообщение
МСТС кстати очень часто на современном Core i7 выдаёт низкий ФПС. Здесь нужно разобраться в архитектуре процессора Core i7. В процессоре 4 ядра. Каждое ядро имеет свой кэшL1 и кэш L2, в кэш L1 хранятся инструкции для запуска страниц, в кэш L2 уже сами страницы кэш L2 довольно маленький - 256 кб. А кэш L3 8 мб является общим на все ядра (в Core 2 Duo кэш L1 был в каждом ядре, а L2 - общий). По 1/4 он не поделён на каждое ядро. Во-вторых, в i7 вместо шинного интерфейса связи между ядрами сделали канальный интерфейс, что увеличило производительность в современных приложениях, и убрали арбитр шины (был в Core2 Duo), который "следил" за выполняемыми поцессами и пускал другой процесс только после выполнения первого. В Core i7 сделали контроллер памяти, он позволял параллельно выполняться многим процессам на разных ядрах. Обмен информации между кэш L1,2 и кэш L3 осуществляется через контроллер памяти. А МСТС не умеет использовать все возможности данного процессора, в частности, неправильно распределяется по кэшу, грузит, похоже, в основном L2, L1, а L3 оставляет полупустым. В целом Core i7 заточен под современные программы и игры, а под МСТС лучше взять Core 2 Duo мне кажется.
Не согласен. После описанных в моем предыдущем посте настроек МСТС на Core i7 работает лучше, чем на процах Core 2 Duo. Влияние кэша и его размер на МСТС влияют, но крайне незначительно. Так, в свое время, я менял Core 2 Duo с кэшем 4Мб на такой же проц с кэшем 6 Мб. Сколь-нибудь заметного прироста фпс я не наблюдал (может быть и был прирост, но не более, чем на 3-5%
Vlad вне форума   Ответить с цитированием
Старый 10.12.2010, 22:57   #3
Zabor
Разработчик
 
Аватар для Zabor
 
Регистрация: 01.02.2008
Адрес: Санкт-Петербург
Сообщений: 18,938
Вы сказали Спасибо: 11,499
Поблагодарили 10,291 раз(а) в 3,846 сообщениях
Zabor хороший собеседник
По умолчанию

Цитата:
Сообщение от Vlad Посмотреть сообщение
...Так, в свое время, я менял Core 2 Duo с кэшем 4Мб на такой же проц с кэшем 6 Мб. Сколь-нибудь заметного прироста фпс я не наблюдал (может быть и был прирост, но не более, чем на 3-5%
Не факт, что 4 МБ были полностью использованы, вполне могла быть ситуация когда 4 МБ хватало для конкретного маршрута и положения на маршруте, данные успевали обрабатываться и благополучно заменяться новыми.

Про линейную зависимость я не говорил, замедление в МСТС может происходить из-за любого компонента, ставшего "слабым звеном", могу с уверенностью утверждать на основе многочисленных экспериментов, что кэш CPU гарантировано станет этим "слабым звеном" при объеме 2 и менее МБ. После этого ни производительная видеокарта, ни быстрая шина и память уже ничем не помогут FPS.

Цитата:
Вобщем надо под МСТС собирать компутер из запчастей 2001 года выпуска
Где это в 2001 г. была кора-два дуба? =))

Виталик, т.е. i7 в принципе не может обеспечить в однопоточном приложении производительность, достигаемую Core 2 Duo при том же однопоточноном приложении?
__________________
Присылайте ваши сценарии в копилку msts.
Опыт - это нечто, что приобретается сразу после того, как это было нужно.
100% не предпринятых попыток обречены на провал.

Последний раз редактировалось Zabor; 10.12.2010 в 23:03.
Zabor вне форума   Ответить с цитированием
Старый 10.12.2010, 23:05   #4
Толяныч
Матёрый пользователь
 
Аватар для Толяныч
 
Регистрация: 28.03.2008
Сообщений: 3,970
Вы сказали Спасибо: 2,357
Поблагодарили 4,552 раз(а) в 1,100 сообщениях
Толяныч стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Сообщение от Zabor Посмотреть сообщение
Где это в 2001 г. была кора-два дуба? =))
О таком тогда никто даже не мечтал . Одноядерка 300 мГц была нормой.
Толяныч вне форума   Ответить с цитированием
Старый 11.12.2010, 15:42   #5
Виталик
Матёрый пользователь
 
Регистрация: 03.09.2008
Адрес: Москва
Сообщений: 388
Вы сказали Спасибо: 1
Поблагодарили 1 раз в 1 сообщении
Виталик стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Сообщение от Zabor Посмотреть сообщение
Виталик, т.е. i7 в принципе не может обеспечить в однопоточном приложении производительность, достигаемую Core 2 Duo при том же однопоточноном приложении?
Здесь зависит от самого приложения. В теории, производительность i7 даже в однопоточном режиме гораздо лучше, так как нету арбитра шины и кэш L1, L2 есть в каждом ядре. Но это очень хорошо заметно на современных приложениях. Здесь всё дело в архитектуре самого МСТС, в частности, компиллятора. Он не может на все 100 использовать новую архитектуру процессора Intel Core i7, такие как виртуальная адресация регистров и объм кэша. Поэтому заметного прироста производительности и нету. Приходится шаманить с бубном, чтобы как-то повысить ФПС.

Ещё добавлю: МСТС, похоже, нужны больше гигагерцы. Компания Intel после Pentium4 выбрала стратегию, что "мускулы хорошо, но ещё нужно иметь и ум". То есть повышать дальше гигагерцы стало практически невозможным из-за тепловыделения и резкого возрастания стоимости. Они полностью сменили архитектуру процессоров, организацию работы кэша, уменьшили количество команд с 360 до 30, так как P.4 было 360 команд и многие из них почти дублировали друг друга. Гигагерцы в i7 меньше чем в том же P.4 или Core 2 Duo, а производительность гораздо выше. А машинные и загрузочные коды МСТС явно не умеют использовать все эти возможности.

Последний раз редактировалось Виталик; 11.12.2010 в 15:56.
Виталик вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 20:24. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim
TopList Нажми для появления дома Trainsim на карте Intermap
Что это?