VOGONS


First post, by alvaro84

User metadata
Rank Member
Rank
Member

(Foreword - I feel the need to apologize for the lack of pictures - one of the boards is built into a permanent system and it wouldn't look too useful with all the cards and cables covering most of it.)

I happen to have two, apparently identical AB-PB4 boards. For the tests I equipped both with an Am5x86-133 CPU and set the jumpers to 40MHz FSB. Both have the same jumper settings, the same BIOS settings (let alone one being often CMOS reset in the absence of a working battery), the same board revision (1.3), the same chipset revision (A1?) and even the same BIOS - and I mean I physically moved the chip from one board to the other and did testing on it too with absolutely identical BIOS.

What really confuses me is the greatly different PCI VGA performance they show. Results with a Matrox Mystique 220 PCI:

Landmark video:
Fast board: 39321 chr/ms
Slow board: 26568 chr/ms

3DBench 2.0:
Fast board 103 fps
Slow board 96.8 fps

Shareware Doom demo3, 32MiB of RAM of which 8MiB was allocated for of smartdrive cache:
Fast board 1041 realtics = 71.75 fps
Slow board 1059 realtics = 70.53 fps

Vspeed, done with Asus V3000 PCI this time:
Fast board 31.33MB/s A000, 17.69MB/s LFB
Slow board 26.17MB/s A000, 17.33MB/s LFB

It seems that the issue is clearly PCI related, complex tasks like Doom aren't too deeply affected. It's also worth noting that according to vspeed LFB access seems to have some other bottleneck so the speed difference is much smaller in this area.

Motherboard settings, in both cases:

Chipset page:
-------------
DRAM read: fastest
DRAM write: fastest
SRAM read: 2-1-1-1
SRAM write: 0WS

PCI fast back-to-back: enabled
Hidden refresh: enabled

PCI page:
---------
CPU to PCI write buffer: enabled
CPU to PCI byte merge: enabled
PCI to DRAM buffer: enabled

Motherboard chip silkscreens (fast board):

ALI
M1487 A1
9539 TS6
B49787SE

ALI
M1489 A1
9538 TS6
B39135Sc

Motherboard chip silkscreens (slow board):

ALI
M1487 A1
9550 TS6
B46545SE

ALI
M1489 A1
9603 TS6
B42218SE

I first had the 'fast' board and hoped to have the same stellar performance when I grabbed the second one. Now I'm completely stumped.
Does anyone have an idea what the root cause of the difference could be? Should I do a chipset register dump? If so, how?

Edit. Oh, and I even tried the FSB hotswap trick (ie. boot at 133MHz then set the jumpers to 160MHz on the fly) too that often helps to prevent other boards from halving the PCI clock at 40MHz FSB - it didn't change anything.

Last edited by alvaro84 on 2021-02-13, 08:53. Edited 1 time in total.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 2 of 16, by chinny22

User metadata
Rank l33t++
Rank
l33t++

Cant help but will though my results in as have the same motherboard, same revision, same CPU and same bios settings. differnces are I'm not overclocking and video is a Diamond Stealth 2000 S3 virge DX

Just quick test with what was already installed, bypassed start up files to try and keep it to a base standard.
3D Bench 83.3
Doom 1490 realtics 50.13 fps

Reply 3 of 16, by Deksor

User metadata
Rank l33t
Rank
l33t

Can you take a picture of the chipset ? Maybe there's a different chipset revision on both causing this behaviour ?

Trying to identify old hardware ? Visit The retro web - Project's thread The Retro Web project - a stason.org/TH99 alternative

Reply 4 of 16, by alvaro84

User metadata
Rank Member
Rank
Member
chinny22 wrote on 2021-02-13, 11:03:

Cant help but will though my results in as have the same motherboard, same revision, same CPU and same bios settings.

Thanks, I'll give 33 a try. I have a few Virges lying around, and eve the permanent build's VGA is a Miro Virge/DX. It's just one single jumper difference to get to 33MHz FSB. It would be funny if they behaved yet another new way...

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 5 of 16, by alvaro84

User metadata
Rank Member
Rank
Member
Deksor wrote on 2021-02-13, 11:24:

Can you take a picture of the chipset ? Maybe there's a different chipset revision on both causing this behaviour ?

In case the silkscreens aren't enough:

chipset_fast.jpg
Filename
chipset_fast.jpg
File size
282.03 KiB
Views
1502 views
File license
CC-BY-4.0

("Fast" chipset)

chipset_slow.jpg
Filename
chipset_slow.jpg
File size
230.26 KiB
Views
1502 views
File license
CC-BY-4.0

("Slow" chipset)

I also ran benchmarks at 4*33MHz, with a Diamond Virge/DX (I was lucky again to have this exact card) timings maxed out as usual:
Landmark:
Slow: 19660 chr/ms
Fast: 29789 chr/ms

3DBench2:
Slow: 79.9 fps
Fast: 85.0 fps

Doom Shareware demo3, size -2/-1:
Slow: 1320 realtics = 56.58 fps / 1482 realics = 50.4 fps
Fast: 1255 realtics = 59.51 fps / 1406 realtics = 52.12 fps

I also tried the usual Miro Virge I use in the fast system. Basically the only real difference was 31710 chr/ms in Landmark, the difference in other results was basically negligible.

The starring cards:

2virge.jpg
Filename
2virge.jpg
File size
97.38 KiB
Views
1502 views
File license
CC-BY-4.0

About that "-2/-1" part: I forgot to mention that the original benchmark runs were at "-2" size on amadeus777999' request to fit in some database somewhere around (Anton's "Doom Benchmark Results" page). This is what -2 means, and just in case this time I've run it at "-1" (full screen with HUD) too as it seemed to match better chinny22's results - so it must have been their settings.

