VOGONS


First post, by Riikcakirds

User metadata
Rank Member
Rank
Member

I was benchmarking my PCI video card, S3- 968 and a UDMA-133 PCI controller card, (Promise TX2) and they both top out at 85 MB/S in benchmarks.
This is a Pentium 133 430HX with 32 MB EDO. The maximum ram speed in benchmarks like cacheck, speedsys and memtest 4.3.7 is also 85MB/s. Coincidence?
Note, I'm not taking about L1 cache or L2 cache speed here, but main memory speed.

I also tested both above PCI cards in a 440BX (PII-266) system with 256MB 66mhz Sdram. The S3-968 now benchmarks at 104MB/s and the Promise TX2 at 122 MB/s. That system has a main memory speed of 124 MB/s in cacheck.

So is PCI bandwith (theoretical maximum of 133MB/S) limited by your maximum system RAM bandwidth.

Reply 1 of 8, by myne

User metadata
Rank Oldbie
Rank
Oldbie

Uh... Where do you think the data is going/coming from?

The slowest link in the chain is always the max speed.

I built:
Convert old ASUS ASC boardviews to KICAD PCB!
Re: A comprehensive guide to install and play MechWarrior 2 on new versions on Windows.
Dos+Windows 3.11+tcp+vbe_svga auto-install iso template
Script to backup Win9x\ME drivers from a working install
Re: The thing no one asked for: KICAD 440bx reference schematic

Reply 2 of 8, by technokater

User metadata
Rank Newbie
Rank
Newbie

Yep, data goes over the memory bus. It is even worse if the data goes to the CPU first, that's why they invented direct memory access (DMA).

Reply 3 of 8, by darry

User metadata
Rank l33t++
Rank
l33t++
Riikcakirds wrote on 2024-06-26, 14:43:
I was benchmarking my PCI video card, S3- 968 and a UDMA-133 PCI controller card, (Promise TX2) and they both top out at 85 MB/S […]
Show full quote

I was benchmarking my PCI video card, S3- 968 and a UDMA-133 PCI controller card, (Promise TX2) and they both top out at 85 MB/S in benchmarks.
This is a Pentium 133 430HX with 32 MB EDO. The maximum ram speed in benchmarks like cacheck, speedsys and memtest 4.3.7 is also 85MB/s. Coincidence?
Note, I'm not taking about L1 cache or L2 cache speed here, but main memory speed.

I also tested both above PCI cards in a 440BX (PII-266) system with 256MB 66mhz Sdram. The S3-968 now benchmarks at 104MB/s and the Promise TX2 at 122 MB/s. That system has a main memory speed of 124 MB/s in cacheck.

So is PCI bandwith (theoretical maximum of 133MB/S) limited by your maximum system RAM bandwidth.

The first question to ask is what is the benchmark actually benchmarking (what operations it is actually doing)

For example, if a benchmark calculates how much data can be transferred to or from main memory, in a given time frame, from a peripheral (video card or controller disk combo, for example) through the PCI bus, the potential bottlenecks are the PCI bus, the peripheral being benchmarked and main memory.

It's actually more complex than that, as the CPU's FSB becomes a limiting factor because access to main memory and the PCI bus needs to go through it, potentially impacting both (on architectures designed this way, such as the 440 family).

Someone who has a better understanding of this than I do will hopefully add to this and correct any potential misconceptions I might have.

Reply 4 of 8, by Riikcakirds

User metadata
Rank Member
Rank
Member

So tried in a 486 Asus PCI 486SP3 and the main memory speed is 41MB/s.
Vspeed in dos gives 40MB/s for S3-968
Promise Tx2 using SSD in DMA mode(low processor usage) also gives 40MB/s. Of course PCI bus is shared so the 40MB/s is shared over all PCI devices depending on usage.

Most 486s I think top out around 50MB/s memory bandwidth for really top end systems so you are getting around 1/3 of PCI bandwidth potential in best case scenario.

PCI was introduced in 1993 but you need a PII systems from late 1997 to hit the 133MB/S potential bandwidth.

