VOGONS


PCIe devices on Windows 98 SE

Topic actions

Reply 80 of 107, by fosterwj03

User metadata
Rank Member
Rank
Member

I decided to run the benchmark on my RTX A2000 in Windows 11. It only scored a 2809. I wonder if the problem isn't so much the bus as it is that manufacturers depreciated 2D features around the time of the transition to PCI-E. I got this score even with a turbo clock of 1900 MHz on the GPU. I guess I just never noticed the lack of fast 2D performance since the Windows 95 days.

Attachments

Reply 81 of 107, by DoZator

User metadata
Rank Member
Rank
Member

The "Stretching" results in your last screenshot are fine (Unlike the previous one). Even better than 9x with AGP. The rest of the results are also quite acceptable for comfortable work. Therefore, it doesn't seem like they've devalued 2D features. Тhey just implemented support differently, most likely. Apparently, they did not manage to do anything of the kind for Windows 98, since it was already on the verge of end of support.

As a result, we have what we have. Full 2D with AGP bus, and limited with PCI-E.

Apparently, this cannot be fixed in any way .

Reply 82 of 107, by fosterwj03

User metadata
Rank Member
Rank
Member

What I meant to say is that I think Windows 98 supports the full bandwidth of PCI-E x16 (Gen 1) based on the 3D benchmarks, but manufacturer support didn't refine the 2D performance.

Tom2D shouldn't need much bandwidth to draw lines and polygons. And Tom's Hardware describes relatively small bitmaps for the Stretching test which again wouldn't need much bandwidth.

I think it comes down to manufactures ending Windows 9x support before they had a chance to refine the drivers. Only the earliest PCI-E cards got any driver support, and only a couple of releases at that. Driver developers likely concentrated on 3D performance since that's what reviewers focused their tests on. 2D was probably an afterthought.

I thought that I might install Win Me on my overkill PC in the next few weeks. I could use my PCI-E Matrox G550 at first and run the Tom2D test on it. Matrox has excellent driver support even for Windows 98, and they were known for excellent 2D performance as well. We'll see if the x1 interface bandwidth has any impact on 2D performance.

Reply 83 of 107, by fosterwj03

User metadata
Rank Member
Rank
Member

OK, forget it. The PCI-E G550 is horrible in Windows Me. I can't even run the DX diagnostic (it reports no DirectX acceleration). I'm afraid that I don't have much time to troubleshoot it. Too bad. It should be a pretty good card, but it disappointed me yet again.

Reply 84 of 107, by NJRoadfan

User metadata
Rank Oldbie
Rank
Oldbie

Microsoft deprecated DirectDraw acceleration a very long time ago. The focus was accelerating 3D functions and using those functions as much as possible with compositing windows managers (DWM). When Vista and the WDDM video drivers appeared, 2D video performance TANKED because the WDDM 1.0 specification didn't accelerate GDI functions. The WDDM 1.1 drivers and newer fixed this by adding acceleration of the newer Direct2D API and changes to the GDI stack.

Tom's Hardware did an in-depth article on this: https://www.tomshardware.com/reviews/2d-windo … s-gdi,2539.html

The article even notes that 2D performance in Windows XP was already suffering with the latest generation of graphics cards!

In a fit of irony, the Radeon X800 series only has WDDM 1.0 drivers. ATI/AMD dropped all support for the X-series CPUs before Windows 7 appeared.

Reply 85 of 107, by ravewulf

User metadata
Rank Newbie
Rank
Newbie
ruthan wrote on 2021-12-28, 18:57:

Probably because PCI-E is running in PCI mode -133 MB/s share for all device include discs, although some very modern MB has multiple parallel PCI buses to improve that.. AGP is up to 2048 MB/s (AGP 8x) and there even some better AGP specific code which give you than more much more brute force.

Old thread but adding info in case anyone comes across it

PCIe doesn't have a PCI 133 MB/s mode, the speed is negotiated between the motherboard and PCIe card during POST to see what the highest common speed is and then uses that. From a compatibility perspective, Win98 doesn't care what speed it's running at as it only deals with the card at the software level.

At the software level, PCI Express preserves backward compatibility with PCI; legacy PCI system software can detect and configure newer PCI Express devices without explicit support for the PCI Express standard, though new PCI Express features are inaccessible.

https://en.wikipedia.org/wiki/PCI_Express#Architecture

There are also PCI to PCIe x1 adapter cards so you can put a low-profile PCI card (gigabit NIC, for example) in a PCIe slot for the benefit of not needing to share the bus with other cards.

Reply 86 of 107, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie
ravewulf wrote:

PCIe doesn't have a PCI 133 MB/s mode, the speed is negotiated between the motherboard and PCIe card during POST to see what the highest common speed is and then uses that. From a compatibility perspective, Win98 doesn't care what speed it's running at as it only deals with the card at the software level.