Now I have more questions. Are Diamond Virge/DX cards equal? Or perhaps we are dealing with 3 different flavors of the same AB-PB4 board? I hope at least Am5x86 CPUs are identical or else...

It may have been just the two different 3dbench versions because the other (1.0) gave me 83.3 fps with the "slow" board and the Diamond Virge - which matches those results perfectly. Small differences in Doom benchmark may be explained by my latest habit of loading cache before running it - 50.4 fps is very-very close to 50.13.

About the chipset: may be a difference if that 1489's "SC" vs "SE" means anything. I didn't even suspect it until now as they're in a so obscure place for a revision marking.
@chinny22 - what are the last to characters of your chips' markings? (And the whole strings for that matter?)

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 6 of 16, by chinny22

User metadata
Rank l33t++
Rank
l33t++

Ah yes I'm running 3dbench 1.0 didn't notice the version number, I'm using an older version of Phils dos benchmark pack. Will "upgrade" latter this week so we can compare on a level playing field

I cant get into the PC as its under 2 other 486's an almost full 24 port switch, 3 kvm's and a SC55 (desktops in my house should really go by the name stackable)
In my hardware spreadsheet I've listed the part number as 5510631-PB4668GT although I'm not sure where I got that code from off the board.

I know the Diamond Stealth had different bios versions, I've got a 4mb card P/N 23030220-205 with bios V1.04

Here is the most recent post of the system although the pics are pretty low res. CPU and NIC have changed as well, not that the NIC matters for this.

Re: Another 486 being built

Reply 7 of 16, by mpe

User metadata
Rank Oldbie
Rank
Oldbie
alvaro84 wrote on 2021-02-13, 05:51:

Does anyone have an idea what the root cause of the difference could be? Should I do a chipset register dump? If so, how?

You can easily dump/modify chipset registers with debug.exe from ms-dos. Just in case BIOS is buggy and don't set something up.

First unlock them:

-o 22 03
-o 23 c5

then read them:

-o 22 register_number
-i 23

List of registers is in the M1489/M1487 datasheet. You can check PCI divider, mem timing, actual cache timing, pci latency timer, active buffers, etc.

One thing is accuracy of the clock generator. They can be within tolerance but one can be slightly faster than the other (like 39.8 vs 40.3) and that could make the difference.

Blog|NexGen 586|S4

Reply 8 of 16, by alvaro84

User metadata
Rank Member
Rank
Member
mpe wrote on 2021-02-15, 15:09:

...

Thanks, it'll be quite a project! But, you gave me a lead. I'll be really curious as soon as I'm capable of feeling curiosity. After my first workday, I just can't...

Edit. And talking about debug... Well, if that's the string that I saw in the first two blocks of the C000:0000 dump then the Diamond's BIOS is 1.01.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 9 of 16, by SSTV2

User metadata
Rank Oldbie
Rank
Oldbie

Tested my AB-PB4 also, seems it's on a faster side, in 3D bench 1.0C with exact BIOS settings and 5x86 @ 160MHz + 2MB S3 Trio64 I get 103.6FPS. Noticed one oddity about that MB though, ISA bus clock affects PCI bus performance slightly.

Reply 10 of 16, by amadeus777999

User metadata
Rank Oldbie
Rank
Oldbie
SSTV2 wrote on 2021-02-20, 06:00:

Tested my AB-PB4 also, seems it's on a faster side, in 3D bench 1.0C with exact BIOS settings and 5x86 @ 160MHz + 2MB S3 Trio64 I get 103.6FPS. Noticed one oddity about that MB though, ISA bus clock affects PCI bus performance slightly.

Could you bench it with a Matrox or Tseng?

Reply 12 of 16, by alvaro84

User metadata
Rank Member
Rank
Member

Well, it took me more than a month (making the program itself took 20 minutes with a break in the middle...), but finally I could sit down with these PB4s and check everything. The results are not very surprising but bewildering nonetheless.

Fast control register space:

00:  FF 0D 0D C5 FF FF FF FF FF FF FF FF FF FF FF FF
10: 3F 3F 01 03 9F 40 07 02 FF 54 50 4F 00 00 08 FF
20: AC 32 1D FF FF 80 00 00 04 33 45 DF FF FF FF FF
30: 10 FD E0 00 00 00 E0 EE 00 00 00 00 03 01 00 31
40: 2B FF 00 01 1F 80 FF FF FF FF FF FF FF FF FF FF

Slow control register space:

