VOGONS


Reply 20 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

I tested other PCI-E cards, mainly with X58+Xeon 5660, i also added to main post, some info which cards would be nicer to test and i dont have them.. and some additional links, which can be handy.

  • X58 + PCI-E cards performance at least with enhancers seems to be not crippled as PCI cards performance, expect Doom than its still slower than on other chipset, why i dont know.. Maybe someone with DOS debuggers like CodeView or Insight or with Dosbox debugger and used instruction knowledge would be able to say where is problem.. I saw at least once guy with such skill on this forum, they exist 😀 Its also worth noting that enhancers working (=improve performance) with X58 a bit less often than with older chipsets, its differs on resolution level even within 1 game.
  • Radeon HD 3450 - yesterday i wrote how bad card it is.. well today i find out that its fastest yet tested one, at least with enhancers, it pass 60 FPS in all test if its combined with X58 and fast CPU. Its simply needs fast CPU to kicking its ass, its scale nice with CPU power.
  • Radeon X800 performance is not such dependent on cpu power as R3450, but with Xeon, also pass my 55+ FPS mark in all games with enhancers on X58.
  • X58 PCI-E cards, when enhancers arent working or turned on.. have very similar or same performance in Q2, so it seems that result are limited by other factors.
  • It could be coincidence, but Quake 1 high resolution results for my fastest ATI/AMD cards all have exactly 60 FPS, like would be here some 60 FPS cap.. i know that it make no sense for DOS, unless its there something like refresh rate barrier trigger only by some resolution and games etc.. but i saw stranger things, we will see with other results. I already have faster Xeon in my drawer.
  • Its seems that for fastest machines are ATI / AMD card much better choice than Nvidia cards, i thing that similar effect (but not so dominant) showed some Windows benchmarks with new fast machine and other cards.
  • Geforce 730 difference, i have two G730 cards, one with GDRR3 and one with GDRR5 - i though than difference would be only in memory, but card with GDRR3 has not blinking problem and working with VIA 880 chipset, GDRR5 card has blinking problem (again Q1 only Q2 same resolution is not affected) and not working with VIA no picture at all + broken Text modes in FileWizzard. It could be manufacturer or bios difference, slower if Gigabyte, faster is Zotac, its i also has 4 GB of VRAM what is of course useless on such card..

Im sure that someone else would be able to find additional interesting patters in results..

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 21 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote:

[*] It could be coincidence, but Quake 1 high resolution results for my fastest ATI/AMD cards all have exactly 60 FPS, like would be here some 60 FPS cap.. i know that it make no sense for DOS, unless its there something like refresh rate barrier trigger only by some resolution and games etc.. but i saw stranger things, we will see with other results. I already have faster Xeon in my drawer.

It's called V-sync and it does make sense also under DOS since relevant VESA functions support vertical sync.
Enabled V-sync can also be identified in Bakemono's 640x480 and 1024x768 results. But in his result all the frames are rendered lower than 60 fps so he got 30 fps (the typical result for double buffered V-sync enabled scenario when the rendering is slower than the refresh rate). 15 fps also confirms this.

320x200 - 352fps 640x480 - 29.5fps 1024x768 - 15.0fps 1280x1024 - 55.5fps […]
Show full quote

320x200 - 352fps
640x480 - 29.5fps
1024x768 - 15.0fps
1280x1024 - 55.5fps

with FASTVID:
640x480 - 29.8fps
1024x768 - 29.8fps
1280x1024 - 82.1fps

BTW Bokemono's results also confirm my earlier theory that 1280x1024 uses different rendering method than other VESA modes in Quake 1 (at least with Nvidia cards). 320x200 results are obviously different since 320x200 is not a VESA mode but VGA/MCGA 13h by default in Quake 1.