Its there any proof of it, some test for Win98 which can measure it? Not thing is some post negotiation second if not downgraded by some driver within Win98.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 87 of 107, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

There's no specific PCIe legacy mode. And PCI-X or AGP without GART, as more relevant to Win9x example, will still work at full speed in any environment.

Also - basic GUI acceleration does not use any AGP GART features in Windows, because it's DirectDraw. Any performance improvements vs regular PCI are achieved due to AGP being PCI 66 Mhz on steroids - bus is not shared with other components.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 88 of 107, by AlexZ

User metadata
Rank Member
Rank
Member

There isn't much point in running PCIe graphics cards in Windows 98 as I believe the drivers will be too new for good Direct3D 7 compatibility. 53.04 is the last driver version that should be used.

Pentium III 900E, ECS P6BXT-A+, 384MB RAM, NVIDIA GeForce FX 5600 128MB, Voodoo 2 12MB, 80GB HDD, Yamaha SM718 ISA, 19" AOC 9GlrA
Athlon 64 3400+, MSI K8T Neo V, 1GB RAM, NVIDIA GeForce 7600GT 512MB, 250GB HDD, Sound Blaster Audigy 2 ZS

Reply 89 of 107, by ravewulf

User metadata
Rank Newbie
Rank
Newbie
ruthan wrote on 2022-05-07, 17:10:
ravewulf wrote:

PCIe doesn't have a PCI 133 MB/s mode, the speed is negotiated between the motherboard and PCIe card during POST to see what the highest common speed is and then uses that. From a compatibility perspective, Win98 doesn't care what speed it's running at as it only deals with the card at the software level.

Its there any proof of it, some test for Win98 which can measure it? Not thing is some post negotiation second if not downgraded by some driver within Win98.

It's not a question of "proof," it's the hardware spec. PCIe 1.0/1.1 always runs at 250 MB/s per lane (4 GB/s for x16 cards) even if the connection is idle. Newer versions can down-clock to PCIe 1/2/3/etc speeds for compatibility with older cards/motherboards or for power savings but the PCIe 1.x speed is the floor - going lower isn't supported by the spec.

Reply 90 of 107, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Hardware specs means nothing without proper software support or drivers.. If im not work PCI-E is backwards compatible with PCI and if pci.vxd is in play for such operations, i doubt that is running with PCI-E speed, there is nothing like pci-e.vxd
You could say the same with Sata in Dos, its Sata1 slowest is 150 MB/s, but without proper drivers you get 2 MB/s same with Windows 9x without enabling DMA.

So i would like to see some PCIE-E videocard data transfer test to show, that data are really copied with PCI-E speed, not PCI.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 91 of 107, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

Are you aware that PCI was available in 33/66/133 Mhz and 32-bit/64-bit variations? Not to mention that 25 Mhz PCI was a real thing. Or that ISA and VLB buses, working above their respective 8 Mhz and 33 Mhz, were a thing too?

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 92 of 107, by ravewulf

User metadata
Rank Newbie
Rank
Newbie
ruthan wrote on 2022-05-29, 10:23:
Hardware specs means nothing without proper software support or drivers.. If im not work PCI-E is backwards compatible with PCI […]
Show full quote

Hardware specs means nothing without proper software support or drivers.. If im not work PCI-E is backwards compatible with PCI and if pci.vxd is in play for such operations, i doubt that is running with PCI-E speed, there is nothing like pci-e.vxd
You could say the same with Sata in Dos, its Sata1 slowest is 150 MB/s, but without proper drivers you get 2 MB/s same with Windows 9x without enabling DMA.

So i would like to see some PCIE-E videocard data transfer test to show, that data are really copied with PCI-E speed, not PCI.

Storage devices are a different beast, especially if you're using DOS or PIO mode instead of UDMA. Even then, data throughput is not the same thing as the hardware link speed. SATA I hardware will always run at a constant 150 MB/s link speed even if the data throughput is significantly lower due to some other bottleneck (eg PIO mode, slow HDD/SSD/optical drive, unoptimized driver, etc).

On the other hand, you don't need special drivers to make PCI/PCIe go faster just like you don't need special drivers to make the FSB or HT bus go faster, use faster RAM, or use a faster CPU.

EDIT: HWiNFO screenshots added
2.5 GT/s x16 lanes = 4 GB/s

Attachments

Reply 93 of 107, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Thanks, but its still not benchmark but info from diagnostic program, it would not be first time when HWinfo is wrong..

Last edited by ruthan on 2024-01-27, 23:54. Edited 1 time in total.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 94 of 107, by ravewulf

User metadata
Rank Newbie
Rank
Newbie

