LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   What's the difference between i386, i586, and i686 (https://www.linuxquestions.org/questions/linux-hardware-18/whats-the-difference-between-i386-i586-and-i686-198431/)

Arc4ne 06-27-2004 06:47 PM

What's the difference between i386, i586, and i686
 
Hello.

Sorry for the newbie question, I tried searching and saw little relevance.

So back to the question, What's the difference between i386, i586, and i686?

I know i386 is set to work for ALL computers compatible, but what is i586, and i686 for?

I have a Intel Pentium 4 Processor ( 2.8C ), which one would be best for optimizations? i686 since it's a higher number?

Thanks

BajaNick 06-27-2004 06:51 PM

They refer to the processor type like old 386 and 486 intel processors. When you see a file thats says -noarch that means it works on most any intel chip.
I might have not explained it exactly but thats pretty close.

Arc4ne 06-27-2004 07:42 PM

but is their any favorites or bests? i.e.: i386 being slower then i686?

LavaDevil94 06-27-2004 10:31 PM

You should always get a binary (if you cant get the source) that matches your arch number if you can (it doesnt really matter, but it could give better performance, as the binary is optimized for your architecture). A P4 would be an i686, so try to grab those.

vinay_s_s 06-27-2004 11:34 PM

actually, i386, i586, i686 refer to the processors manufactured by intel like 80386, and pentium 1,2 and pentium 3 or greater.

gd2shoe 06-28-2004 01:16 AM

A pentium is a 586, pentium 2 = 686, P3 = 786, and so on. To the best of my knowlege Intel chips are backwards compatible, so hypothetically you shouldn't have any trouble with the lower numbers.

Electro 06-28-2004 02:08 AM

Quote:

but is their any favorites or bests? i.e.: i386 being slower then i686?
Not true. If you clocked an 80386 at 800 MHz. It will be the same speed as an Pentium II clocked at 400 MHz. Pentium II executes two instructions per cycle. The Pentium II has more technology built into it like MMX, FPU, L2 cache, pipelined bus, etc. The number of transistors does not always qualify as a fast processor. It just means that we have to burn more money to pay for it and more heat have to be dissipated from it.

Quote:

You should always get a binary (if you cant get the source) that matches your arch number if you can (it doesnt really matter, but it could give better performance, as the binary is optimized for your architecture). A P4 would be an i686, so try to grab those.
This is not always true. Sometimes its better to use eariler architecture. A Pentium 4 is 80786.

Quote:

A pentium is a 586, pentium 2 = 686, P3 = 786, and so on. To the best of my knowlege Intel chips are backwards compatible, so hypothetically you shouldn't have any trouble with the lower numbers.
Almost right, Pentium III is an 80686. Pentium 4 is an 80786.

For Pentium 4, you have to find programs that are compiled for the Pentium 4 or else the performance will be low.

All Intel processors uses the ISA instruction set back in the early 80s. First it was 8-bit instruction set. Then there was the 16-bit. Next the 32-bit instruction that all processors since 80386 were using it. Each processor model designates with the 80x86 notation. Each model increase in features and sometimes performance. Now the x86 computer industry is on the urge of going to the 64-bit instruction set.

8086 = 8-bit
80186 = 8-bit
80286 = 16-bit
80386 = 32-bit
80486 = 32-bit
80586 = 32-bit = Pentium, Pentium MMX, K5, K6, K6-II, K6-III
80686 = 32-bit = Pentium Pro, Pentium II, Pentium III, Athlon, Athlon XP, Opteron*, Athlon FX-51*, Athlon FX-53*, Athlon 64*
80786 = 32-bit = Pentium 4

* = 32-bit/64-bit

If you have compiled a program for 686 architectures, only the processors equal to it or above it can execute it. If you have compiled a program with MMX/SSE/3DNOW instructions, processors that have it will be optimized and processors that do not have those instructions will not be optimized.

Go to http://www.sandpile.org/ for more information.

Arc4ne 06-28-2004 04:02 AM

thank you!!! a very enlightening post :)!

nuka_t 08-18-2004 04:13 PM

cooool, i just figured out what x86 means. heh. i always wondered about that...

koolks 04-19-2007 02:49 AM

Thank You Very much for this beautifully scripted explaination.


Quote:

Originally Posted by Electro
Not true. If you clocked an 80386 at 800 MHz. It will be the same speed as an Pentium II clocked at 400 MHz. Pentium II executes two instructions per cycle. The Pentium II has more technology built into it like MMX, FPU, L2 cache, pipelined bus, etc. The number of transistors does not always qualify as a fast processor. It just means that we have to burn more money to pay for it and more heat have to be dissipated from it.


This is not always true. Sometimes its better to use eariler architecture. A Pentium 4 is 80786.


Almost right, Pentium III is an 80686. Pentium 4 is an 80786.

For Pentium 4, you have to find programs that are compiled for the Pentium 4 or else the performance will be low.

All Intel processors uses the ISA instruction set back in the early 80s. First it was 8-bit instruction set. Then there was the 16-bit. Next the 32-bit instruction that all processors since 80386 were using it. Each processor model designates with the 80x86 notation. Each model increase in features and sometimes performance. Now the x86 computer industry is on the urge of going to the 64-bit instruction set.

8086 = 8-bit
80186 = 8-bit
80286 = 16-bit
80386 = 32-bit
80486 = 32-bit
80586 = 32-bit = Pentium, Pentium MMX, K5, K6, K6-II, K6-III
80686 = 32-bit = Pentium Pro, Pentium II, Pentium III, Athlon, Athlon XP, Opteron*, Athlon FX-51*, Athlon FX-53*, Athlon 64*
80786 = 32-bit = Pentium 4

* = 32-bit/64-bit

If you have compiled a program for 686 architectures, only the processors equal to it or above it can execute it. If you have compiled a program with MMX/SSE/3DNOW instructions, processors that have it will be optimized and processors that do not have those instructions will not be optimized.

Go to http://www.sandpile.org/ for more information.



All times are GMT -5. The time now is 09:10 AM.