Автор Тема: Каква е разликата между amd64 и Х86_64  (Прочетена 2199 пъти)

bazu

  • Напреднали
  • *****
  • Публикации: 810
  • Distribution: Debian
  • superman
    • Профил
Та това го видях като гледах в distrowatch за gentoo (10) и архитектурите който поддържа и ги има и двете и така ми стана интересно. :) Викам amd64 да е 64битово, но само амд процесорите да работят с него, а другото е и интел да работи, но не виждам логиката тогава изобщо да се пуска като отделно амд64 щом X86_86 може да го препокрие
« Последна редакция: Apr 05, 2010, 13:59 от bazu »
Активен

Lord Bad

  • Напреднали
  • *****
  • Публикации: 1667
  • Distribution: Fedora 13
  • Window Manager: GNOME
  • Jedi Knight
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #1 -: Apr 05, 2010, 14:57 »
Не си прав amd64 е стандартната 64 битова архитектура на за х86 процесор. Въпреки името и - процесорите на интел също използват нея. На някои места тя е известна и като x86_64, но това са просто синоними. Има и други 64 битови архитектури - примерно ia64 на Intel, но на пазара на дребно amd64 си шета горе-долу сама. Amd-то в името е понеже първо amd я въведоха с Athlon 64.
Активен

Fuelled by Fedora 13 "Goddard"
====================================
Rock it!

bazu

  • Напреднали
  • *****
  • Публикации: 810
  • Distribution: Debian
  • superman
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #2 -: Apr 05, 2010, 15:32 »
Накратко значи amd64 и Х86–64 са едно и също ?
Активен

Lord Bad

  • Напреднали
  • *****
  • Публикации: 1667
  • Distribution: Fedora 13
  • Window Manager: GNOME
  • Jedi Knight
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #3 -: Apr 05, 2010, 16:35 »
Да. Дистрибуциите, обаче, не могат да се разберат кое от двете да ползват и си ги въртят и двете - в Arch Linux примерно ползват x86_64, в Ubuntu - amd64 и това вероятно обърква хората.
« Последна редакция: Apr 05, 2010, 16:37 от Lord Bad »
Активен

Fuelled by Fedora 13 "Goddard"
====================================
Rock it!

bazu

  • Напреднали
  • *****
  • Публикации: 810
  • Distribution: Debian
  • superman
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #4 -: Apr 05, 2010, 17:19 »
Благодаря за разяснението. :)
Активен

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #5 -: Apr 05, 2010, 19:29 »
Не си прав amd64 е стандартната 64 битова архитектура на за х86 процесор. Въпреки името и - процесорите на интел също използват нея. На някои места тя е известна и като x86_64, но това са просто синоними. Има и други 64 битови архитектури - примерно ia64 на Intel, но на пазара на дребно amd64 си шета горе-долу сама. Amd-то в името е понеже първо amd я въведоха с Athlon 64.
Не са синоними, в двете архитектури резултата е различен микрокод за процесора. Обикновенно има начин да се разпознае архитектурата и този код да не се изпълнява ако е стартиран на друг процесор. Но ако всичко пасва скороста на изпълнение е с около 10-20% по-голяма на компилираният код.
Другото нещо е че Intel  е стандарта, архитектурно двата 'процесора' са тотално различни. Intel са базирани на функционални хардуерни модули, което позволява изключването на части от процесора които не се използват, докато AMD са базирани на програмируеми матрици (FPGA) архитектура.
AMD също имат собствен набор за конвейрна изпълнение малко по различен от интелските, но патента е на интел все пак. Тези инструкции са продиктувани от архитектурата им, в много от случаите интел казват че това са хакове приложими на AMD архитектурата, отковара от AMD е 'да, но нали работят'.
Така че казано за краен потребител:
опция на amd64 на amd - работи с 2-5% по призводително от конкурентен интел. На интел платворма е с 2-3% по-бавен този код, заради пропускането на оптимизацията. (сравнвнието за 1 е интел с i86_64 опция)
опция i86_64 - работи еднакво добре и на двата процесора, но не използва акселериращите 'хаковете' на AMD процесора.
Температурно (в електрониката темперетура е еквивалент на надеждност) intel са по-добри заради изключването на цели модули когато не се използват (в амд само се забраняват, което сваля консумацията но не напълно).
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

Lord Bad

  • Напреднали
  • *****
  • Публикации: 1667
  • Distribution: Fedora 13
  • Window Manager: GNOME
  • Jedi Knight
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #6 -: Apr 05, 2010, 21:47 »
Момко, едва ли някой се е занимавал с процесорни микроархитектири в тоя форум колкото мен, за да ми разправяш такива глупости. Интел приеха разработеното от AMD разширение за стандартно преди много време.
Цитат
The term x86-64 is the original naming of a 64-bit extension to the x86 instruction set specified by AMD and implemented by AMD, Intel, VIA, and others. It extends the virtual and physical address spaces, doubles the width of the integer registers from 32 to 64 bits, increases the number of integer registers, and provides other enhancements. It is fully backwards compatible with 32-bit code[1] without any performance loss. The generic term x86-64 is sometimes shortened to x64 as another vendor-neutral term for x86-64 processors from any company.

AMD K8 was the first family of processors implementing the architecture; this was the first significant addition to the x86 architecture outside Intel. Intel was forced to follow suit and introduced a modified NetBurst family which was fully software-compatible with AMD's design and specification, despite some minor differences; this extended programming model and instruction set was initially referred to as IA-32e or EM64T in Intel's manuals and marketing. VIA Technologies introduced x86-64 in their VIA Isaiah architecture, first used in VIA Nano.

AMD later introduced the name AMD64 for marketing purposes; Intel introduced its Intel 64 naming soon thereafter.
Проверявай си фактите преди да се изказваш...
Активен

Fuelled by Fedora 13 "Goddard"
====================================
Rock it!

n00b

  • Напреднали
  • *****
  • Публикации: 1248
  • Distribution: OSX
  • Window Manager: 10.6, 10.8, 10.9
  • Live to hack, hack to live.
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #7 -: Apr 05, 2010, 22:31 »
Има разлики между amd64 и x86_64 но са малки.

Примерно sysenter/sysexit и syscall/sysret и други такива.
Активен

mobilio - професионални мобилни приложения

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Re: Каква е разликата между amd64 и Х86_64
« Отговор #8 -: Apr 05, 2010, 22:38 »
Може може, нот това е извадка от рекламна брушура на AMD. Патента е на интел за инструкциите и ядрото, разширението е по-късно но е интелско разширение, иначе се нарушава патентно право. В рекламната политика няма патенти и задръжки.
А младежа е 40 годишен и се занимава от 6502 8085/86 архитектурата до ARM процесори.
Пробвай прост пример да компилираш (да има синус и косинус обаче) с двете 'синонимни' опции и виж резултата, дори само като размер, ако не разбираш минемоничният код.
Не вярвай на брошурките им, никога не са побликували спецификация на вътрешната си архитектура, както и интел, запознат съм с тях благодарение на NDA договор. И ако прочете внимателно между редовете се вижда че AMD има малко повече инструкции, от които при компилирането се ползват 10-ина. Другите са под NDA и немогат да се хванат от разработчиците на реверс инженеринг.
Не смятам да изтъквам кой е прав кой е крив, както и няма да се разровя за номера на патентите на 2х8,16,32,64 битовата интелска архитектура, както и да търся цитати, но съм с gentoo разлика има между кода генериран с двете опции. Ако някой се интересува да го пробва - това е най-сигурният начин за проверка.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"