@Edit:
It seems I was right when I wrote this:
Old+Modern videocards pure DOS benchmarking- which one is fastest?, need your numbers + analysis, 320x200 to 1600x1200!
There is a console command in Quake 1: VID_NOPAGEFLIP 1
In case of buggy Nvidia Maxwell/Pascal cards If you type this in Quake 1 console and after this you switch to VESA modes that tried to use hardware page flipping so far (e.g. 640x480, 1024x768)
the flickering stops and everything works perfectly just like in 1280x1024.
Also it seems that disabling page flipping disables V-sync (possibly also in case of other cards) but this would require more testing.
So it seems for 1280x1024 video mode page flipping is never enabled on (newer) NVIDIA cards and also without page flipping no vertical sync is active in this video mode thus giving it an advantage over other VESA modes in terms of speed (and reliability).

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 22 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie
Falcosoft wrote:

It's called V-sync and it does make sense also under DOS since relevant VESA functions support vertical sync.
Enabled V-sync can also be identified in Bakemono's 640x480 and 1024x768 results. But in his result all the frames are rendered lower than 60 fps so he got 30 fps (the typical result for double buffered V-sync enabled scenario when the rendering is slower than the refresh rate). 15 fps also confirms this.

Thanks for info, Im adding my monitors refresh rate info, majority of testing was done on DELL 2007 - new results exclusively, minority on HP LP2475W.

Dell 2007FP:

Dell2007.png
Filename
Dell2007.png
File size
54.79 KiB
Views
3329 views
File license
Fair use/fair dealing exception

HP LP2475W:

HP2475W.png
Filename
HP2475W.png
File size
50.16 KiB
Views
3329 views
File license
Fair use/fair dealing exception

Im not really sure about these caps, at least with 15 / 30 at least with my results not i have few data to support it, with 60 FPS - i have more data but when i look at specs of Dell monitor it should be probably 75 FPS cap in 640x480, not 60 FPS, in 1024x768 - 60 FPS are ok I have some Q2 640x480 75 FPS results.
Also i know that not all cards are supporting all refresh rates as monitors.

I will try that console command switch, if it will help to reach more than 60 and we will see.

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 23 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Your monitor's specification does not matter here. Under DOS all SVGA/VESA modes are limited to 60 Hz unless the VESA BIOS supports VESA3 refresh rate setting functions. Unfortunately NVidia disabled these refresh rate setting functions more than a decade ago (last working versions were Geforce 4/FX series cards AFAIK and other vendors never supported it). But none of the known games supported VESA 3 refresh rate settings by default. You had to set 60+ Hz refresh rates manually with a special utility (UniRefresh):
Re: UniRefresh no longer works on nVidia's latest
S3 cards had special dedicated DOS refresh rate setting utilities that worked up to Savage 4.

So these tables are not relevant here at all unless you can use some of the above methods to set higher than 60 Hz refresh rates in DOS.

When you get more than 60 FPS in an SVGA benchmark under DOS without using specific refresh rate setting utilities you can be sure that vertical sync is NOT active (just like in your 75 FPS Q2 result).

Last edited by Falcosoft on 2018-10-27, 17:32. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 24 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Thanks for explanation, now it makes sense.
Update: If someone knew other Dos games with that blinking problem as have Quake pleas report it, Quake has great advantage of console command, but if such problem would occur in other games its dead end.. "Fortunately" there is too much 1024x768 Dos games, but some cards have this problem with 640x480, or maybe with 800x600 (untested).

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 25 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

I added test of results was added collumn, now you can easily filter new results and results depends card or cpu type or sort by performance and return form one to another.
Few days ago in also added collumn MB is capable of pure Dos sound (based on my Dos sound card research), you can filter these results as invalid if you want.

At the top of the first post are now 2 links first for html view, which is good for maximal screen area and sheet view, which is good for sorting and other spread sheet "porn"..

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 26 of 71, by amadeus777999

User metadata
Rank Oldbie
Rank
Oldbie

From the newer cards I tested(using a P1, PII, PIII, P4) the GeForce 2 Pro was the fastest in Doom. Faster than the G100/G400 which are pretty speedy themselves. The Matrox PCI cards(My/Mi/Mi II) are faster in Doom than the Riva128 PCI on 486- but slower on Pentium 1 systems.

On later cards the vga-core is just a relict that is only important for backward compatability - I guess something similar may hold true for functionality related to older VESA modes?