Reply 5 of 8, by Riikcakirds

User metadata
Rank Member
Rank
Member
darry wrote on 2024-06-26, 15:23:
The first question to ask is what is the benchmark actually benchmarking (what operations it is actually doing) […]
Show full quote
Riikcakirds wrote on 2024-06-26, 14:43:
I was benchmarking my PCI video card, S3- 968 and a UDMA-133 PCI controller card, (Promise TX2) and they both top out at 85 MB/S […]
Show full quote

I was benchmarking my PCI video card, S3- 968 and a UDMA-133 PCI controller card, (Promise TX2) and they both top out at 85 MB/S in benchmarks.
This is a Pentium 133 430HX with 32 MB EDO. The maximum ram speed in benchmarks like cacheck, speedsys and memtest 4.3.7 is also 85MB/s. Coincidence?
Note, I'm not taking about L1 cache or L2 cache speed here, but main memory speed.

I also tested both above PCI cards in a 440BX (PII-266) system with 256MB 66mhz Sdram. The S3-968 now benchmarks at 104MB/s and the Promise TX2 at 122 MB/s. That system has a main memory speed of 124 MB/s in cacheck.

So is PCI bandwith (theoretical maximum of 133MB/S) limited by your maximum system RAM bandwidth.

The first question to ask is what is the benchmark actually benchmarking (what operations it is actually doing)

For example, if a benchmark calculates how much data can be transferred to or from main memory, in a given time frame, from a peripheral (video card or controller disk combo, for example) through the PCI bus, the potential bottlenecks are the PCI bus, the peripheral being benchmarked and main memory.

It's actually more complex than that, as the CPU's FSB becomes a limiting factor because access to main memory and the PCI bus needs to go through it, potentially impacting both (on architectures designed this way, such as the 440 family).

Someone who has a better understanding of this than I do will hopefully add to this and correct any potential misconceptions I might have.

From what I can tell these benchmarks just test the speed of the card and PCI bus. With the TX2 and DMA modes processor usage is limited, even on the 486 I tested.

Reply 6 of 8, by rasz_pl

User metadata
Rank l33t
Rank
l33t

Yes and No :]

Yes - every real life usage will go thru ram so you cant go faster

N0 - you could arrange a situation where transfer happens to/from onboard L2 cache, or maybe CPU banging out one MMX register to Video ram in a loop, or even crazier directly between two PCI cards. Only such test would show you true potential of particular PCI controller.

https://github.com/raszpl/FIC-486-GAC-2-Cache-Module for AT&T Globalyst
https://github.com/raszpl/386RC-16 memory board
https://github.com/raszpl/440BX Reference Design adapted to Kicad
https://github.com/raszpl/Zenith_ZBIOS MFM-300 Monitor

Reply 7 of 8, by Riikcakirds

User metadata
Rank Member
Rank
Member
myne wrote on 2024-06-26, 14:56:

Uh... Where do you think the data is going/coming from?

The slowest link in the chain is always the max speed.

Yes, but I think 99% of people who bought a Pentium 1 from 1994-97 just assumed they had a 133MB/s bus shared between all PCI devices. Reality was they had around 70-90MB/S bus shared between all devices (VGA, IDE, PCI-SCSI cards etc).

It was probably the same with VLB. The specs show 25 MHz: 100 MB/s, 33 MHz: 133 MB/s, 40 MHz: 160 MB/s.
As most 486s have around a maximum 40 MB/S memory bandwidth VLB will be limited by that, same with PCI bus on a 486.

Reply 8 of 8, by douglar

User metadata
Rank l33t
Rank
l33t

It might be interesting to see if changing available memory bandwidth without changing the PCI speed changes your numbers.

Can you change the memory wait states or put FPM in the computer to see how that affects your bench mark?

p.s. If we had one of those fancy ring busses, adding more devices could increase total bandwidth at the expense of overall latency. But that's certainly not what we have here. And no one wants to troubleshoot a ring bus, so forget that I brought it up.