Jump to content

Поддержка гипертрединг


rost7

Recommended Posts

Господа разработчики LO!

 

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

 

В прошлом месяце мы делали оптимизацию под гипертрединг в одном из своих продуктов.

 

До оптимизации

При запуске нескольких активных потоков, которые выполняли емкие вычисления, на системе с гипертредингом мы имели общую производительность на ~10-15% ниже, нежели с отключенным гипертредингом.

 

После оптимизации

На одном потоке мы получили ту же производительность, что и на системе с отключенным гипертредингом. При задействовании двух потоков и более суммарная производительность увеличилась на ~20%.

 

Т.е. если вычисления выполняются в двух (или нескольких) потоках, реальный выйгрыш производительности достигает 20%, что есть вполне ощутимая величина.

 

А теперь самое интересное - суть оптимизации.

Все что мы сделали, так это при создании потоков задавали размер стека 1Mb + 4Kb. Для эффективного использования вычислительной мощности P4 размер стека потока не должен быть кратен 1Mb. Прочие изменения не понадибились.

 

И еще, наличие ожиданий вида while(flag == 0); вообще убивает производительность на гипертрединге. Надеюсь, что у вас такие конструкции не встречаются, а этого используются нормальные объекты синхронизации.

 

Т.о. если у вас в LO есть более одного реально нагруженного потока, то есть смысл сделать эту нехитрую оптимизацию. Если работает в основном один поток, а остальные спят, то оптимизация не имеет смысла.

 

P.S. После этих изменений, на других процессорах все работает так же как и раньше. Никаких специальных компиляторов и билиотек мы не использовали, только VC7.

 

Удачи.

Пингвин, который летает.

Link to comment
Share on other sites

Господа разработчики LO!

 

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

 

...

 

Удачи.

 

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

 

конструкций вида while(flag == 0); у нас не используется, это плохой стиль.

 

насчет некратного стека - очень любопытная информация, спасибо. к сожалению проверить не можем. может это финты компилятора, а не процессора? насколько я понимаю, у вас использовался gcc?

"There are five dangerous faults which may affect a general: recklessness, which leads to destruction; cowardice, which leads to capture; a hasty temper, which can be provoked by insults; a delicacy of honor which is sensitive to shame; over-solicitude for his men, which exposes him to worry and trouble." Sun Tzu

[sigpic]http://forums.eagle.ru/signaturepics/sigpic2354_5.gif[/sigpic]

Link to comment
Share on other sites

А смысл добавлять поддержку HТ, если, ЕМНИП, сама интел скоро прекратит выпуск процессоров с этой технологией?

"Я ошеломлён, но думаю об этом другими словами", - некий гражданин

Ноет котик, ноет кротик,



Ноет в небе самолетик,

Ноют клумбы и кусты -

Ноют все. Поной и ты.

Link to comment
Share on other sites

А смысл добавлять поддержку HТ, если, ЕМНИП, сама интел скоро прекратит выпуск процессоров с этой технологией?

 

Что такое "скоро прекратит":

1. Само прекращение выпуска будет не так быстро, как может показаться.

2. После прекращения выпуска процессоры обычно продолжают продаваться некоторое время и их продолжают покупать.

3. Купленные процессоры работают еще год и более.

4. Большое количество таких процессоров уже продано и будут работать еще пару лет точно.

 

Ктегорию людей у которых железо компа апгрейдится не реже одного раза в месяц в счет не беру - таких фанатов мало.

 

Так что, если так рассуждать, то ED лучше остановить разработку очередной версии LO и начать разработки под XBOX-360 или PlayStation3.

 

З.Ы. И убедительная просьба фанатам АМД не устраивать глубоких дискуссий, на тему крутизны процессоров. Меня они все вполне устраивают.

Пингвин, который летает.

Link to comment
Share on other sites

мало того, что сама по себе оптимизация под HT полезна, так она пригодиться и в случае использования честных двух-ядерных процессоров. я имею ввиду балансировку нагрузки на разные триды\процессы, а не фокус со стеком.

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

"There are five dangerous faults which may affect a general: recklessness, which leads to destruction; cowardice, which leads to capture; a hasty temper, which can be provoked by insults; a delicacy of honor which is sensitive to shame; over-solicitude for his men, which exposes him to worry and trouble." Sun Tzu

[sigpic]http://forums.eagle.ru/signaturepics/sigpic2354_5.gif[/sigpic]

Link to comment
Share on other sites

  • ED Team
З.Ы. И убедительная просьба фанатам АМД не устраивать глубоких дискуссий, на тему крутизны процессоров. Меня они все вполне устраивают.

Нет уж, позвольте! :)

АМД дешевле и привлекательней для покупателей среднего достатка нежели Интел.

Уж лучше оптимизировать под SSE, которые есть на обоих процессорах. ;)

Best Regards, Dmitry.

 

"Чтобы дойти до цели, надо прежде всего идти." © О. Бальзак


 
Link to comment
Share on other sites

