VOGONS


486 FPU vs 387 ?

Topic actions

First post, by 386SX

User metadata
Rank l33t
Rank
l33t

Hi,

I'd like to know if the internal 486 FPU at same frequency is much or less good than the various 387 versions that were around back then. And for example in Quake, where I understand the 486 (as I tested on DX4-100) is not bad but far from the Pentium, is the FPU the main limitation of the 486 (and 386/387 obviously) or the CPU is the main limiting factor?
Thank

Reply 1 of 20, by tayyare

User metadata
Rank Oldbie
Rank
Oldbie
386SX wrote:

Hi,

I'd like to know if the internal 486 FPU at same frequency is much or less good than the various 387 versions that were around back then. And for example in Quake, where I understand the 486 (as I tested on DX4-100) is not bad but far from the Pentium, is the FPU the main limitation of the 486 (and 386/387 obviously) or the CPU is the main limiting factor?
Thank

As far as I know the difference in performance regarding 387 and 486 internal FPU is huge, even "order of magnitude" huge. 486 runs in circles around 387. This is also how I remembered from my past, good old FORTRAN programing days 🤣

GA-6VTXE PIII 1.4+512MB
Geforce4 Ti 4200 64MB
Diamond Monster 3D 12MB SLI
SB AWE64 PNP+32MB
120GB IDE Samsung/80GB IDE Seagate/146GB SCSI Compaq/73GB SCSI IBM
Adaptec AHA29160
3com 3C905B-TX
Gotek+CF Reader
MSDOS 6.22+Win 3.11/95 OSR2.1/98SE/ME/2000

Reply 2 of 20, by stamasd

User metadata
Rank l33t
Rank
l33t

Recommended reading:
http://wiretap.area.com/Gopher/Library/Techdo … /Cpu/coproc.txt

I/O, I/O,
It's off to disk I go,
With a bit and a byte
And a read and a write,
I/O, I/O

Reply 3 of 20, by Anonymous Coward

User metadata
Rank l33t
Rank
l33t

From what I can remember from various benchmarks I ran, the Cyrix 486DLC w/Fasmath 83D87 at 40MHz was roughly 2/3 of the FPU performance of a real intel 486 at the same clockspeed. However, real world performance could be considerably slower.

"Will the highways on the internets become more few?" -Gee Dubya
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium

Reply 5 of 20, by 386SX

User metadata
Rank l33t
Rank
l33t
tayyare wrote:
386SX wrote:

Hi,

I'd like to know if the internal 486 FPU at same frequency is much or less good than the various 387 versions that were around back then. And for example in Quake, where I understand the 486 (as I tested on DX4-100) is not bad but far from the Pentium, is the FPU the main limitation of the 486 (and 386/387 obviously) or the CPU is the main limiting factor?
Thank

even "order of magnitude" huge. 486 runs in circles around 387.

😁

Reply 7 of 20, by 386SX

User metadata
Rank l33t
Rank
l33t
kixs wrote:

486 uses next generation FPU. It's only normal to be faster. Like Pentium runs in circles around 486 😉

Even nowdays after 20 years my ultimate 386DX-40 would probably still loose again an old friend's 486SX... 😒

😁 😁

Reply 8 of 20, by Eep386

User metadata
Rank Member
Rank
Member

The fastest 387 FPU, the Cyrix FasMath 83C87DX, simply can't hold a candle to even a lower-clocked 486DX FPU. I used to own a FasMath on my Blue Lightning 486BL so I could testify that. A Weitek 3167 might be a bit of a different story, but unfortunately most programs outside of specific CAD applications are not optimized to use it.

The fastest floating point unit available for the 387 is the Intel RapidCAD, which is actually a more-or-less full 486DX floating point unit coupled to a seriously stripped down 486 integer core (all the 486 instructions and cache were removed, rendering it merely a fast 386). The RapidCAD has a small dummy companion chip that plugs into the FPU socket (as the FPU itself is built into the main RapidCAD chip) to generate the floating point interrupt. Despite the name the RapidCAD is fully supported by any generic x86 program that does not use 486+ opcodes.

Life isn't long enough to re-enable every hidden option in every BIOS on every board... 🙁

Reply 9 of 20, by 386SX

User metadata
Rank l33t
Rank
l33t
Eep386 wrote:

The fastest 387 FPU, the Cyrix FasMath 83C87DX, simply can't hold a candle to even a lower-clocked 486DX FPU. I used to own a FasMath on my Blue Lightning 486BL so I could testify that. A Weitek 3167 might be a bit of a different story, but unfortunately most programs outside of specific CAD applications are not optimized to use it.

The fastest floating point unit available for the 387 is the Intel RapidCAD, which is actually a more-or-less full 486DX floating point unit coupled to a seriously stripped down 486 integer core (all the 486 instructions and cache were removed, rendering it merely a fast 386). The RapidCAD has a small dummy companion chip that plugs into the FPU socket (as the FPU itself is built into the main RapidCAD chip) to generate the floating point interrupt. Despite the name the RapidCAD is fully supported by any generic x86 program that does not use 486+ opcodes.

