flat assembler
Message board for the users of flat assembler.

Index > Heap > EM64T and x86-64

Author
Thread Post new topic Reply to topic
DustWolf



Joined: 26 Jan 2006
Posts: 373
Location: Ljubljana, Slovenia
DustWolf
What is the difference between the two?

A while ago an Intel person here got me convinced they are the same thing. But why would they be called 2 different things on a 3rd party app like CPU-Z if they were one and the same thing?

As the names suggest I'd guess that EM64T is just a way of addressing the memory and x86-64 is the actual extended register and instruction set. But if so does it mean that since Windows 64bit work fine on EM64T chips that x86-64 chips running it are being nastily under-utilized?

I once read a leaked MS memo saying something allong those lines but dunno... where is the truth?
Post 20 Nov 2007, 18:15
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger Reply with quote
asmfan



Joined: 11 Aug 2006
Posts: 392
Location: Russian
asmfan

_________________
Any offers?
Post 20 Nov 2007, 18:33
View user's profile Send private message Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
The truth is that Intel after unsuccessfuly introduced Itanium they released their X86-64 named EM64T as an a lame attempt to diminish what AMD did, but actually EM64T is the same kind of jump from i286 to IA32, but that time, of course, they don't called the 80386 processor an EM32T, that time was a revolutionary 32-bit processor!!

The above is my opinion, the objective view is that EM64T is just Intel implementation of AMD64 with some minimal differencies but there is NO IA-32 processor that is has only has the memory extentions but not long mode.
Post 20 Nov 2007, 18:34
View user's profile Send private message Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
Intel originally had IA-32 (intel architecture 32bit). Then it created 64bit architecure IA-64, better known as Itanium, completely unreleated to x86. Then AMD came and fucked it up, and hacked x86 to 64bit architecture called AMD64. Intel was forced to copy this architecture, and name IA-64 was already taken by Itanium, so it used EM64T. Later intel renamed EM64T to Intel64.

Now, when someone is refering to this architecture regardless if it is Intel or AMD implementation, he has a problem. Using AMD64/EM64T isn't too nice. That's why coupld of names was created for this, most notably "x86-64", and "x64" used by Microsoft. Term "amd64" is often used generically for both Intel and AMD64, as this was original name of architecture. Linux and technical part of Microsoft uses "amd64".

There is similar confusion with new mode introduced by architecture. AMD calls it long mode, and Intel calls it IA32e mode. Both these have two submodes: compatibility mode, which beheaves like 32bit processors, and new 64 bit mode. These two submodes are called same on both processors.

Beware of common mistake: "long mode" does NOT mean 64-bit mode. 64-bit mode is just one sub-mode of long mode on AMD processors. Prefer using term "64-bit mode", it is completely clear, unambigous, and works for both Intel and AMD.

Ufff, hope i explained it clearly


Last edited by vid on 20 Nov 2007, 18:55; edited 2 times in total
Post 20 Nov 2007, 18:50
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
MazeGen



Joined: 06 Oct 2003
Posts: 975
Location: Czechoslovakia
MazeGen
If I'm not wrong, Intel doesn't use "EM64T" anymore. It uses "Intel 64 Architecture" instead, while AMD uses "AMD64 Architecture".

"x86-64" or "x64" is used to refer x86 64-bit-capable architecture independently on the manufacturer.

http://en.wikipedia.org/wiki/X86-64#History_of_Intel_64
Post 20 Nov 2007, 18:52
View user's profile Send private message Visit poster's website Reply with quote
Tomasz Grysztar
Assembly Artist


Joined: 16 Jun 2003
Posts: 7718
Location: Kraków, Poland
Tomasz Grysztar
vid wrote:
Term "amd64" is often used generically for both Intel and AMD64, as this was original name of architecture.

In fact, the "really original" name of architecture was x86-64 (I still have an early manual books that name it this way), later changed to AMD64.
Post 20 Nov 2007, 22:24
View user's profile Send private message Visit poster's website Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
Quote:
In fact, the "really original" name of architecture was x86-64 (I still have an early manual books that name it this way), later changed to AMD64.

wow, nice, didn't know that
Post 20 Nov 2007, 22:25
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
DustWolf



Joined: 26 Jan 2006
Posts: 373
Location: Ljubljana, Slovenia
DustWolf
The part I still don't understand tho is why / how can CPU-Z call one x86-64 and the other EM64T... if there is no difference, how can CPU-Z detect it?

And if there are differences, what are they?
Post 21 Nov 2007, 16:07
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
For the **small** differences you can check asmfan's link. As for why CPU-Z detect them differently I think it just employ brand detection, that's all.

[edit]BTW, it was discussed already and seems that I was the thread starter Razz http://board.flatassembler.net/topic.php?t=4267 [/edit]
Post 21 Nov 2007, 16:14
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar.

Powered by rwasa.