Well, I don't know what to tell you as you have a fundamental misconception about how computer hardware works. HWiNFO is not misreporting it as PCIe 1.x is physically not capable of running at any other speed than 2.5 GT/s unless you OC the 100 MHz reference frequency, which will very likely cause stability issues for connected cards as they all expect that fixed data rate.

The problem with your line of thinking is that there is, to my knowledge, no practical example to show the limit of PCIe on Windows 98 as you will always hit a bottleneck somewhere else in the system first. The best I can do is show that the performance isn't worse under Win98 vs other OS's as long as there is software support - but that still isn't actually testing the PCIe bus, it's mainly testing the CPU, GPU, OS features, DirectX support, etc.

Specs
CPU: AMD Athlon 64 x2 5000+ 2.6 GHz
Mobo: ASUS M2N68-LA (aka HP Narra2), AM2 socket, Nvidia GeForce 6150SE nForce 430 chipset, PCIe 1.1, SATA-II 3 Gb/s
RAM: 4 GB dual-channel kit (2x 2 GB) DDR2 800 MHz, 5-5-5-18 (running at @ 773MHz as frequency is tied to the CPU speed)
GPU: GeForce 7600 GT (PCIe)
Sound card: Audigy 2 ZS
OS Drives: 64 GB SATA SSD for Win98, dual-boot 256 GB SSD for XP/Vista

Win98 SE notes
Does not support multi-core CPUs, it will only use the first core
Unofficial SP3 was NOT installed as it causes freezing and BSOD issues on this platform
R. Loew patches installed for higher RAM capacity and SATA support (PATCHMEM & PTCHSATA) - no other chipset drivers, just the generic ones provided by Win98
Latest GeForce 82.69 driver (edited inf file to add additional GPUs and supported resolutions)

XP and Vista notes
All service packs and updates installed
Latest nForce chipset drivers - 15.26 (XP) and 15.49 (Vista)
Latest GeForce drivers - 307.83 (XP ) and 309.08 (Vista)
Performance power profile selected (no power-saving modes)
XP was tested a second time with one CPU core disabled in MSConfig to mimic Win98 not being able to use the 2nd core for a like-for-like comparison
And an additional XP test with a GeForce 750 TI (368.81 driver) to show where the CPU vs GPU bottlenecks are.

3DMark 99 MAX (DirectX 6)
28613 (98 SE)
26280 (XP dual core)
26124 (XP single core)
25723 (750 TI, XP dual core)
15443 (Vista dual core)

3DMark 2000 (DirectX 7)
25813 (98 SE)
22429 (XP dual core)
22253 (XP single core)
22147 (750 TI, XP dual core)
15497 (Vista dual core)

Win98 came in first with XP in 2nd for both 3DMark 99 and 3DMark 2000. Vista being last is unsurprising as anything less than DirectX 9 was shunted into a poorly optimized legacy compatibility module.
The 750 TI test shows that we're limited by the CPU frequency/IPC and OS/driver overhead rather than the GPU.

3DMark 2001 SE (DirectX 8 )
33499 (750 TI, XP dual core)
25114 (XP dual core)
24178 (98 SE)
23136 (XP single core)
17210 (Vista dual core)

The 750 TI takes the lead, so now we are limited by the GPU rather than the CPU.
Of the 7600 GT results, XP with both CPU cores enabled takes the lead, showing the importance of moving to multi-core CPUs. However, Win98 still beats the single-core XP test. Vista is still held back by the legacy DirectX module.

3DMark03 (DirectX 9) Win98 needed version 3.5.0 as 3.6.0 would not run, though the scores are officially compatible between these two versions.
45992 (750 TI, XP dual core)
13299 (Vista dual core)
13258 (XP dual core)
13050 (XP single core)
12956 (98 SE)

We're now extremely GPU limited as the 750 TI is more than three times faster than the 7600 GT in this test.
Vista takes a narrow lead over XP in DirectX 9 now that it isn't held back by the legacy DirectX modules, though it is likely within testing variance as the 7600 GT results are very close together. Win98 falls to last place here but not by that much. For the most part, the results are clustered together by GPU first and then based on the number of CPU cores as a secondary factor.

Again, this isn't actually testing the PCIe bus, only showing that performance is being held back by other factors (mostly CPU and GPU). Not having a dedicated PCIe driver makes zero difference because it's already compatible with the existing PCI driver. There is no special "PCIe speed unlock" needed. The driver doesn't care that it's PCIe instead of PCI, it just works as fast as the CPU and GPU will let it.

Reply 95 of 107, by DoZator

User metadata
Rank Member
Rank
Member

