Orbiter on Vista and Win7 (actual data + from the horse's mouth)

Andy44

owner: Oil Creek Astronautix
Addon Developer
Joined
Nov 22, 2007
Messages
7,620
Reaction score
5
Points
113
Location
In the Mid-Atlantic states
I mean it's very jerky, to the point of being uncontrollable. On my old XP machine it was fine at 16 fps for control, only lacking a little smoothness.
 

Sam

New member
Joined
Jun 28, 2009
Messages
54
Reaction score
0
Points
0
Location
Here
Can anyone explain to me why 16 fps works fine on my 5-year-old Win-XP laptop with no video card, but my bran new Vista machine with a video card and a faster processor looks terrible with anything less than 30 fps?

Win 7 (64) too. No matter what I do, I can't get beyond this ceiling; FPS ~= 25, occasionally breaks 30 momentarily, and with occasional dips into the high teens. That applies whether I'm on a takeoff roll with scenery whizzing by me, or in deep space looking at nothing. And there seems to be some hidden parameter set to "jerkiness = max." CPU is AMD Phenom 9600 (quad core 2.3 GHz), GPU is NVidia GTX 260+, Orbiter is base '06+P1.

Sorry for your troubles, but relieved it ain't just me. I've also got another PC with XP where Orbiter runs just dandy, so I ain't too worried.

I think I'm just confirming what others have already said (but when it comes to graphics tech I'm pretty clueless) ... Various GPU benchmarking and stress programs send the GPU temp up, as expected; Furmark seems to be worst case and causes it to peak at 80C. But Orbiter (on the Win 7 PC) doesn't warm up the GPU at all. I don't thiink that's any earthshattering news, but just in case that somehow helps someone, there it is.

SAM
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Win 7 (64) too. No matter what I do, I can't get beyond this ceiling; FPS ~= 25, occasionally breaks 30 momentarily, and with occasional dips into the high teens. That applies whether I'm on a takeoff roll with scenery whizzing by me, or in deep space looking at nothing. And there seems to be some hidden parameter set to "jerkiness = max." CPU is AMD Phenom 9600 (quad core 2.3 GHz), GPU is NVidia GTX 260+, Orbiter is base '06+P1.

Sorry for your troubles, but relieved it ain't just me. I've also got another PC with XP where Orbiter runs just dandy, so I ain't too worried.

I think I'm just confirming what others have already said (but when it comes to graphics tech I'm pretty clueless) ... Various GPU benchmarking and stress programs send the GPU temp up, as expected; Furmark seems to be worst case and causes it to peak at 80C. But Orbiter (on the Win 7 PC) doesn't warm up the GPU at all. I don't thiink that's any earthshattering news, but just in case that somehow helps someone, there it is.

SAM
This is not surprising -- see the original post in this thread. Also, use VistaBoost if you're not already.
 

Sam

New member
Joined
Jun 28, 2009
Messages
54
Reaction score
0
Points
0
Location
Here
Also, use VistaBoost if you're not already.

That definitely helped. VistaBoost adds about 10 across the board to FPS (high 20s - low 40s; average mid-30s), and the jerkiness is a lot less. Enough of an improvement to move it from "unacceprable" to "tolerable" -- thanks!

SAM
 

Cornflake

New member
Joined
Feb 5, 2008
Messages
117
Reaction score
3
Points
0
Location
Colorado, USA
Hielor said:
The main problem with this application is that it’s coded to be efficient on operating system, processors and video card hardware that were common back in 1998 (DX7 class hardware), these days the techniques it’s using are not very common and as you can see, have quite the performance impact. XP is better at running this application because of the GDI acceleration and cheaper D3D/GDI interop, these paths were deprecated when we moved to Vista / WDDM.

Well my question is this: Why the hell move the GDI interop into emulation? What possible advantages has it given? If you look DX10 is only marginally faster than a well-coded DX9 game for example. So it doesn't seem to really benifit DX10, the whole reason MS took a wrecking-ball to things.

You know what they say: If it ain't broke don't fix it.

Oh wait sorry missed this:
Hardware support for D3D/GDI interop was dropped in Vista to enable hardware manufacturers to move forward without always needing to support ten-year-old features that hardly anyone uses. That's the key here, that Orbiter is one of very few programs that uses this method. Modern games did not suffer the performance hit that Orbiter did.

But is it really any easier to code for Vista because of this? In the end I don't think it really matters because modern games seem to be requiring exponentially more powerful hardware because of poor coding techniques (*cough* PORTING *cough*). Maybe if MS didn't wait so long to release an OS a less drastic solution could of been worked out.

Speaking of emulation, I especially love how when my CPU reaches 100% in Vista, my audio freezes for a split second, causing pops and sputters, because the sound is processed through the CPU. Try listening to music and run a program like Prime95 that will take all your CPU cycles, and then browse your computer. 2009 and we can't make a computer play audio without problems. MS loves taking steps backwards.

Sure, sound cards may not have been good for much, but at least on XP with my Audigy 2 ZS I can listen to music without the 'needle skipping' :)
 
Last edited:

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Well my question is this: Why the hell move the GDI interop into emulation? What possible advantages has it given? If you look DX10 is only marginally faster than a well-coded DX9 game for example. So it doesn't seem to really benifit DX10, the whole reason MS took a wrecking-ball to things.

