FS2004 Supports Dual Processor / Dual Core !!!!

  • Thread starter Thread starter Santosh Kumar
  • Start date Start date
S

Santosh Kumar

Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU (single card only).

Learned that FS2004 does support multiple processors / cores by virtue of the fact that it's multithreaded. Apparently all that is really needed for multi-processor support is for the program to be multithreaded and the OS (Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU (core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0 went back to idle, and CPU 1 went to 100%. I repeated the opposite case and set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%. I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed out and running MegaScenery Los Angeles. Every once in a while, framerate would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff running in background, lowest I was able to get it to go was ~36 FPS. But for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same experiemnt to verify what I have stated here.

Santosh Kumar
 
Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an
ASUS A8N-SLI > nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB
DDR3 GPU (single > card only).

Where did you get that Big Chip from? Must have cost a lot, right? I didn't
know the Athlon 64 X2's were out yet.
Framerate wise... i've been average over 70-100 FPS with everything maxed
out and running > MegaScenery Los Angeles. Every once in a while, framerate
would burst to 200-300.

I've never heard of such amazing FPS from FS2004!
Framerate dropped slightly when utilizing only 1 core. With other stuff
running in background, > lowest I was able to get it to go was ~36 FPS. But
for the most part it stayed 70-100. Often > times averaging in the 100
range.

What other programs did you have running? I'm interested in the A64's
multitasking abilities.

jkb
 
Santosh,

Can you provide your graphics card settings?

I can run those high fps also -- at 1024 x 768 AA off and AF 2X -- could you provide frame rate info at 1600 x 1200 32bit 8X AA and 16X AF with mip mapping quality and all other quality settings on high (done in the graphics card driver not in FS2004). In FS2004 turn everything to make and check all quality settings/options (i.e. clouds 100% cloud distance max, make sure you have cloudy weather, draw distance max 140mi, etc. etc.)

Don't want to bring you down, but if both CPU's are being fully utilized the wouldy be at close to 100% each not 45% and 47%. Just about all applications use threading to some degree -- add a timer and you have a thread by default. However the key to true multi-process threading is assigning a thread to a certain CPU and managing the data across threads, etc. etc. So yes, FS2004 is threaded, but it doesn't appear to assign processing to specific CPUs -- if it did you'd see 100% load on each CPU not 45% and 47%. Sorry to break the bad news to you.

PVIEW will not tell you how the code is managed or the assignment of threads, WinXP Pro is a very poor OS when it comes to managing threads. I can assure you there is no "default" optimization of threads in WinXP -- it has to be coded by the developers to be used correctly.

Rob.

Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU (single card only).

Learned that FS2004 does support multiple processors / cores by virtue of the fact that it's multithreaded. Apparently all that is really needed for multi-processor support is for the program to be multithreaded and the OS (Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU (core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0 went back to idle, and CPU 1 went to 100%. I repeated the opposite case and set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%. I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed out and running MegaScenery Los Angeles. Every once in a while, framerate would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff running in background, lowest I was able to get it to go was ~36 FPS. But for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same experiemnt to verify what I have stated here.

Santosh Kumar
 
Rob,
Santosh,

Can you provide your graphics card settings?
Currently running a Leadtek GeForce 6800 GT GPU w/ 256 MB DDR3 PCI-Express based graphics card.
Don't want to bring you down, but if both CPU's are being fully utilized the wouldy be at close to 100% each not 45% and 47%. Just about all applications use threading to some degree -- add a timer and you have a thread by default. However the key to true multi-process threading is assigning a thread to a certain CPU and managing the data across threads, etc. etc. So yes, FS2004 is threaded, but it doesn't appear to assign processing to specific CPUs -- if it did you'd see 100% load on each CPU not 45% and 47%. Sorry to break the bad news to you.

Well.... it is at 45%-47% with affinity for both CPU's enabled. When I set affinity to only one CPU, that CPU goes to 100%. Couldn't it mean that with affinity to both CPU's enabled that it's load balancing between the two?

There is nothing else running in the background that's using up 40+% on either of the CPUs. If FS2004 were not using both cores (i'm not necessarily saying that its specifcially programmed for it),why would the both CPUs go from idle to the under 50% range? To me it seems that whatever CPU windows assigned FS9.exe... it would max that out at 100% and that would be it, the other core would be sitting idle. But that doesn't seem to the case from my observation.