Вот кстати Laivynas прав, я помню когда только процы с ММХ стали появляться, у меня была демка думоподобной игры, о 3D ускорителях с поддержкой разных размытий и сглаживаний тогда только мечтали, причём даже разработчики этих же ускорителей, так вот та демка была написана с оптимизацией под ММХ и качество картинки было просто супер(и это на S3 Trio 64V+), жаль названия не помню, но по ходу та игра так и не вышла, кстати и не тормозила она вовсе, а дум и кваку уделывала по полной, спустя лишь несколько лет я увидел подобное и то на ускорителях ;)

DimAss Coljo Yappo

Link to comment
Share on other sites

Dronas

Эт конечно жуткий оффтоп, но позвольте востановить справедливость по отношению к производителям ускорителей :) К моменту выхода PentiumMMX у них уже поступало в продажу второе поколение ;)

Link to comment
Share on other sites

Dronas

Эт конечно жуткий оффтоп, но позвольте востановить справедливость по отношению к производителям ускорителей :) К моменту выхода PentiumMMX у них уже поступало в продажу второе поколение ;)

 

Ну, возможно, столько времени прошло, у меня тогда была S3 ;), но демка делала нереальные вещи ;)

 

Хотя нет, небыло второго поколения!

 

MMX появился в интервале 1993-1995, первый настоящий ускоритель (Voodoo Graphics) для простых смертных в 1995.

 

Не, чего-то наврал :)

DimAss Coljo Yappo

Link to comment
Share on other sites

  • ED Team

Вуду это был именно ускоритель :) Он без карты не работал.

Была игра поддерживающая ДиректИкс, ОпенГеэль и Гляйд.

Гляйд был быстрее ОпенГеэля в в 1.5 раза и в два раза быстрее Директа.

С тех пор Директ и не люблю :)

Пользы от MMX не заметил.

 

--

Спросить забыл. А отключение этого гипертренинга пойдёт на пользу в LockOn?

Link to comment
Share on other sites

Вы запамяотовали :) Pentium MMX вышел в январе 1997 года, а к этому времени и Diamond и Creative успели разродиться наследниками своих карт с аппаратным 3Д.

 

http://www.intel.com/corporate/europe/emea/rus/country/museum/history/hof/hof_main.htm

 

Вот даты, а ММХ появился ещё на первых пнях начиная с 166-го ;)

 

А первые карточки на чипах от 3Dfx появились в 1995 ;)

 

 

Гляйд был быстрее ОпенГеэля в в 1.5 раза и в два раза быстрее Директа.

С тех пор Директ и не люблю :)

Пользы от MMX не заметил.

 

Глайд до ужаса примитивен, да и естественно делался под 3Dfx ;)

 

А пользы от ММХ Вы не заметили потому, что очень мало игр его поддерживали из мне известных та самая демка и к примеру Delta Force, Armored First II

DimAss Coljo Yappo

Link to comment
Share on other sites

первое упоминание про MMX относится к Pentium2, соответственно 1997 год ;)

"There are five dangerous faults which may affect a general: recklessness, which leads to destruction; cowardice, which leads to capture; a hasty temper, which can be provoked by insults; a delicacy of honor which is sensitive to shame; over-solicitude for his men, which exposes him to worry and trouble." Sun Tzu

[sigpic]http://forums.eagle.ru/signaturepics/sigpic2354_5.gif[/sigpic]

Link to comment
Share on other sites

первое упоминание про MMX относится к Pentium2, соответственно 1997 год ;)

 

:) все PentiumII использовали ММХ, а Pentium 166-233(не помню, был ли 266) не все использовали ММХ ;)

 

Короче история запутаная первые процессоры с ММХ появились где-то в 1996, в первом квартале 1997 уже насчитывалось окло 15-20 официальных программных продуктов поддерживающих технологию ММХ.

 

Да и суть не в этом, технология ММХ была удачно внедрёна в процессоры, ныне её же использует AMD, правда уже в более поздних вариантах ввиде SSE и впринципе симу оптимизация под данную технологию пойдёт только на пользу, ну поддержка много процессорности тоже не помешает конечно, но SSE всё же реальнее ;)

DimAss Coljo Yappo

Link to comment
Share on other sites

А как на счёт 3DNow! ? Она тоже может дать приличный прирост производительности, особенно это было заметно на K6-2 и K6-3, т.к. на них был слабый FPU.

P.S. Кстати, на чём ЛО идёт лучше: P4 или Athlon 64?

Link to comment
Share on other sites

А как на счёт 3DNow! ? Она тоже может дать приличный прирост производительности, особенно это было заметно на K6-2 и K6-3, т.к. на них был слабый FPU.

P.S. Кстати, на чём ЛО идёт лучше: P4 или Athlon 64?

 

3DNow исключительно под AMD а заниматься оптимизацией под конкретные процы для ЕД не просто, проблемы старые, не хватка времени и людей.

DimAss Coljo Yappo

Link to comment
Share on other sites

Dronas