I doubt that using Screamer Setup is a good way to measure bandwidth - does this tool give proper results or are results capped at a certain amount of data?

Reply 27 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie
amadeus777999 wrote:

From the newer cards I tested(using a P1, PII, PIII, P4) the GeForce 2 Pro was the fastest in Doom. Faster than the G100/G400 which are pretty speedy themselves. The Matrox PCI cards(My/Mi/Mi II) are faster in Doom than the Riva128 PCI on 486- but slower on Pentium 1 systems.

When you look at results, Doom is not big deal, except Geforce 7,8 and 730 GDDR3 and with X300,x600 and x1300, all cards are 60+ FPS, of course is still strange why some older cards can reach 200 FPS and some newer only 80 FPS. Quake 1 - 640/1024 seems to be most important test in our suite.

amadeus777999 wrote:

On later cards the vga-core is just a relict that is only important for backward comparability - I guess something similar may hold true for functionality related to older VESA modes?

It depends, on Nvidia side its fastest tested old card TNT 2 M64 and fastest new tested Geforce 970 (but yeah with very fast 8700K CPU) almost reached its performance, thanks its raw power. On ATI / AMD side newer seems to be better (at least for PCI-E cards), fastest cards would be probably Radeon HD 7xxx and they are 2012/2013. Its hard to tell about Radeon RX, i dont find any results for them in Phils old 320x240 project. I dont have these cards, so someone else have to do heavy lifting.

amadeus777999 wrote:

I doubt that using Screamer Setup is a good way to measure bandwidth - does this tool give proper results or are results capped at a certain amount of data?

More research and measurements needed (i already did enough), otherwise we will stuck some urban legends and guesses. It shows bandwidth in MB/S in videocard column, that is more than other tools, vspeed from Fastvid package seems to show similar thing.
Videodos and dosbus test would be probably more conclusive, if it is implemented similar to game engines (we can check if results are correlate or not with our games results, same thing applies to Screamer setup results).

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 28 of 71, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

Aha, so it was using hardware page flipping with v-sync... now it is making more sense. I retested DOS Quake with the vid_nopageflip 1 setting. (Athlon II and GT240, same system as before)

640x480 217.5
1024x768 103.5
1280x1024 65.4

with FASTVID
640x480 264.0
1024x768 129.4
1280x1024 82.7

Under DOS all SVGA/VESA modes are limited to 60 Hz unless the VESA BIOS supports VESA3 refresh rate setting functions.

In some rare cases the default refresh rate could be different than 60hz. For instance, very old cards might have a 1024x768 interlaced mode, or 640x480 at 70hz. One time I had a VGA monitor that could only do 31KHz, and I had to use a utility from Trident to force 640x480 to 60hz for games.

Reply 29 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie
bakemono wrote:

Aha, so it was using hardware page flipping with v-sync... now it is making more sense. I retested DOS Quake with the vid_nopageflip 1 setting. (Athlon II and GT240, same system as before)

Thanks for new results, it still would be nice to add your system memory speed info and if DOS sound cards are working..

New results are up to 8x faster, i let old ones in comment.
So i would probably have to remeasure some old results with this vid_nopageflip 1 hack.. but this is sense of projects like this to find new ways, its victory, but its bitter sweet because its generating more work..

So from new discoveries implies 1 important question, how often Quake 1 way of Vesa implementation, which games performance would be crippled (because they not have console command fix) by same way?
We have to consider if make sense to replace all old Quake 1 results with new ones with hack, or would be better than additional columns with new hack (update: yeah i created it, its more clean).

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 30 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

I had problem with that magic Quake command - because it has to be all lowercase, but in searching process i found this.

vid_mode - changes the video mode
vid_describemodes - tells all video modes Quake can use
vid_describecurrentmode - describes video mode Quake is currently in
vid_testmode - tests a video mode
vid_nummodes - tells total number of modes available to Quake
vid_nopageflip <1|0> - if zero, then page-flipped modes are selected whenever possible
vid_wait - 0: no wait 1: wait/vertical sync active 2: wait/display enable active
_vid_wait_override <1|0> - if one, forces vertical sync wait in all modes
_vid_default_mode - specifies default startup video mode