I wish there were a program out there that would actually show you process by process or thread by thread what is running on which CPU / Core.... if you know of anything like that, i'd like to test it out.
PVIEW will not tell you how the code is managed or the assignment of threads, WinXP Pro is a very poor OS when it comes to managing threads. I can assure you there is no "default" optimization of threads in WinXP -- it has to be coded by the developers to be used correctly.
I only used PVIEW to see if FS9.exe ran multiple threads of execution, I was not able to determine anything more beyond that. All PVIEW told me was that FS9.exe had a total 8 threads running under it.

Santosh
Santosh,

Can you provide your graphics card settings?

I can run those high fps also -- at 1024 x 768 AA off and AF 2X -- could you provide frame rate info at 1600 x 1200 32bit 8X AA and 16X AF with mip mapping quality and all other quality settings on high (done in the graphics card driver not in FS2004). In FS2004 turn everything to make and check all quality settings/options (i.e. clouds 100% cloud distance max, make sure you have cloudy weather, draw distance max 140mi, etc. etc.)

Don't want to bring you down, but if both CPU's are being fully utilized the wouldy be at close to 100% each not 45% and 47%. Just about all applications use threading to some degree -- add a timer and you have a thread by default. However the key to true multi-process threading is assigning a thread to a certain CPU and managing the data across threads, etc. etc. So yes, FS2004 is threaded, but it doesn't appear to assign processing to specific CPUs -- if it did you'd see 100% load on each CPU not 45% and 47%. Sorry to break the bad news to you.

PVIEW will not tell you how the code is managed or the assignment of threads, WinXP Pro is a very poor OS when it comes to managing threads. I can assure you there is no "default" optimization of threads in WinXP -- it has to be coded by the developers to be used correctly.

Rob.

Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU (single card only).

Learned that FS2004 does support multiple processors / cores by virtue of the fact that it's multithreaded. Apparently all that is really needed for multi-processor support is for the program to be multithreaded and the OS (Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU (core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0 went back to idle, and CPU 1 went to 100%. I repeated the opposite case and set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%. I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed out and running MegaScenery Los Angeles. Every once in a while, framerate would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff running in background, lowest I was able to get it to go was ~36 FPS. But for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same experiemnt to verify what I have stated here.

Santosh Kumar
 
After some experimenting found out that FS2004 Dual Processing support is available only in Windows XP and NOT in Windows 2000.

When I tried running it with both processor affinity settings enabled in Win2K, the scenery objects started flickering and FS2004 started behaving very erratic, problem went a way by assinging it to either of the two CPU's and disabling affinity for the other CPU.

This problem did not occur in Windows XP SP2, but only in Windows 2000.

Santosh Kumar
Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU (single card only).

Learned that FS2004 does support multiple processors / cores by virtue of the fact that it's multithreaded. Apparently all that is really needed for multi-processor support is for the program to be multithreaded and the OS (Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU (core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0 went back to idle, and CPU 1 went to 100%. I repeated the opposite case and set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%. I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed out and running MegaScenery Los Angeles. Every once in a while, framerate would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff running in background, lowest I was able to get it to go was ~36 FPS. But for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same experiemnt to verify what I have stated here.

Santosh Kumar
 
Santosh,

This is pretty impressive stuff!. My question is this: I've just bought the
Asus A8N-E motherboard with an Athlon FX-55. I've also got the same graphics
card as you. I'm still only getting 20-30 FPS with everything maxxed out and
was wondering whether you thought replacing the CPU with an Athlon 64 X2
would achieve the same results as you? (the mobo *will* take the X2, by the
way)

I'm also a bit confused by the other responses here. I'm assuming that it
will make a difference, but how much? Of course, it's impossible for you to
tell, but you've obviously done your research and any tips you can give are
most welcome.

I've also heard that M$ are going to be insisting on two OS licences for
dual core CPU machines. Sounds crazy to me. Anyone heard anything to that
effect or is it simply scaremongering?

Thanks,
Andy.


After some experimenting found out that FS2004 Dual Processing support is
available only in Windows XP and NOT in Windows 2000.

When I tried running it with both processor affinity settings enabled in
Win2K, the scenery objects started flickering and FS2004 started behaving
very erratic, problem went a way by assinging it to either of the two CPU's
and disabling affinity for the other CPU.