I am looking the wiki about it, interesting! But why nobody talks about it as the "fastest" 386? Should it be faster than a DX-40 plus 387 if as it says it will outperform a DX-33 by 35% at most.

Reply 10 of 20, by kixs

User metadata
Rank l33t
Rank
l33t

There aren't many RapidCAD chips around and when they sell they are quite pricey. Usually simple 386DX upgrade is 486DLC which will run integer apps/games just fine at around 486DX-33 speeds. FPU is another story but you want real 486/Pentium for apps/games that need it.

I like 286/287 and 386/387 combos for nostalgia reasons. Otherwise they run AutoCAD quite slow but this is what I used to have 😉

Requests are also possible... /msg kixs

Reply 11 of 20, by Anonymous Coward

User metadata
Rank l33t
Rank
l33t

I haven't read up on the intel 486 in a while, but I don't recall that the 486's internal math coprocessor is really "next generation". I was pretty sure it was almost identical to the i387, with the main difference being a vastly improved bus interface (being located directly on the CPU die). For sure, the 486's FPU is faster than the 387, but I think describing it as an order of magnitude faster might be stretching it.

For those that ran blue lightning systems, I could see how being stuck with a 387 FPU would be a real disappointment, but I think that mainly stems from the fact that the FPU would be running at 1/2 or 1/3 the CPU (all blue lightnings are at least clock doubled). This is probably why IIT and ULSI tried to bring clock doubled 387s to market.

I'm very interested to know how 387 vs 487 (not the 487sx) performs on a clock for clock basis. True 386 and DLC and BL chips should all be considered, because I found in my benchmark tests from years ago the CPU could have a huge impact on the FPU results. There's not much point in even debating until we have some numbers to look at. I think nobody is arguing against the 487 being faster, it's just a matter of how much faster.

"Will the highways on the internets become more few?" -Gee Dubya
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium

Reply 12 of 20, by feipoa

User metadata
Rank l33t++
Rank
l33t++

This is an interesting question: How far off was the Cyrix FasMath 387+ FPU from that of the Intel 486DX of the same clock speed. Plans for the Ultimate 486 Benchmark Comparison will include this analysis and these benchmarks. Actually, I was going to include all PGA 132 chips in the comparison as well as some results using those PGA-132 to PGA-168 486 adapter kits.

From my previous testing, a really fast 386 system, one with a 486SXL-40 on a high-end motherboard has ALU performance between a 486 DX25 and 486 DX33, but closer to the 25. If you run the 486SXL at 50 MHz, then you get to about a DX33. As for FPU, I suspect half that, but would need to run some tests. Certainly not an order of magnitude, which is 10-fold). Unfortunately, I do not own an ISA-only 486 motherboard to run these tests. I suspect VLB-based and PCI-based motherboards would be faster than an ISA only 486, even if expansion cards are restricted to the ISA bus.

If you don't want to overclock your 386's bus to 50 MHz, I have discovered that some motherboards really shine with the SXL2-50 at 2x25 MHz, so much that the performance is about the same as a 1x50 MHz system. Other motherboards, I found, do not shine at 2x25 MHz. I will report on this later in the forum when I have finished this testing.

kixs wrote:

486 uses next generation FPU. It's only normal to be faster. Like Pentium runs in circles around 486 😉

It would be interesting to disable one of the parallel ALU units of the original Pentium chips to see how much impact that had.

Anonymous Coward wrote:

I'm very interested to know how 387 vs 487 (not the 487sx) performs on a clock for clock basis.

Are there any performance differences between the IIT 487 and IIT 387 chips?

e.g. http://www.chipdb.org/img-iit-4c87dlc-40-alum … -print-2916.htm vs. http://www.chipdb.org/img-iit-3c87-40-diff-print-2907.htm ? Or are those 487 chips just for some motherboards which have compatibility issues with the 387 chips when a DLC CPU is used?

Plan your life wisely, you'll be dead before you know it.

Reply 13 of 20, by Eep386

User metadata
Rank Member
Rank
Member