So maybe we dont need to use vid_nopageflip 1, but only vid_wait 0.

Otherwise a was probably expected - this hack dont improve Dosbox results so they stay as they are.

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 31 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote:

So maybe we dont need to use vid_nopageflip 1, but only vid_wait 0.

Vid_wait=0 definitely can not solve the flickering problem of buggy NVIDIA cards since it's caused by the buggy implementation of VESA Function 07h - Set/Get Display Start (that is used by page flipping method in Quake1) as I have already said previously, not by V-sync.
Apart from this, setting vid_wait to 0/1/2 and testing problematic modes can be useful, who knows what kind of wait cycles are added e.g. by "2 = wait/display enable active"...

@Edit: it seems vid_wait=2 tests if VGA INPUT STATUS REGISTER 1 (port: 0x3da) Display Enable status bit is set.

@Edit2:
It seems the situation is rather complicated:
1. Default state (without setting vid_nopageflip 1)
If Quake 1 switches to a Video mode where it detects page flipping can be enabled and thus sets it, then it also sets vid_wait automatically to either 1 or 2.

a.If vid_wait is set to 2 there is no active V-sync set by Quake and it depends on the hardware if it is faster or not than in 1 page non-page flipping mode. Setting vid_wait to 0 manually does not seem to influence FPS.

b. If vid_wait is set to 1 automatically by Quake then the FPS is capped by V-sync, so in this state setting vid_wait to 0 manually can help improving FPS.

c. If Quake 1 switches to a Video mode where it detects page flipping can NOT be enabled then it always sets vid_wait to 0 by default. In this state setting vid_wait to 0 manually is redundant, FPS will be the same.

2. Modified state (vid_nopageflip 1 is set manually)
This is the same as case 1.c: vid_wait is always set to 0 by default. So setting vid_wait to 0 manually is redundant.

Setting vid_wait to 1 manually seems to work in all modes so FPS can be capped by V-sync even in 320x200 and 1280x1024 modes.
Vid_wait 0 setting is not preserved unlike vid_nopageflip 1. If you want to set it manually, you have to do this after every video mode change and restart.
With _vid_wait_override 1 you can set V-sync on permanently for all modes, but it does not work the other way around. So _vid_wait_override 0 does not set V-sync off permanently but it restores the above detailed automatic selection by Quake.
The current value of vid_wait can be requested (just like any other console variables) by simply typing the command/variable name without a new value: 'vid_wait'

So overall vid_nopageflip 1 and vid_wait 0 are not interchangeable, they set different things.
1. While vid_nopageflip 1 also sets vid_wait to 0 by default (thus disabling V-sync), it also prevents hardware page flipping that can be advantageous for buggy cards but also disadvantageous for systems with superior hardware page flipping performance.
2. While vid_wait 0 always disables V-sync, it leaves hardware page flipping in the default state determined by Quake's automatic detection, thus can be advantageous for systems with good hardware page flipping performance but disadvantageous for buggy cards or for systems with inferior page flipping performance.