This problem did not occur in Windows XP SP2, but only in Windows 2000.

Santosh Kumar
Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS
A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU
(single card only).

Learned that FS2004 does support multiple processors / cores by virtue of
the fact that it's multithreaded. Apparently all that is really needed for
multi-processor support is for the program to be multithreaded and the OS
(Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU
(core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load
was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly
just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0
went back to idle, and CPU 1 went to 100%. I repeated the opposite case and
set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%.
I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and
CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that
FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed
out and running MegaScenery Los Angeles. Every once in a while, framerate
would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff
running in background, lowest I was able to get it to go was ~36 FPS. But
for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual
Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same
experiemnt to verify what I have stated here.

Santosh Kumar
 
Santosh,

I think you didn't understand my question -- I asked what "settings" not what brand model number graphics card. Settings means the resolution -- i.e. 640 x 480, 800 X 600, 1024 x 768, 1600 x 1200, 32bit or 16bit, and what Anti Alias setting (none, 2X, 4X, 8X) and what Anisotropic Filter (2X, 4X, 8X, 16X), Mipmap detail level (high performance to high quality), etc. These are just the graphics card settings (NOT FS2004 settings). You'll need to tell us what display settings you have in FS2004 also i.e. 1600 x 1200, cloud draw distance, etc. etc. etc.

As far as load balancing -- I believe you're mixing up Network traffic terms (as in dual or multi network cards). There is no "default" load balancing that is built into FS2004. Think about it, if FS2004 had multiprocessor support then BOTH your CPU's should be close to 100% not 47% and 45%. Are you suggesting that FS2004 just doesn't need the other 53% and 55%? Does that make sense to you?

Windows XP Home doesn't support Multi-processor. Windows XP Pro and Windows 2000 Professional both support multi-processors. You need to find a reliable source that was on the development team (core programmer) and ask them if FS2004 was coded with specific multiprocessor support.

But like I said before, I can get 100+ fps in lower resolution mode 1024 x 768 with AA = none and AF=2X, but it does NOT look anywhere as good as when I run FS2004 in 1600 x 1200 with AA=4X and AF=8X and that is where I'm averaging 25 fps -- with ALL the FS2004 Display setting maxed all except texture = High (I could not tell the difference betwee the two).

Rob.

Rob,
Santosh,

Can you provide your graphics card settings?
Currently running a Leadtek GeForce 6800 GT GPU w/ 256 MB DDR3 PCI-Express based graphics card.
Don't want to bring you down, but if both CPU's are being fully utilized the wouldy be at close to 100% each not 45% and 47%. Just about all applications use threading to some degree -- add a timer and you have a thread by default. However the key to true multi-process threading is assigning a thread to a certain CPU and managing the data across threads, etc. etc. So yes, FS2004 is threaded, but it doesn't appear to assign processing to specific CPUs -- if it did you'd see 100% load on each CPU not 45% and 47%. Sorry to break the bad news to you.

Well.... it is at 45%-47% with affinity for both CPU's enabled. When I set affinity to only one CPU, that CPU goes to 100%. Couldn't it mean that with affinity to both CPU's enabled that it's load balancing between the two?

There is nothing else running in the background that's using up 40+% on either of the CPUs. If FS2004 were not using both cores (i'm not necessarily saying that its specifcially programmed for it),why would the both CPUs go from idle to the under 50% range? To me it seems that whatever CPU windows assigned FS9.exe... it would max that out at 100% and that would be it, the other core would be sitting idle. But that doesn't seem to the case from my observation.

I wish there were a program out there that would actually show you process by process or thread by thread what is running on which CPU / Core.... if you know of anything like that, i'd like to test it out.
PVIEW will not tell you how the code is managed or the assignment of threads, WinXP Pro is a very poor OS when it comes to managing threads. I can assure you there is no "default" optimization of threads in WinXP -- it has to be coded by the developers to be used correctly.
I only used PVIEW to see if FS9.exe ran multiple threads of execution, I was not able to determine anything more beyond that. All PVIEW told me was that FS9.exe had a total 8 threads running under it.

Santosh
Santosh,

Can you provide your graphics card settings?

I can run those high fps also -- at 1024 x 768 AA off and AF 2X -- could you provide frame rate info at 1600 x 1200 32bit 8X AA and 16X AF with mip mapping quality and all other quality settings on high (done in the graphics card driver not in FS2004). In FS2004 turn everything to make and check all quality settings/options (i.e. clouds 100% cloud distance max, make sure you have cloudy weather, draw distance max 140mi, etc. etc.)

Don't want to bring you down, but if both CPU's are being fully utilized the wouldy be at close to 100% each not 45% and 47%. Just about all applications use threading to some degree -- add a timer and you have a thread by default. However the key to true multi-process threading is assigning a thread to a certain CPU and managing the data across threads, etc. etc. So yes, FS2004 is threaded, but it doesn't appear to assign processing to specific CPUs -- if it did you'd see 100% load on each CPU not 45% and 47%. Sorry to break the bad news to you.

PVIEW will not tell you how the code is managed or the assignment of threads, WinXP Pro is a very poor OS when it comes to managing threads. I can assure you there is no "default" optimization of threads in WinXP -- it has to be coded by the developers to be used correctly.

Rob.

Finally put together an AMD Athlon64 X2 4400+ Dual Core system with an ASUS A8N-SLI nForce 4 SLI system board and NVIDIA GeForce 6800 GT 256MB DDR3 GPU (single card only).

Learned that FS2004 does support multiple processors / cores by virtue of the fact that it's multithreaded. Apparently all that is really needed for multi-processor support is for the program to be multithreaded and the OS (Windows) takes care of the rest.

Justifications:

1) Before running FS2004, noticed that processor utlization for each CPU (core) was at idle.