The problem of low D2 execution speed under Windows 98 with nVidia PCI-e video cards (GeForce PCX\6\7 ), as it turned out later, was due to not enabled WC (Write Combining) for certain memory addresses. On an old AGP machine, WC is enabled by default (Usually, no user action is required). And on later PCI-e computers, WC did not turn on, so the speed was too low. At the moment, I know of only one automated solution that is designed to turn on WC before Windows starts (MTRRLFBE.EXE LFB WC), however, in my case, due to some flaws in the program, it did not work quite fully, causing severe brakes , when the amount of memory available for Windows (With PATCHMEM 7.2) is more than 3GB. The limit below this value helped. Keep this in mind if you try and run into the same difficulties. The second way (More correct, but more complicated) is to fine-tune the MTRR manually for a specific configuration, based on the unique address distribution map in the system. With this option, there is no need to limit the memory (In my case, it is ~ 3500MB), WC turns on correctly. Thus, we can now say with confidence that PCI-e support for nVidia video cards is performed at a very good level (Excellent performance in both 3D and now also in 2D). As it was by default, you can see in the picture above how it is now:

mtrr_PCIe_7950.PNG
Filename
mtrr_PCIe_7950.PNG
File size
12.76 KiB
Views
2665 views
File license
Public domain

(GF7950GT PCI-e, Win9x, WC)

As you can see, initially the most problematic indicator "Stretching", after enabling WC on a PCI-e system, is not only normal (was - 120, became - 1266), but even surpassed not only the indicators of the old AGP PC based on GeForce FX, but also the indicators with the same PCI-e system, obtained in Windows XP.

Unfortunately, according to the currently available information, PCI-e video cards from ATI are not treated. I don't have an AMD card, so it would be great if someone could confirm or deny this information. Difficulties in configuring MTRR on server boards based on Intel chipsets have also been reported. There is no information about motherboards from AMD yet.

Reply 97 of 107, by Vin324pl

User metadata
Rank Newbie
Rank
Newbie

I was able to run the 7600gt Pci-e card on the P5VD2-MX board. I used drivers 82.69
https://retrosystemsrevival.blogspot.com/2019 … ivers-8269.html
after the installation, two cards popped up in the device manager, I hid the one with the yellow exclamation mark and the correct one I forced the installation of the controls, only as 7600 gt from the list of available
I am attaching a photo from 3dmark 2001 se 😀

Attachments

Reply 98 of 107, by AlexZ

User metadata
Rank Member
Rank
Member

7600gt is not of much use in Windows 98 because of poor driver compatibility with old games. 45.23 is the last driver with decent game compatibility.

Pentium III 900E, ECS P6BXT-A+, 384MB RAM, NVIDIA GeForce FX 5600 128MB, Voodoo 2 12MB, 80GB HDD, Yamaha SM718 ISA, 19" AOC 9GlrA
Athlon 64 3400+, MSI K8T Neo V, 1GB RAM, NVIDIA GeForce 7600GT 512MB, 250GB HDD, Sound Blaster Audigy 2 ZS

Reply 99 of 107, by xtreger

User metadata
Rank Newbie
Rank
Newbie
Kamerat wrote on 2015-08-07, 02:31:
Here is a little list of PCIe devices that that I've tested successfully on Windows 98 SE, no special PCIe driver used. I've inc […]
Show full quote

Here is a little list of PCIe devices that that I've tested successfully on Windows 98 SE, no special PCIe driver used. I've included an updated NVAML.INF file for the NVIDIA cards with the 81.98 driver for autodetecting.

NVIDIA GeForce 7800 GTX (NV47/G70) 256MB 256bit GDDR3
Device ID: 0091
Driver: 81.98 (4.14.10.8198)
Driver autodetects: NO
3DMark 2001: 28333
3DMark 2001: 29461 490MHz/1380MHz[/code]
Other devices:

JMicron JMB36X (SATAII controller)
Vendor ID: 197B
Device ID: 2360
Driver: 0.92
Comment: Using this for boot/Windows hard drive.

Hi! I'm trying to do pretty much the same thing, but struggling. I have a P5KPL-AM/PS motherboard with an nVidia Geforce 7100 GS. For reference, this is the model I have: https://www.mercadopc.com/logic/servlet/item?iditem=196935.
RAM is 2 Gb, but I've used MaxFileCache=512000 and MaxPhysPage=30000 in system.ini, so that Windows detects around 700 Mb RAM. I installed Win98 SE normally, then used the unofficial nVidia 82.69 driver pack (NV8269.zip).

The GFX card gets autodetected but is extremely unstable and constantly gives the "The display adapter is not working/conflicts, etc. ... " sort of error. So in one boot I'm able to change the resolution to 16 bit with 640x480 res, but as soon as I try to change it to 32 bit with 1024x768 res, the PC flat out freezes. Next boot, it gives the above error and Win98 gets stuck after the username/password screen.

Since you've done this successfully @Kamerat, any pointers on another method to get 7100 GS working? From what I see, you used some official nVidia driver and it somehow worked for 7800 GTX. But how do I know which nVidia driver to use for my 7100 GS? And of course the autodetection won't happen, so how do I force the system to detect it?