You know what they say: If it ain't broke don't fix it.
I don't have an exact answer for you, but I believe that the GDI interop was removed from hardware because it was a feature that was extremely rarely used even in games written back when DX7 was new, and that most games written back when DX7 was new would have plenty of CPU processing power available for this since they weren't particularly complicated and were only using the GDI interop for a few simple things.

I believe that it was removed for the benefit of the graphics cards companies, so they no longer need to support in hardware/drivers a functionality that very few programs were using, and the majority of programs that were using it could do without anyway.

Orbiter just happens to be odd, and already uses 100% CPU even on a modern computer without the GDI thing. It also does a lot of GDI drawing onto D3D surfaces, which is why it takes such a heavy hit.

In short: it was removed so that GPU manufacturers wouldn't be supporting a feature that's important only to Orbiter users...

But is it really any easier to code for Vista because of this?
For GPU manufacturers, yes--they no longer need to support a legacy, little-used feature, which saves some hardware and software for them.

In the end I don't think it really matters because modern games seem to be requiring exponentially more powerful hardware because of poor coding techniques (*cough* PORTING *cough*).
Or perhaps they require "exponentially more powerful hardware" because they're doing "exponentially" more? Compare modern games to games of three or four years ago and it's not hard to see why they need more power (hint: it has nothing to do with "poor coding techniques").

Maybe if MS didn't wait so long to release an OS a less drastic solution could of been worked out.
Huh? What does time between OS releases have to do with dropping support for features that no one uses anymore? It's the same with 16-bit apps, they're not supported on 64-bit versions of the OS. This is how computers work. You move on and drop support for stuff that people aren't using anymore.

Also keep in mind that when Orbiter 2006 was released, DX7 had already been around for 7 years. DX9 had already been out for two.

Speaking of emulation, I especially love how when my CPU reaches 100% in Vista, my audio freezes for a split second, causing pops and sputters, because the sound is processed through the CPU. Try listening to music and run a program like Prime95 that will take all your CPU cycles, and then browse your computer. 2009 and we can't make a computer play audio without problems. MS loves taking steps backwards.

Sure, sound cards may not have been good for much, but at least on XP with my Audigy 2 ZS I can listen to music without the 'needle skipping' :)
Your current computer has worse hardware for playing music than your old one, and you blame Microsoft for a worse experience when listening to music? Yeah...that's not MS's fault.
 

insanity

Blastronaut
Donator
Joined
Jun 22, 2009
Messages
1,194
Reaction score
106
Points
63
Location
Oakland, CA
I'm actually liking Windows 7. A few issues to work through, but Orbiter is running fine. The hardest part of the entire process was getting my GRUB bootloader back so I can choose which OS I want to boot. Some apps don't work well with the 64bit (like Minitab), but for the most part it feels like a good follow-up for XP.
 

Linguofreak

Well-known member
Joined
May 10, 2008
Messages
4,493
Reaction score
534
Points
138
Location
Dallas, TX
Assuming that the 60fps is synchronized to the refresh rate of the monitor, then there will be no perceivable difference between 60 and 140. In fact, with 140, it may look worse due to tearing effects due to not being an exact multiple of the refresh rate.

It's worth noting that the machine I have Orbiter on back home (dual core 3 GHz with an ATI 256 meg graphics card, forget the exact model), tops out at exactly 60 Hz when running Orbiter, probably some sort of synchronization thing.

I've never been able to tell the difference between anything over 20 or 30 FPS and anything else over 20 or 30 FPS.

Then again, I'm not a graphics connoisseur.
 

TSPenguin

The Seeker
Joined
Jan 27, 2008
Messages
4,075
Reaction score
4
Points
0
It's worth noting that the machine I have Orbiter on back home (dual core 3 GHz with an ATI 256 meg graphics card, forget the exact model), tops out at exactly 60 Hz when running Orbiter, probably some sort of synchronization thing.

That is because of Vertical Sync and is a good thing.
 

Mogeley

New member
Joined
Jan 4, 2009
Messages
38
Reaction score
0
Points
0
On my Machine:
i7 quad core
Vista 64 bit
12GB ram
Nvidia GTX 285

Orbiter stays very fluid. there is only a few moments close to the ground near Cape Canaveral that the frame rate slows a bit. However the thing that will absolutely kill my frame rate is not polygon count, certain MFD's, or objects but it't the Windows menu's. Like the scenario editor, performance meter, and especially the externalMFD window. These are frame rate killers even if they are off. They drop my frame rate in half or more.
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Orbiter stays very fluid. there is only a few moments close to the ground near Cape Canaveral that the frame rate slows a bit. However the thing that will absolutely kill my frame rate is not polygon count, certain MFD's, or objects but it't the Windows menu's. Like the scenario editor, performance meter, and especially the externalMFD window. These are frame rate killers even if they are off. They drop my frame rate in half or more.
The externalMFD i can understand since it's doing a lot of GDI drawing, but the performance meter/scenario editor doesn't make sense to me, especially the part about them causing problems "even if they are off." Do you mean that they cause framerate hits if they're active in the modules pane but not currently open?
 

rstarkov

Addon Developer
Addon Developer
Joined
Feb 15, 2010
Messages
26
Reaction score
0
Points
0
Location
Cambridge, UK
I would find it useful if Orbiter measured and reported the time taken by each addon to return from the various callbacks that Orbiter calls, and of course the time its internal steps take (e.g. render frame; compute stuff). I don't suppose it's already possible?
 
Top