Upon starting FS2004 and going through the menus, I noticed most of the load was on CPU 1 (the 2nd core), while CPU 0 remained relatively idle.

When I started the actual flight, both CPU 0 and CPU 1 showed up at roughly just under 50% each (about 45%-47%).

2) I changed the processor affinity so that only CPU 1 was checked.... CPU 0 went back to idle, and CPU 1 went to 100%. I repeated the opposite case and set the affinity for CPU 0 only... CPU 1 went to idle, CPU 0 went to 100%. I rechecked CPU 0 and CPU 1, CPU 0 went from 100% to rougly under 50% and CPU 1 went from idle to about the same. (They both very slightly).

3) Opened up Process Viewer (PVIEW.EXE) from Visual C++ 6.0, found out that FS9.exe is multithreaded... it's running 8 different threads.

Framerate wise... i've been average over 70-100 FPS with everything maxed out and running MegaScenery Los Angeles. Every once in a while, framerate would burst to 200-300.

Framerate dropped slightly when utilizing only 1 core. With other stuff running in background, lowest I was able to get it to go was ~36 FPS. But for the most part it stayed 70-100. Often times averaging in the 100 range.


This is a pretty exciting find for me. If there is anyone else with Dual Core (either Athlon64 X2 or Pentium D or Pentium EE), you can try the same experiemnt to verify what I have stated here.

Santosh Kumar
 
MS will not require two licenses -- I was just having a conversation with
their pre-sales support group a few days ago about this very fact -- they
define a processors as a physical processors and he said that HT and Dual
core will count as a single processor (in terms of licenses).

Andy, until Santosh provides details on what settings he was using running
on his video card and in FS2004 there is not much conclusive that anyone can
gain from his statements.
 
Agreed, Rob. I can't recall the exact thread but this subject has been
beaten to death since the hyperthreading processors became available. I DO
recall that 'someone' from MS stated definitely that FS9 does NOT support
hyperthreading. Turning it on or off in the bios has no effect. As far as
setting priority for the application, some folks have experienced apparent
improvement but most have reported anomalies.

I would also submit that since FS9 relies heavily on DX9 and IIRC DX9 also
does not support dual processors, dual core or hyperthreading that FS9 also
cannot.

Chasing the framerate genie becomes difficult to understand at times - like
you, I can easily get 100+ FPS on my system - just doesn't look too good.
Tweaking to my personal preferences - about 30 is what I max it at.

I applaud Santosh's efforts but he needs to test in a controlled
environment.

Just MHO.

BTW, I *STILL* say, forget all this crap and just enjoy flying FS9.
Otherwise just go and buy an old PONG game and see how fast you can get the
white cursor to move ( generic you not you personally :))

Vic
 
Back
Top