00:  FF 0D 1D C5 FF FF FF FF FF FF FF FF FF FF FF FF
10: FF 33 01 03 9F 40 C7 02 FF 54 50 4F 80 00 08 FF
20: AD 32 1D FF FF 80 00 00 04 33 45 DF FF FF FF FF
30: 10 FD E0 00 00 00 E0 EE 00 00 00 00 03 05 00 07
40: 2B FF 00 01 1F 80 FF FF FF FF FF FF FF FF FF FF

I made notes about the differences too:

		 F	 S
02/b4-7: 0 1 M1489 Version ID
10: 3F FF Memory cfg: F: 16/0/16/0 (1*32)
11: 3F 33 S: 0/0/16/16 (2*16)
16: 07 C7 L2$ ct: F: normal
S: early L2/tag timing
1C: 00 80 Memory Data Buffer Direction Control
Reserved, must be kept low
20: AC AD CPU->PCI Buffer Control Reg /
Dynamic ISA Cycle Check, enabled on SLOW
3D: 01 05 Misc Reg 1: SLOW: SMI RSM indicator control = 1
3F: 31 07 Shadow I/O port for Port 70h data (RTC related)

16: Unstable
1C: No effect
20: No effect
3D: No effect

The last few lines show my experiments. I tried to force the 'slow' settings on the 'fast' board basically without any result. Except for freezes on changing the L2 cache control register on the fly. No big surprise here.

So - as changing the 2x16M memory modules to 1*32M couldn't make the slow board magically faster - the main difference seems to boil down to M1489 chip version. which,of course, I can't change through the control registers. So it makes Abit PB4 kind of a lottery - and all the ALI M1487/89 based boards, btw. They are not bad, even the 'slow' one is decent for a late 486 but, as PCI video access speed goes, it can't hold a candle to the 'fast' version which - happens to be built on the earlier version of M1489. Why the heck did anyone change it...?

And, please someone with these boards confirm if the last character in the M1489 markings can be a good indicator of chip version.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 14 of 16, by alvaro84

User metadata
Rank Member
Rank
Member
pshipkov wrote on 2021-04-03, 05:29:

Shared info about one of these boards here. It is a fast one.

Fast as in it can do 100+ fps 3dbench (it seems so...) and 30k+ in Vspeed or Landmark video?
If so, I see no hope of telling the chips apart as your M1489 is "SE" not "SC" like my faster one.

I hope I can lay my hands on more of these and test them - though they're not that common. Most late 486s are those super cheap tiny SiS496 ones. Actually I found these two in the last 6 years or so.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 15 of 16, by pshipkov

User metadata
Rank Oldbie
Rank
Oldbie

Yes, these boards are not very common.
There is a landmark 6 screengrab included. Chars/ms feels very misleading for non XT PC. 😀
PB4 shows great performance in the more relevant tests. Especially in some of the interactive graphics ones such as wolf3d, Doom and WinTune2.
Doom hits 63 fps !

retro bits and bytes

Reply 16 of 16, by alvaro84

User metadata
Rank Member
Rank
Member

Ok, two years have passed since then. In the meantime I grabbed all the ALI M1489 boards I could get my hands on. Now I could even allocate some more time for more testing and research and it seems to me that the older "SC" variant is really the faster of the two and the crossover apparently happened on/around the 40th week of 1995. During my search I ran into boards I haven't even heard of. Like a BEK-P405, which has the M1489 SC. Also found a PCChips M918 with fake cache chips - yet it ran quite well and surprisingly well with EDO RAM at that. And now was the time that I picked up that "new" M918 from the test pile, exactly the same as the other, apart from its real socketed cache chips. And it's an SC too, and can do all the things the AB-PB4 could and even better, well, after some tinkering. I replaced the BIOS chip with another from an absolutely unidentifiable M1489 board that had AWARD BIOS that supports Am5x86 - as the M918 started it in 4x mode with disabled L1 cache. After I figured out the correct jumper setting for said 4x mode I mean, as the documentation I could locate was terrible. Oh and I gave it 512k cache too, something the AB-PB4 can't handle.
And it seems to be the second case I see a 486 being faster with EDO RAM. And it seems to run it in single cycle mode. It's unstable with 60ns modules but with a pair of 8M/50ns it purrs. For simple linear read/write operations it seems indistinguishable from the L2 cache, both on speedsys graphs and cachechk results. Speedsys move curve shows a very pronounced breakdown at 512k though. In the end, it's definitely among the fastest 5x86-160 setups I've ever seen, often on par with the 180MHz ones, well, when they are faster than the 160s.... like in Quake. So I'm really satisfied with it and will try to give real cache to the other one as well.

Edit. I just transferred the speedsys result from a 1-partition "copy" CF card:

M918E5C5.png
Filename
M918E5C5.png
File size
6.83 KiB
Views
409 views
File license
Public domain

BTW I couldn't yet get it 100% stable. Apparently it needs more fine tuning to reach this performance level without issues. Like further replacing cache chips or RAM sticks or whatever. The CPU itself that I'm testing it with right now is labelled to behave relatively well even at 180MHz so it should do 160MHz without breaking a sweat.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts