How to gain FPS

Got something that makes Armagetron look shiny? Post it here.
User avatar
Jonathan
A Brave Victim
Posts: 3391
Joined: Thu Feb 03, 2005 12:50 am
Location: Not really lurking anymore

Post by Jonathan »

He must've meant that you're still only pushing 60 frames per second to the monitor. If you get, say, 120 FPS, you only see half of each rendered frame, and the parts you do see are separated by those tears. The parts you don't see are still rendered but go to waste.

To find out what works best (best = tiny potential latency reduction, disregarding everything else) you'll have to find out how the pipeline behaves when you overdrive it, and ultimately what the effect of capping its end is.
ˌɑrməˈɡɛˌtrɑn
User avatar
wrtlprnft
Reverse Outside Corner Grinder
Posts: 1679
Joined: Wed Jan 04, 2006 4:42 am
Location: 0x08048000
Contact:

Post by wrtlprnft »

Pink Tomatoes wrote:Someone said to me that it is 60 FPS even without vsync limited due to the Refresh Rate setting of the monitor?
Without vsync your graphics card will happily produce way more than 60 FPS (if it's fast enough), but due to the refresh rate of your monitor you won't see more than 60 (the rest will be generated but never shown).
There's no place like ::1
User avatar
prupixie
Posts: 8
Joined: Sat Feb 07, 2009 9:27 pm
Location: Mainz
Contact:

Post by prupixie »

w00t, FPS 497 :D

thanks =P
it's pixie time =D
Pink Tomatoes
Average Program
Posts: 61
Joined: Fri Jul 25, 2008 11:24 am

Post by Pink Tomatoes »

wrtlprnft wrote:Without vsync your graphics card will happily produce way more than 60 FPS (if it's fast enough), but due to the refresh rate of your monitor you won't see more than 60 (the rest will be generated but never shown).
So if I have got this right, even though people cheer that they have 360-odd FPS, all it is doing is wasting resources? Frames are still being displayed to the user at 60 times a second, now with ugly tearing due to half-processed frames? The better way would first be to increase your refresh rate, rather than messing around with vsync?
User avatar
wrtlprnft
Reverse Outside Corner Grinder
Posts: 1679
Joined: Wed Jan 04, 2006 4:42 am
Location: 0x08048000
Contact:

Post by wrtlprnft »

Yeah, basically they're just wasting resources. Most monitors won't allow a refresh rate of more than 60 Hz (the human eye wouldn't see the difference in any case).

You might gain a couple of milliseconds in decreased latency if multiple frames are rendered within one monitor refresh (since the last one would be shown), though, but I doubt that it's noticable.
There's no place like ::1
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

wrtlprnft wrote:You might gain a couple of milliseconds in decreased latency if multiple frames are rendered within one monitor refresh (since the last one would be shown), though, but I doubt that it's noticable.
It is. And the higher your FPS, the less noticeable the tearing artefacts get. That said, I prefer to keep vsync on and my CPU fan quiet.
User avatar
wrtlprnft
Reverse Outside Corner Grinder
Posts: 1679
Joined: Wed Jan 04, 2006 4:42 am
Location: 0x08048000
Contact:

Post by wrtlprnft »

In a perfect world the graphics driver would keep track of how long it takes for a frame to render and delay the beginning of the next frame's rendering just long enough to have the rendering (and buffer switching) take place just before the next monitor sync :-)
There's no place like ::1
User avatar
Carnage
Average Program
Posts: 56
Joined: Fri Aug 31, 2007 4:27 am
Location: USA

Post by Carnage »

Is there any change if someone is using either a CRT or an LCD monitor?
If the question of what it all means doesn't mean anything, why do I keep coming back to it?-XKCD
User avatar
Lucifer
Project Developer
Posts: 8640
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Post by Lucifer »

Depends on how you look at it.

In a CRT, electrons are fired at the screen, and they only make light for a small period of time. In an LCD, once you set a given pixel, it stays that way until you change it.

However, the LCD is still "refreshed", as in "every pixel on the grid is updated" at a particular rate, and that rate is determined by a microprocessor in the monitor. Also, it takes time for a pixel to actually change from one color to the next. The real early LCDs had real trouble with animation-heavy stuff because of that. They've gotten faster, but there's still limits on the physical processes that go on.

So, yeah, from our point of view, it's easier to just stick with a refresh rate concept that applies to both types of monitors until we get one that totally obsoletes it.
Image

Be the devil's own, Lucifer's my name.
- Iron Maiden
User avatar
Z-Man
God & Project Admin
Posts: 11585
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Post by Z-Man »

wrtlprnft wrote:In a perfect world the graphics driver would keep track of how long it takes for a frame to render and delay the beginning of the next frame's rendering just long enough to have the rendering (and buffer switching) take place just before the next monitor sync :-)
In a really perfect world, the monitor would accept the new frame as soon as it has finished rendering, whenever that is :)
Paladin
Average Program
Posts: 99
Joined: Tue Feb 26, 2008 11:04 pm
Location: Ontario

Post by Paladin »

If I may be so bold, is there any other advice that may be offered in regards to increasing fps?

I've updated to the recent release of armagetron, .2.8.3 alpha I believe.
I've updated my graphic card drivers for the Nvidia GeForce 9600MGT straight from Nvidia. I believe the only one available was in fact a Beta, at least that I could find.
I've turned V-Sync and a few other Open GL friendly settings on.
I've turned Windows Aero off to see if affected it.
I've used the settings described by the first two posters.

I'm currently running with an Intel Centrino 2 P7350. 2.0 Ghz, 1066 mhz frontside bus, 3 mb l2 cache. 4 Gigs ram, Windows Vista 64 bit Edition, and the aforementioned 512 mb Nvidia GeForce 9600M GT. My top fps at the moment in gameplay has been 59, which is the same as what I achieve on my old laptop which has about 1/8th of the resources this one has.

I realize that it is not a huge issue and that gameplay with 58 fps is quite do-able, but I'm interested in increasing it regardless. I'm curious, quite honestly, why the fps is 'low'.
User avatar
Lacrymosa
Round Winner
Posts: 286
Joined: Wed Feb 15, 2006 6:44 pm
Location: Heaven or Hell...?
Contact:

Post by Lacrymosa »

How many fps do you get when you turn VSync off? It could be your monitor's refresh rate (60 Hz?) that limits the fps to ~ 60.
Paladin
Average Program
Posts: 99
Joined: Tue Feb 26, 2008 11:04 pm
Location: Ontario

Post by Paladin »

The same.

I assumed, quite possibly wrongly, that from what they were saying about refresh rate was that it wouldn't limit the fps being produced (the fps number in tron), but limit what is being produced that is visibly useful (The human limit to sight in regards to frames per second).
Your version makes a lot more sense in regards to my current situation where the refresh rate is 59.

But then again, as stated by wrtlprnft, most people's monitors are around that refresh rate, generally at 60, but still have a higher fps production.
User avatar
Tank Program
Forum & Project Admin, PhD
Posts: 6711
Joined: Thu Dec 18, 2003 7:03 pm

Post by Tank Program »

Some monitor/graphics card drivers force VSync even though the game turns it off.
Image
Paladin
Average Program
Posts: 99
Joined: Tue Feb 26, 2008 11:04 pm
Location: Ontario

Post by Paladin »

My apologies for not having checked back to this thread again. I got lost in some documentation on my graphics card.

On my graphics card control panel Tank, I have the option to change settings such as V-Sync for 'Global Settings' or to set it for a specific program. I can either turn it off, on, or let the application decide. It's possible it still gets forced one of those ways by another medium though.

The problem was solved and it still bothers me that I missed it. On the main page of my graphics card I have three options in regards to image quality versus performance. The first two are irrelevant, the third is the one where I have access to a toggle to slide it between performance and quality. I would do so and apply the changes, however, the panel chooses to revert to the second choice unless I do it once more, which I have missed previously. Needless to say, I feel a bit like an idiot. XDDDD I'm getting 300 fps at minimum in tron now with everything set to the highest quality, or in some cases such as the rim, my personal preference.

Thanks for all of your help. :)
Post Reply