VOGONS


First post, by tpowell.ca

User metadata
Rank Member
Rank
Member

Hi guys,
so after having many discussions with feipoa about cache effects, EDO vs FPM on 486 chipsets and running many benchmarks on my end, I seem to have discovered an odd problem with the DOOM benchmark on Phil's benchmarking suite. Or at least a compatibility issue with my hardware.

Basically, the demo would run in all cases on the test machines: AMD 5x86-160 (40x4) with different settings for wait-states and cache speeds, Writing Policy (WT vs WB) and cache sizes (0, 256, 512KB).
What I noticed was that, on any setting but the fastest (0 WS, cache 2-1-1-1) the demo would act as if the character input was ahead of where the game actually was, causing the character to run in circles, hit walls and shoot in seemingly arbitrary directions.
I tried to replicate this problem in DOSBOX with different cycle counts, but it always ran as intended.

Has anyone seen this before?

https://youtu.be/OoMMgimR48U

In short, regardless of the above, my conclusions were that on UMC PCI chipsets (BIOSTAR MB-8433UUD and Shuttle HOT-433v4) EDO memory made no measurable difference. I did not however see stability issues with EDO that feipoa has seen, but I did not push my system beyond a 40MHz bus speed.
Also, L2 cache size 256 vs 512 made virtually no difference whereas cache speed made a clear measurable difference.
In fact, slow cache speeds such as 3-1-1-1 or slower had nearly no performance benefit over NO L2 cache.
I'll give benchmark data to back this up.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 1 of 6, by tpowell.ca

User metadata
Rank Member
Rank
Member

Nobody has seen this issue before?

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 2 of 6, by bregolin

User metadata
Rank Member
Rank
Member

Wow. Ok. I have seen this before, I think I was running it on a 486 as well; back then we had an AM486 DX4-100 overclocked to 120MHz, and I *think* it was an UCM chipset as well, though I don't recall anything else from this set up as it's long gone. But the commom links are AMD and UMC chipset. We could be on to something... wish I could add more to the discussion.

IBM Aptiva 2162 - P55 166 MMX, 32MB, CS4237B + Wavetable, ATI Mach64 2MB / Win98SE
Custom PIII 750, 64MB, SB AWE64, Voodoo 3 3000 AGP / Win98SE
Sony Vaio z505 SuperSlim - PIII 550, 192MB, YMF744, NeoMagic 256AV+ / Win98SE

Reply 3 of 6, by tpowell.ca

User metadata
Rank Member
Rank
Member

I wonder though, what could cause this.
Its not like it was running slowly, and it was perfectly repeatable and never crashed.

Very strange.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 4 of 6, by gerwin

User metadata
Rank l33t
Rank
l33t
tpowell.ca wrote:

...the demo would act as if the character input was ahead of where the game actually was, causing the character to run in circles, hit walls and shoot in seemingly arbitrary directions.

The demo gets out of sync at some point. Once a demo is out of sync the recorded player actions lose their sense in relation to the game logic (like enemy behaviour and modelled physics).
This is a well known issue with Doom source ports, as even the smallest change in game logic can make the demo's go out of sync. The official doom game versions always came packed with new demo's for each release, as the previous demo's no longer matched the game logic.

So there may be a hardware calculation error happening here, which affects the game logic.

--> ISA Soundcard Overview // Doom MBF 2.04 // SetMul

Reply 5 of 6, by tpowell.ca

User metadata
Rank Member
Rank
Member
gerwin wrote:

This is a well known issue with Doom source ports, as even the smallest change in game logic can make the demo's go out of sync. The official doom game versions always came packed with new demo's for each release, as the previous demo's no longer matched the game logic.

So there may be a hardware calculation error happening here, which affects the game logic.

Interesting discussion.
What baffles me is that what you say would make perfect sense in the case where my benchmarks would exhibit this behavior in the most aggressive settings, but in fact it only happens when I either disable L2 cache or slow it down. Very strange indeed.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3