Thread: Intel 64 vs AMD 64

  1. #1
    System Novice siavoshkc's Avatar
    Join Date
    Jan 2006
    Location
    Tehran
    Posts
    1,246

    Question Intel 64 vs AMD 64

    What are the differences? Does Intel 64 have 8 added 64 bit registers like AMD64?
    Learn C++ (C++ Books, C Books, FAQ, Forum Search)
    Code painter latest version on sourceforge DOWNLOAD NOW!
    Download FSB Data Integrity Tester.
    Siavosh K C

  2. #2
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Yes, the 8 extra GP registers and 8 extra SSE registers are available in both AMD and Intel. The same code works on both.

    As a user, you shouldn't notice any difference. There are some minor differences at the kernel level, but user-mode there's no difference.

    --
    Mats

  3. #3
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Depends on whether you mean the IA-64 architecture (Itanium CPUs), which is a completely different beast from the old x86 with only a microcode-level emulation of the old architecture, or the Intel EM-64T extensions that are a copy of AMD's x86-64 architecture, which is a 64-bit revision of x86.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  4. #4
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    CornedBee is of course right - Itanium/IA64 is completely and utterly different from x86-64, whether that is on the Intel or AMD platform. My previous answer assumes it's x86-64.

    Some details on the differences betwen Intel and AMD implementations of x86-64:
    1. AMD supports 3DNow!, Intel doesn't - no matter of what number of bits the processors support. This can be seen by the user if the user is trying to run code written for 3DNow! - but most recent code is using SSE anyways, which is available in both.

    2. Intel implements CMPXCHG16B on EM64T, which is only available in the later models of AMD processor. Can be used in user-mode, but it's not exactly a common type of operation. Some operating systems use this instruction to do certain types of atomic operations.

    3. AMD has a built-in memory controller, which also contains a GART (Grapichs Area Redirection Table), which if correctly programmed can be used to redirect DMA access to above 4GB when the hardware only supports 32-bit memory access.

    IA64 is about as similar to x86-64 as Japanese is to English... ;-)

    --
    Mats

  5. #5
    System Novice siavoshkc's Avatar
    Join Date
    Jan 2006
    Location
    Tehran
    Posts
    1,246
    I mean Intel® 64 Architecture.
    I feel Intel is not straightforward in its namings fo 64 bit. It never writes x64. I don't know but if this technology is invented by AMD, Intel should buy it. And if so, it should call it AMD64.
    EM64T stands for Extended Memory and doesn't reflect added GPRs.
    Learn C++ (C++ Books, C Books, FAQ, Forum Search)
    Code painter latest version on sourceforge DOWNLOAD NOW!
    Download FSB Data Integrity Tester.
    Siavosh K C

  6. #6
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by siavoshkc View Post
    I mean Intel® 64 Architecture.
    I feel Intel is not straightforward in its namings fo 64 bit. It never writes x64. I don't know but if this technology is invented by AMD, Intel should buy it. And if so, it should call it AMD64.
    EM64T stands for Extended Memory and doesn't reflect added GPRs.
    Intel has every right to use that technology, thanks to the cross-license agreement between AMD and Intel, which also allows AMD to use any Intel technology, such as SSE3, SSE4 etc.

    EM64T and AMD64 as well as x86-64 are all the same concept and functionality. Intel's and AMD's internal architectures are different, but the software will not notice that.

    I think the name EM64T is used by Intel to avoid the conflict with IA-64, which they still say is their "64-bit processor", rather than a "extended 32-bit processor". They have different markets, but can do roughly the same things - x86 is better for some things (just-in-time compilation for example), whilst IA64 is better at other things (not many :-) ).

    --
    Mats

    --
    Mats

  7. #7
    System Novice siavoshkc's Avatar
    Join Date
    Jan 2006
    Location
    Tehran
    Posts
    1,246
    Thanks matsp.
    Learn C++ (C++ Books, C Books, FAQ, Forum Search)
    Code painter latest version on sourceforge DOWNLOAD NOW!
    Download FSB Data Integrity Tester.
    Siavosh K C

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. File IO
    By Jack1982 in forum C++ Programming
    Replies: 9
    Last Post: 10-15-2007, 01:14 AM
  2. Intel syntax on MinGW ?
    By TmX in forum Tech Board
    Replies: 2
    Last Post: 01-06-2007, 09:44 AM
  3. AMD Athlon 64 => i386 / i586 ?
    By Snip in forum Tech Board
    Replies: 2
    Last Post: 03-19-2006, 07:04 AM
  4. Replies: 17
    Last Post: 10-12-2003, 12:09 AM
  5. If the RGB color is (64, 64, 255), change it to (64, 255, 64).
    By Grayson_Peddie in forum C# Programming
    Replies: 2
    Last Post: 06-14-2003, 04:26 PM