Not sure, exactly. It could be that they either work around some problems that certain revision Cyrix 486DLC chips have with generic 387 FPUs, or they could be revised versions with improved performance and/or standards compliance (such as ULSI's DX/DLC / SX/SLC line).

As an aside, I rather like ULSI's oddball chips, even though they aren't exactly 100% standards compliant. It made virtually no difference in games that used the chip anyway.

Life isn't long enough to re-enable every hidden option in every BIOS on every board... 🙁

Reply 14 of 20, by kixs

User metadata
Rank l33t
Rank
l33t

CPU has major impact on real apps/games. FPU benchmarks can show big difference between different FPU's (up to 80%) but in real apps/games (that use FPU) there are marginal differences - maybe up to 10% at the most (between slowest and fastest).

It's almost impossible to directly compare 387 with 486DX performance. While there might not be some major difference between 387 and 487 part in DX cpu, there are major differences with CPU-FPU communication. In 486DX fpu instructions execute in a single cycle, while on 386/387 combo they take several (3-5) and take big performance hit.

I might take a look sometime into this comparison. I guess 486DLC-33 or SLC will be needed on a good 386 board to get near 486DX-33 CPU performance. I usually test FPU in AutoCAD 10 or 11 with big 3D sample DWG's and measure the time it takes to execute HIDE (hidden lines removal in 3D scene).

Already did this tests with 287 and most 387 fpus but didn't include the 486DX or better.

Requests are also possible... /msg kixs

Reply 15 of 20, by tayyare

User metadata
Rank Oldbie
Rank
Oldbie

Some time in the past I was required to create and run quite complicated FORTRAN programs for a jet propulsion course, and I clearly remember a specific program completing each iteration in 35 minutes on a 386DX-40 with mathco and about 2.5 minutes on a 486DX-33. Of course I'm not sure about how much is this difference come from FPU and how much from the better CPU.

GA-6VTXE PIII 1.4+512MB
Geforce4 Ti 4200 64MB
Diamond Monster 3D 12MB SLI
SB AWE64 PNP+32MB
120GB IDE Samsung/80GB IDE Seagate/146GB SCSI Compaq/73GB SCSI IBM
Adaptec AHA29160
3com 3C905B-TX
Gotek+CF Reader
MSDOS 6.22+Win 3.11/95 OSR2.1/98SE/ME/2000

Reply 16 of 20, by GPA

User metadata
Rank Newbie
Rank
Newbie

I have recently performed a few tests, but although they are quite heavily dependent on the FPU, they cannot be considered as pure FPU benchmarks. But one might find them interesting anyway.

386/387DX-33 (128KB cache on OPTI 496SLC mobo, 8MB RAM, CL-GD5428 VLB):
superPI 8M digits: 1 hr 15 mins 25.77 secs
quake demo1: 1.5 fps
quake2 (soft) demo1: 0.3 fps

487SX-16 (no L2 cache on OPTI 495 mobo, 16MB RAM, CL-GD5428 VLB):
superPI 8M digits: 48 mins 47.412 secs
quake demo1: 1.9 fps
quake2 (soft) demo1: 0.4 fps

486DX4-100 (256KB cache on i420EX mobo, 16MB RAM, RIVA128 PCI):
superPI 8M digits: 8 mins 38.55 secs
quake demo1: 10.7 fps
quake2 (soft) demo1: wasn't able to install riva128 drivers under Windows so the benchmark didn't run

Pentium-60 (256KB cache on i430LX mobo, 16MB RAM, RIVA 128 PCI):
superPI 8M digits: 7 mins 33.55 secs
quake demo1: 16.6 fps
quake2 (soft) demo1: 3.7 fps

So you can see that even at 16 MHz vs 33 Mhz the 487 scores higher than 387 (487SX is identical to 486DX), and even at 60 MHz vs 100 MHz Pentium is faster than 486.

Reply 17 of 20, by Unknown_K

User metadata
Rank Oldbie
Rank
Oldbie

I would think the 486 just having built in cache to keep the FPU fed would help quite a bit.

Collector of old computers, hardware, and software

Reply 18 of 20, by Scali

User metadata
Rank l33t
Rank
l33t
Unknown_K wrote:

I would think the 486 just having built in cache to keep the FPU fed would help quite a bit.

Yes. From what I recall, the 487 is not very different from the 387.
However, as mentioned, the fact that it is integrated into the CPU means it has lower latency than the external bus and socket that the 386 used.
On top of that, a 486 system may have faster bus, chipset, memory and indeed cache to make it perform faster at FPU tasks, even if the core FPU itself is the same.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 19 of 20, by GPA

User metadata
Rank Newbie
Rank
Newbie

well in my case the lack of built in cache in 386/7 was compensated by a few factors:

1. 487 mobo did not include ANY L2 cache, while 386/7 mobo had L1 cache of 128KB (versus although faster, but just 8K built in the 487)
2. 386/7 bus was clocked at 33 MHz vs 16 MHz for 487

And the lower bus clock speed impacted the memory transfer speeds as well, memspeed reported:
read speed: 20.4 MB/sec for the 386/7DX-33 and 14.4 MB/sec for 487SX-16,
write speed: 20.9 MB/sec for the 386/7DX-33 and 15.1 MB/sec for 487SX-16.

Cachechk has also shown transfer speed of:
23.3 MB/sec for the 386/7DX-33
16.4 MB/sec for the 487SX-16.

You can see that the cache transfer speed per clock cycle if definitely better with a 487SX-16, but it still cannot beat the 386/7DX-33 working at twice as fast clock speed.

Ah, and chipsets were pretty identical. OPTi 495 in both cases. Same video cards, too. But 386/7 had just 8Megs of RAM vs 16 Megs for 487.