It's a hard decision what console commands to use for apples to apples comparison:
On one hand applying vid_nopageflip 1 results in the most compatible scenario: it depends less on properly implemented hardware features and also disables V-sync. (Maybe Phil's choice to test performance on 320x200 was not that bad after all, since 320x200 never uses hardware page flipping on any systems and V-sync is not activated by default).
But on the other hand applying vid_nopageflip 1 results in less of a video hardware test, since overall performance depends more on system CPU/Memory speed than video hardware speed.

Applying vid_wait 0 is a good choice since it disables V-sync, thus revealing the real speed of the video hardware (since it also keeps advanced video features on), but depends on properly implemented VESA BIOS functions. If you decide to use this console command alone then leave 1280x1024 out of your tests, since on many cards it means non-working page flipping (just like you also applied vid_nopageflip 1) contrary to 640x480/800x600/1024x768. Buggy cards that cannot achieve optimal results under 640x480/800x600/1024x768 with page flipping on deserve the penalty 😀

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 32 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Thanks for explanation, always pleasure to discuss things with you.

Falcosoft wrote:

Vid_wait=0 definitely can not solve the flickering problem of buggy NVIDIA cards since it's caused by the buggy implementation of VESA Function 07h

That was expected, i mend it as fps caps solver and as less invasive solution for cards which have not flicking problem.

Falcosoft wrote:

Vid_wait 0 setting is not preserved unlike vid_nopageflip 1

Ok, its sad and annoying, good to know.

Falcosoft wrote:

(Maybe Phil's choice to test performance on 320x200 was not that bad after all, since 320x200 never uses hardware page flipping on any systems and V-sync is not activated by default).

I think that was not made intentionally, he even have 640x480 in testing suite, but its not in the sheet, where is already column even for your mother boots size.. and there is still not victory in that, because when you look at results all cards even on quite slow machine are 60+ FPS with this resolution, for something slower you would need something like ISA, VLB BUS videocards.. that you would use only if you would have MB without PCI slows which would be already too slow for Quake regardless.

Falcosoft wrote:

It's a hard decision what console commands to use for apples to apples comparison:
On one hand applying vid_nopageflip 1 results in the most compatible scenario: it depends less on properly implemented hardware features and also disables V-sync. (Maybe
But on the other hand applying vid_nopageflip 1 results in less of a video hardware test, since overall performance depends more on system CPU/Memory speed than video hardware speed.

I see there 2 important aspects:
1) Benchmark value to approximate other games performance - We benchmarking to know which cards are good and bad for DOS, so would be nice know, discuss that which methods are using other DOS Vesa game.. so which Quake settings are most related to them.. So if you would have good performance with these settings, it means that these games would be fast too..
2) Numbers thing - in pure pragmatic way its always better to have more measurements / metrics that less, because you always can proclaim some metric like unless but less important, but you can to in opposite, even you dont have measurements at all.
I would way that were already faced to similar problem, which enhancers.. i have 1 column for them, i recommend to try both use better results.

So if there is not some image quality degradation effect with either of vid_nopageflip 1 or vid_wait 0, we can recommend to try both settings use better number.. with few measurements we will probably quickly discover pattern for which cards are which settings better.. and we can make some recommendation to save time and dont have to run some mods on cards. Some with some resolutions, when we would cofirm that these settings doesnt make difference, because probably arent used (to address this: If you decide to use this console command alone then leave 1280x1024 out of your tests, since on many cards it means non-working page flipping (just like you also applied vid_nopageflip 1)).

We already have lots of vid_nopageflip 0 and vid_wait {default value} measurements, so lets try vid_nopageflip 1 as recommended default (and only possible fix for Nvidia blicking problematic cards) and after optimal vid_wait 0 for good diligent students, whose dont mind some extra work.

Does this make sense, or got something wrong?

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 33 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Of course more results are always better since they can show a more detailed picture, but it means more work for you/for your contributors.
Anyway here's a detailed description about the vid_nopageflip 1 option:

vid_nopageflip

This variable toggles the use of page-flipping during supported video modes. By default the game will allow for page-flipping for video modes that support this feature. For example if a given VESA mode can support page flipping, then it defaults to page-flipped operation. A VESA mode can be forced to non-page-flipped operation by setting the "vid_nopageflip" variable to "1", then setting the mode (note that "vid_nopageflip" takes operation on the next, not the current video mode, and note that it then stays in effect permanently, even when the client is exited and restarted, unless it is manually set back to "0"). If there is not enough memory for two pages in a VESA mode, or if the adapter doesn't support page flipping, then the mode will automatically be non-page-flipped. Page-flipping works by drawing multiple virtual game screens at the same time in the video memory and then switching among them to display the current gamescreen. Page-flipped modes thus use less system memory than non-page-flipped modes, but require more video memory. When using page-flipping, visual quality may be higher, but performance of the game can change to better or worse, depending on the graphics adapter and other hardware.

http://ezquake.sourceforge.net/docs/?vars-video-settings

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 34 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Of course more results are always better since they can show a more detailed picture, but it means more work for you/for your contributors.

Because is number DOS games with inbuild benchmarks very limited and timedemo its short and its 1 more command, its not too much work.

Thanks, second part this text block is interesting too:

See the discussion of the Pentium Pro below, for a discussion of why page flipping can be faster but is sometimes much slower on that processor.. However in most cases the performance (and thus frame rate) will be increased, but for people with hardware that has problems with page-flipping "vid_nopageflip 1" may help. The Pentium Pro is an example for such a hardware: it is an okay client platform (sniff!), but it has one weak spot, it is by default very slow on writes to video memory. This means that in default hardware configurations, you are usually much better off setting "vid_nopageflip" to "1" if you use VESA modes, so drawing is done to system memory instead of to video memory. Remember that you must set the mode after setting "vid_nopageflip" to "1" in order to get "vid_nopageflip" to take effect. "vid_nopageflip 1" can sometimes be faster on a Pentium too, but not by nearly as much in general, and it's often slower.

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 35 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

However in most cases the performance (and thus frame rate) will be increased,

Of course, in theory page flipping should be always faster, unless drawing to video memory directly is much slower than to system memory. Page flipping saves an unnecessary Bit Block Transfer from system memory to video memory. If page flipping is enabled you have (at least) 2 video pages in video memory. The software always prepares content on the back buffer page and when the content is ready it simply swaps the back buffer for the front buffer page, thus the former back buffer becomes the front buffer and vice versa. It's only a simple pointer operation, no copying of data is necessary at all. When page flipping is not enabled the content from the system memory back buffer has to be copied to video memory that is not a simple pointer operation but a huge block transfer.
The rather weird thing in case of Quake 1 is why V-sync is (almost always) activated by default when page flipping is enabled and why it's never activated when page flipping is disabled.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 36 of 71, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

system memory speed info and if DOS sound cards are working..

no prob... memory is dual DDR2-800, 5-5-5-18 timing, and no sound

again another retro game on itch: https://90soft90.itch.io/shmup-salad

Reply 37 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

I benchmarked some cards with vid_nopageflip 1, it seems that it is silver bullet solutions, so we can congratulate Falcosoft to his find.

Its has everytime same speed or its fastest than when is not activated and its solving that Geforce blinking problems and some fps caps and it has not really any drawbacks so far, maybe only that cards which are now not in idle mods are a bit more warmer.
Its suprised but it even helped with Voodoo 3 2000 PCI / Ati Mach 1 MBm with V3 performance and even with 1280x1024 maybe there is page flipping working differently than with Geforce cards. Performance boost is sometimes huge. Im slowly adding other results.

Update: Navratil System info reports with different cards, different page sizes? Could it have some performance effect too? Its bigger or smaller better?

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 38 of 71, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote:

Update: Navratil System info reports with different cards, different page sizes? Could it have some performance effect too? Its bigger or smaller better?

You should interpret this info in its context: Namely 'Current video Mode: 3' and 'Video Segment address: B800h' show that this info refers to the current text mode NSSI is using. This info is not relevant for Quake and graphics modes at all.
Quake in VESA 2 modes use the linear frame buffer of the card (no banks/pages in this sense, page means different thing e.g in vid_nopageflip) but even graphics modes that use banks/pages (e.g. 320x200, 360x480 etc.) are at video segment A000h and the size of a page is 64 KB.

nssi_ps.jpg
Filename
nssi_ps.jpg
File size
97.86 KiB
Views
3216 views
File license
Fair use/fair dealing exception

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 39 of 71, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

FalcoSoft: Ok, i just tried it, if it is not some other magic HW / ROM parameter, which would make i difference in DOS performance.

-----
Otherwise i tested all card in on my lairs with vid_nopageflip 1, i will test rest of cards tomorrow or in Thursday and testing would be completed, unless i would come across some new cards in the future. Which cards would nice to test by others is in first post.

I will maybe test few more AGP cards with other machine, to show how they scale with different CPU.

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.