Вы явно не очень знакомы с историей хардвера :)

Pentium MMX был анонсирован в 1996 году в ответ на заявления (и соответствующую работу) AMD о введение в К5 мультимедийных команд. ***В последствии был суд, когда AMD пыталась засудить Intel за плагиат названия, но не смогла. Intel каким-то способом убедила Суд, что ее MMX, это не сокращение MultiMediaеХtension, а имя собственное.*** Появились же они (в железе) только девятого января 1997 года - то есть все го за четыре месяца до сэмплов Pentium II. А то, что кое какой софт для них уже был - заслуга отдела по работе с девелоперами. Далее, SSE/3DNow! с MMX не связана.

Link to comment
Share on other sites

Dronas

Вы явно не очень знакомы с историей хардвера :)

Pentium MMX был анонсирован в 1996 году в ответ на заявления (и соответствующую работу) AMD о введение в К5 мультимедийных команд. ***В последствии был суд, когда AMD пыталась засудить Intel за плагиат названия, но не смогла. Intel каким-то способом убедила Суд, что ее MMX, это не сокращение MultiMediaеХtension, а имя собственное.*** Появились же они (в железе) только девятого января 1997 года - то есть все го за четыре месяца до сэмплов Pentium II. А то, что кое какой софт для них уже был - заслуга отдела по работе с девелоперами. Далее, SSE/3DNow! с MMX не связана.

 

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

DimAss Coljo Yappo

Link to comment
Share on other sites

toDronas

Мне купили родаки в 1997ом году пень200ММХ, мне тогда всего 11 лет было :) . Спустя год я разобрался малость в том что у меня на столе стояло, и начал эксперементировать.. с компом куча дисков шло..У меня винда95тогда стояла..

И наткнулся я на диск с названием IntelMMX technologies...

На этом же диске куча всякой всячины было демки и все такое..

Так вот там демка игры была BloodMoon вроде.. Поставил я Драйвер ммх и эту гаму.. Оказалась очень даже приличная картинка в демке.. Нифига не тормазило.. У меня была видяха.ati range64 на 8мб. Тогда это вроде ещё неплохая карта была..Ну вобщем ты наверное про эту демку говорил.. :)

http://rusfalcons.ru

20=RF=Veter in online :pilotfly:

i7 4790k 4.0@4.5\16gb1600@2133\ msi z87 gd-65 gaming\2x ssd240 raid 0\hdd-2tb\gigabyte gtx780ti oc\lg 42lm640t\asus vg248qe\track ir 5pro\logitech g940\

Link to comment
Share on other sites

toDronas

Мне купили родаки в 1997ом году пень200ММХ, мне тогда всего 11 лет было :) . Спустя год я разобрался малость в том что у меня на столе стояло, и начал эксперементировать.. с компом куча дисков шло..У меня винда95тогда стояла..

И наткнулся я на диск с названием IntelMMX technologies...

На этом же диске куча всякой всячины было демки и все такое..

Так вот там демка игры была BloodMoon вроде.. Поставил я Драйвер ммх и эту гаму.. Оказалась очень даже приличная картинка в демке.. Нифига не тормазило.. У меня была видяха.ati range64 на 8мб. Тогда это вроде ещё неплохая карта была..Ну вобщем ты наверное про эту демку говорил.. :)

 

Ага, про неё, только у меня была S3 Trio 64V+ :)

DimAss Coljo Yappo

Link to comment
Share on other sites

P.S. Кстати, на чём ЛО идёт лучше: P4 или Athlon 64?

Ты знаешь, я был озадачен, когда имея на работе Barton 2500, собрал еще для себя P43000 на P4P800PE (для тестирования и отладки ПО), в общем, параметры видео одинаковые (переставлял с бартона видео) - и не увидел никакого прироста производительности при запуске ЛО. Потом собирал Athlone64 на MB Asus A8N Deluxe SLI - ну живее ощутимо чем на бартоне (но не так как ожидал), и собирал P4 на Asus P5WD2 - вот тут полное разочарование - не сказал бы что ЛО хуже чем на атлоне пошла, разницы никакой не заметил по разным параметрам +-, но зато получил кучу глюков с SATA RAID (вот пляски то были) и облом по поводу ожидаемой мощи.

ИМХО - пофигу на чем, вопрос только денег.

Link to comment
Share on other sites

но зато получил кучу глюков с SATA RAID (вот пляски то были)

 

А что за глюки если не секрет, у меня вот диск определялся, а системным никак становиться не хотел, помог лишь PartitionMagic, всякие fdiskи ничего не давали, после переразметки диска и установки активного, система не видела этот самый системный диск :)

DimAss Coljo Yappo

Link to comment
Share on other sites

Guest Михаил

ASUS в последнее время вобще ох--ли. По привычке за бренд дерут, типа зазнайки. Почитайте на форумах иксбт и оверклокер про мать ASUS A8V Deluxe. У меня такая, правда повезло с ревизией - 2.0. Это последний раз когда я брал асус, что-либо. Достало.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...