Автор Тема: 86_64 размисли  (Прочетена 9003 пъти)

kennedy

  • Напреднали
  • *****
  • Публикации: 2151
  • Николай Колев
    • Профил
86_64 размисли
« -: May 12, 2007, 19:07 »
Дядо Мраз тази година дойде много по-рано като ми донесе ново дънце с нов процесор, памет, хард и т.н.
Но тъй като се появи като хала аз забравих да си дръпна дистрото специално за 64 битов процесор. И тъй като трябваше да бърза да прехвърля цялата информация от старите дискове, аз инсталирах старото ми сусе. Тръгна без проблем и се държи стабилно. Да обаче ме човърка мисълта, че съм изтървал някакви си там 3-4% производителност отгоре ако съм с 64 битова версия.
Някой има ли наблюдени над една и съща машина при смяна от 86 на 64?
Активен

"за всичко иде час" Еклесиаст 3:1
всеки пост - отговор на въпрос
-----------------
24.12.2003 "MS Free"

sunshine

  • Напреднали
  • *****
  • Публикации: 177
    • Профил
86_64 размисли
« Отговор #1 -: May 12, 2007, 19:50 »
Разликата е само в честотата, ако не броиш другите удобства като новите SIMD инструкции които изчисляват вместо
4 точки x 8 бита = 32 бита изчисляват 8 точки x 8 бита= 64 бита което го прави 2 пъти по-бърз за мултимедия от 32 битовия вариант и да не забравяме по-добрия (бързия) досъп до паметта което му вдига скорост 4-5 пъти повече от 32 битов вариант.

п.п. Надявам се да ти помогне това да си решиш проблема.
Активен

smelkomar

  • Напреднали
  • *****
  • Публикации: 429
    • Профил
86_64 размисли
« Отговор #2 -: May 12, 2007, 20:36 »
Цитат (sunshine @ Май 13 2007,19:50)
Разликата е само в честотата, ако не броиш другите удобства като новите SIMD инструкции които изчисляват вместо
4 точки x 8 бита = 32 бита изчисляват 8 точки x 8 бита= 64 бита което го прави 2 пъти по-бърз за мултимедия от 32 битовия вариант и да не забравяме по-добрия (бързия) досъп до паметта което му вдига скорост 4-5 пъти повече от 32 битов вариант.

п.п. Надявам се да ти помогне това да си решиш проблема.

I_I_Iи7. Остава да кажеш и кои точно приложения се възползват от новите инструкции. Жокер - все още са малко, т'ва към 2007-ма



Активен

Ползвам т'ва, к'вот ме кефи

TheNightmare

  • Гост
86_64 размисли
« Отговор #3 -: May 12, 2007, 22:42 »
Точно при SUSE не губиш нищо ако инсталираш 64бит система. Както не веднъж съм казвал това е дистро с перфектна интеграция на 32бит приложения в 64бит среда. Дали обаче реално печелиш нещо нз. Но все пак всичко върви, не ти искат пари що па да не го инсталираш '<img'>
Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
86_64 размисли
« Отговор #4 -: May 12, 2007, 23:24 »
Доколкото разбирам въпросът е дали има предимства използването на 32 битов Линукс на 64 битов процесор. Отговорът не е еднозначен. В 64 битов режим освен допълнителните инструкции има и допълнителни регистри. Това може да подобри производителността. От друга страна в 64 битов режим полетата в структурите се подравняват към 64, а не 32 бита, което ги прави по-големи, и съответно "гълта" повече memory bandwidth. Не съм правил сравнения, но вероятно разликата в производителността между двата режима може да се пренебрегне (освен от идиотите от Gentoo, които смятат 5% увеличаване на производителността за изключително важно '<img'>
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

TheNightmare

  • Гост
86_64 размисли
« Отговор #5 -: May 12, 2007, 23:58 »
Добре ако вземеме да сравняваме едно Gentoo бюлднато върху i686(или Arch) и Slackware който е оптимизиран за i486 на същи комп теоретично не би ли трябвало Gentoo(Arch) да е по-бързо заради оптимизации за конкретната архитектура. Тъй като имаме само една amd64 архитектура това не обезмисля ли използването на сорс дистрибуции от тази глезна точка, че всички останали дистрота са билднати за конкретната amd64 архитектура. Така че дори и това ми се струва е достатъчно за по-добра производителност на amd64 SUSE в сравнение с i586 SUSE. Не разбирам много от тия неща така че не съм сигурен дали това е така '<img'>
Активен

smelkomar

  • Напреднали
  • *****
  • Публикации: 429
    • Профил
86_64 размисли
« Отговор #6 -: May 13, 2007, 01:10 »
Цитат (TheNightmare @ Май 13 2007,23:58)
Добре ако вземеме да сравняваме едно Gentoo бюлднато върху i686(или Arch) и Slackware който е оптимизиран за i486 на същи комп теоретично не би ли трябвало Gentoo(Arch) да е по-бързо заради оптимизации за конкретната архитектура. Тъй като имаме само една amd64 архитектура това не обезмисля ли използването на сорс дистрибуции от тази глезна точка, че всички останали дистрота са билднати за конкретната amd64 архитектура. Така че дори и това ми се струва е достатъчно за по-добра производителност на amd64 SUSE в сравнение с i586 SUSE. Не разбирам много от тия неща така че не съм сигурен дали това е така '<img'>

Те мое да са билднати за amd64, но производителността е по-ниска от очакваното. И това е нормално, например колко от нас имат >4GB RAM вкъщи, което е част от features на 64-битовите архитектури, за което кол. памет е създадена май идеята 64-bit



Активен

Ползвам т'ва, к'вот ме кефи

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
86_64 размисли
« Отговор #7 -: May 13, 2007, 05:36 »
TheNightmare,

Сигурно ще е по-бързо. Но ако направиш сметката "време за компилация" + "време за използване на програмата" определено ще стане по-бавно '<img'>
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

sunshine

  • Напреднали
  • *****
  • Публикации: 177
    • Профил
86_64 размисли
« Отговор #8 -: May 13, 2007, 09:40 »
Цитат
I_I_Iи7. Остава да кажеш и кои точно приложения се възползват от новите инструкции. Жокер - все още са малко, т'ва към 2007-ма


smelkomar кой те пита колко на брой са приложенията, човека пита дали ще е по-бърз компа му или по-бавен и аз казвам че ще е по-бърз, но разбирасе че има едно АКО и то доста голямо
за това мерят производителността в Dhrystone MIPS да се види каква е приблизителната разлика в соростта и всичко се пресмята към теоритичен максимум  (DMIPS) например:

64 bits - Intel Core 2 Quad QX6700 2.66Ghz - 48196 DMIPS
64 bits - Intel Core 2 Duo E6700 2.66Ghz - 24098 DMIPS
32 bits - Intel Pentium 4-B 2.66Ghz - 5815 DMIPS

как така правят толкотва голяма производителност при една и съща честота на инструкциите, отговара е елементарен SIMD инструкции и понеже архитектурата не може да пусне на един такт да има повече от една инструкция за това реалните MIPS са 2664 а реалните DMIPS са доста повече защото не компенсират SIMD инструкците и става 8 пъти повече от тях.

п.п. нали това ми е работата да правя вгадени компютри и много добре познавам тънките места на всяка една архитектура и не е лошо да вземеш да попочетеш за компютърни архитектури преди да спориш със човек който е наясно с това.
Активен

smelkomar

  • Напреднали
  • *****
  • Публикации: 429
    • Профил
86_64 размисли
« Отговор #9 -: May 13, 2007, 10:23 »
Цитат (sunshine @ Май 14 2007,09:40)
п.п. нали това ми е работата да правя вгадени компютри и много добре познавам тънките места на всяка една архитектура и не е лошо да вземеш да попочетеш за компютърни архитектури преди да спориш със човек който е наясно с това.

Де'а. А аз само "копам" с nASM и tASM...
Та въпросът ще си го задам пак - колко от ежедневните приложения използват EMT64 или AMD64? QiP, Skype, игрите (кои?), браузърите, гледането на филми?

Искам също така да отбележа за резултатите, които си посочил. C2D е процесор с две ядра и споделен транспорт на данните от кеша второ ниво. Той има и отделен кеш контролер, за намаляване на латентността при този тип архитектура. Също така едно ядро от C2D серията е с подобрен branch-prediction, както и с нов тип FPU. Но тук идва интересното - за да получиш груба информация колко могат този тип процесори, просто делиш на 2 заради броя ядра (между другото е доказано, че са "по-бързи" най-много с 45-50% от дъ бест x86 моделът на пазара, и то в определени приложения), правиш големината на L2 да е еквивалентна на x86, правиш и на половина размера на думата и накрая к'во се получава? Платил си пари за същото ядро, което си имал на AthlonXP или P4-3GHz...



Активен

Ползвам т'ва, к'вот ме кефи

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
86_64 размисли
« Отговор #10 -: May 13, 2007, 17:47 »
sunshine,

Dhrystone е един от многото microbenchmarks, които не показват реалната производителност.

Отделно производителността зависи _много_ от размера на кеша на процесора, както и на вътрешната му архитектура (както знаеш една и съща инструкция може да се изпълнява за различен брой цикли в различните архитектури). След това идва и bandwidth-а на шината за паметта и още много други неща. Тъпо е да кажеш, че единствено SIMD vs. SISD e причината за ускорението.



Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
86_64 размисли
« Отговор #11 -: May 13, 2007, 18:10 »
smellkomar,

Не разбрах какво искаш да кажеш. Ясно е, че ако премахнеш всички нововъведения на дадена архитектура тя няма да е по-бърза от старата. За да стигнеш до този извод няма нужда да си писал на какъвто и да е асемблер '<img'>
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

sunshine

  • Напреднали
  • *****
  • Публикации: 177
    • Профил
86_64 размисли
« Отговор #12 -: May 13, 2007, 20:28 »
smelkomar, tarator не сте прави, и 100 ядра да имаш ако паметта не може да подаде повече инструкции за 1 сек нищо не можеш да направиш като честота а кеша е само за заблуда на противника (увеличава скороста с не повече от 2-3% което съм тествал), всичко това е VLIW технология.

последното разработено ядро от мен работи със 12 инструкции на такт и работи на 333 Mhz което прави 3996 Mhz
но за да го постигна използвам много банки памет като се има в предвид че оп-кода на инструкцията ми е 32 бита и използвам стандартна комп. памет 64 битова

(DDR667) реални 333Mhz- извлича 2 инструкции на такт което прави 667 Mhz ефективнки при 32 бита памет и 32 бит опкод, при 64 бита памет прави 1334 MIPS на банка (модул) защото извлича 2-пъти по 32 бита ( двуядрените процесори Core 2 Duo използват 2 банки да постигнат 2,66Ghz).
За да постигна това 3996 Mhz(MIPS) ми трябват 2 банки DDR1000 или 3 банки DDR800 с което постигам 47952 DMIPS (SIMD естествено) за едно ядро защото архитектурата ми е 96 бита на регистрите .

Колкото до SIMD инструкциите те се използват основно за мултимедия и игри, още не съм видял приложение да се нуждае от тях, слагат ги само като екстра.

Всичко е до сметка (големите фирми много лъжат)
така че си направете сметката и си опичайте акъла
Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
86_64 размисли
« Отговор #13 -: May 13, 2007, 21:13 »
sunshine,

_Ти_ не си прав. Ако кеша увеличаваше бързодействието само с 2-3% нямаше огромна част от площта на чиповете да е отделена за кеш. Виж, ако кажеш, че за твоето специфично приложение, кеша е увеличил бързодействието с 2-3% мога да ти повярвам (и да те посъветвам да се опиташ да го оптимизираш '<img'>.

> всичко това е VLIW технология.

Не ми е ясно какво намесваш VLIW, може би да ни покажеш колко съкращения знаеш? '<img'>

Изобщо не ме интересува какви ядра реализираш на FPGA, това е извън темата на дискусията. Говорим за различните архитектури за реализация на x68 i x86_32.
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

sunshine

  • Напреднали
  • *****
  • Публикации: 177
    • Профил
86_64 размисли
« Отговор #14 -: May 13, 2007, 22:47 »
tarator, Не е проблем със съкращенията и какво правя всички ги знаем съкращенията те не са важни за разлика от термина, проблема е че кеша само се използва за преобразуване на думата от  2 инструкции в паметта камто 8 в ядрото защото Core 2 Duo изпълнява 8 изнструкции за такт и за това се налага да има кеш, но това не оправдава 4 MB (разбира се има някакакъва оптимална памет която трябва), по-скоро е защото паметта е бавна и трябва да се синхронизират със опашка (FIFO), тоест поевтиняват като не се налага да слагат много модули памет.

VLIW e (Very Large Instuction Word) на един такт се изпълняват повече от една инструкция, това е архитектурата на съвремените компютри (като Core 2 процесорите).

Ако не знаеш прочети и се запознай, не мисля да обеснявам на профани и да си губя времето за глупости, с това си изказване
Цитат
Не ми е ясно какво намесваш VLIW, може би да ни покажеш колко съкращения знаеш? '<img'>

сам доказваш че си от тази група по темата.

Не се обиждаж, нищо лично.
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Каква е разликата между amd64 и Х86_64
Живота, вселената и някакви други глупости
bazu 8 3062 Последна публикация Apr 05, 2010, 22:38
от victim70
Slackware 14.1 86_64 - Няма звук
Настройка на програми
kumalisa 14 4247 Последна публикация Feb 20, 2016, 01:03
от watchman