How to run mutiple applications at once with muti CPU system?

inhotep

Senior member
Oct 14, 2004
557
0
0
I have a quad-core system with two monitors and I would like to run more than one applications in real time without pausing one or another. I'm referring to memory and CPU intensive applications like games, not the small processes that runs in the background. For instance, running FSX on one monitor and MS word on the other without causing FSX to pause.

Back in the day when one CPU was available, it is sensible to have one of the big applications to pause while you work on the other one. For some reason, it seems that my system is still processing programs such as the single core.

Are there anyways I can control the CPU process so it would be possible to work and have FSX running at the same time instead of one at a time?

Thanks

I forgot to add my system specifications:
Q6600 w/2gig ram --> soon to be 6gigs of ram
Vista Ultimate 64bit.
Raid for games and single array for OS setup

Edit: added mobo, graphics card and ram info:
Asus P5N-E SLI
8600GT 512

 

AnnonUSA

Senior member
Nov 18, 2007
468
0
0
In task Manager select a process and right click it, go to "Set Affinity" and you can tell the process to use a specific core.

I have played with this a bit, and saw little or no change in performance, so you may want to let the system take core of running things automatically.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
Originally posted by: AnnonUSA
In task Manager select a process and right click it, go to "Set Affinity" and you can tell the process to use a specific core.

I have played with this a bit, and saw little or no change in performance, so you may want to let the system take core of running things automatically.

yes, os will automatically schedule 2nd process to 'free' CPU. When context switches (some background task gets slice of time) it could reverse processes so they run on different CPUs.

Basically, if process is single-threaded, it might run on both processors, but not at same time. Affinity will just make it run always on same processor.
 

ShawnD1

Lifer
May 24, 2003
15,987
2
81
Originally posted by: inhotep
I have a quad-core system with two monitors and I would like to run more than one applications in real time without pausing one or another. I'm referring to memory and CPU intensive applications like games
Don't do this. Most games actually run a hell of a lot slower if you set them to high priority. Case in point: Grand Theft Auto 3/VC/SA. Setting the game to high priority causes tremendous keyboard and mouse lag. It's so bad that you'll swear the computer is broken.
Some games will even freeze if you put them on realtime (tried it with Team Fortress Classic).

Not screwing with any of the affinity is probably your best bet. As much as it sucks to admit, you and I are not smarter than Windows. It knows what it's doing. The only time you should change the affinity is if the program crashes when using 2 processors (GTA Vice City was doing this).

Also, setting something to higher priority gets next to no performance gains. If you try doing something CPU-intense like compress stuff with winzip, the time difference between "low" priority and "high" priority is almost nothing, but one of them virtually freezes the computer while the other one let's you use the computer for normal stuff like browsing the forum.

As a general rule, don't set tasks to high priority, because it can often make the computer laggy. Video playback is the exception to this rule because mouse lag doesn't matter when you're watching a movie.
Set garbage tasks to low priority. If you're encoding video at the same time as playing a game, it's better to set the encoding to low priority than it is to set the game to high priority. If you want to game in windowed mode and switch out of it fairly often, I find that it's best to run the game as "below normal" priority.

 

inhotep

Senior member
Oct 14, 2004
557
0
0
When I said "real time," I meant to keep that app running without pausing, not changing the priority. Although that does bring an interesting idea; setting affinity to one or two cores and have it running at REAL time or high priority while for an app, while move all other processes to the other cores.
FSX uses muti-thread, I think up to three cores.

I've just ordered Corsair 2 x 2048MB 800mhz which bumps my comp to 6gigs total. I'll provide an update on this after I test few things, including turning off the swap file.

BTW, are there ways to save the allocated affinity so that next time I start the machine it will remember which processes were assigned to which core?
 

NoStateofMind

Diamond Member
Oct 14, 2005
9,711
6
76
"Real Time" affinity will give you "Real Time" to think you shouldn't have. It's simply not a good idea to expect one core to take care of one application and the other core(s) to do others. It won't work well. But if you're as stubborn as I am, you will do it anyway and figure out later you just should have listened. IMO leave it alone, overclocking is about the only performance enhancing step you can take. Go ahead, stick your finger in the fire.....I'm waiting....
 

ShawnD1

Lifer
May 24, 2003
15,987
2
81
Originally posted by: inhotep
BTW, are there ways to save the allocated affinity so that next time I start the machine it will remember which processes were assigned to which core?

You make a batch file in the game directory and use the "start" command. game_name.bat will look like this:
start /affinity 01 shock2.exe

You can also add priority:
start /affinity 01 /abovenormal shock2.exe



If you are playing games that run through Steam, a batch file won't work. Steam games crash if they started from a batch file. Doom 3 through Steam, for example, starts a never-ending cycle where it tries to start, crashes, try again, crash again, and this goes on forever until you end process in task manager.
You will need to use a cracked exe to get around Steam. I tried this for Vice City, and the cracked exe works just fine. No more waiting 5 minutes for Steam to start (connecting....), no more UAC prompt, and it starts with the correct priority every time. Don't attempt doing that for any multiplayer games, because you might get banned for cheating.
 

inhotep

Senior member
Oct 14, 2004
557
0
0
Originally posted by: PC Surgeon
"Real Time" affinity will give you "Real Time" to think you shouldn't have. It's simply not a good idea to expect one core to take care of one application and the other core(s) to do others. It won't work well. But if you're as stubborn as I am, you will do it anyway and figure out later you just should have listened. IMO leave it alone, overclocking is about the only performance enhancing step you can take. Go ahead, stick your finger in the fire.....I'm waiting....

I don't think allocating core(s) for specific applications, especially the high resources demanding ones, is a bad idea but maybe the current hardware/software is not optimal for such, yet.

Yes, I am going to try it! I've already tried with Virtual PC, which works great. I'm thinking the possibilities of 8+ cores too : )
 

inhotep

Senior member
Oct 14, 2004
557
0
0
I'm now running Vista with 6gigs of ram and turned off the swap / page file. Holly fast!!! Still can't get FSX not to pause when working on other apps, even thou the amount of memory for FSX is pretty much unlimited; it now uses around 1.6 gigs of ram with more than 3gigs left to use.
Still, it is good to see noticeable improvement in swiftness all around compare to 2gigs of ram.

I read somewhere that 2gig is the sweet spot for Vista. After upgrading to 6 gigs, I say 2gigs is ok but not optimal. Sweet spot for Vista is more like 4+ gigs of ram.


 

bunnyfubbles

Lifer
Sep 3, 2001
12,248
3
0
Yeah, sweet spot is kind of silly, I think what most people mean is 2GB is where you want to start - no less... If we're talking price/performance, then it would definitely be a very cheap 4GB matched pair of 2GB sticks being a true 'sweet spot' (works for either x86 or x64, even though the x86 versions of Vista won't see it all, it'll still be the most ram you can get in such a system and just as cheap if you buy sets of 2 x 1GB and 2 x 512MB for 3GB), otherwise its as much ram as possible and as fast/low latency as possible.
 

NoStateofMind

Diamond Member
Oct 14, 2005
9,711
6
76
Originally posted by: inhotep
Originally posted by: PC Surgeon
"Real Time" affinity will give you "Real Time" to think you shouldn't have. It's simply not a good idea to expect one core to take care of one application and the other core(s) to do others. It won't work well. But if you're as stubborn as I am, you will do it anyway and figure out later you just should have listened. IMO leave it alone, overclocking is about the only performance enhancing step you can take. Go ahead, stick your finger in the fire.....I'm waiting....

I don't think allocating core(s) for specific applications, especially the high resources demanding ones, is a bad idea but maybe the current hardware/software is not optimal for such, yet.

Yes, I am going to try it! I've already tried with Virtual PC, which works great. I'm thinking the possibilities of 8+ cores too : )

No allocating core(s) is NOT a bad idea. Setting the attributes to "real time" IS however. After reading my post again I can see how you mistook what I meant. Not core allocation but its attributes is what is going to cause problems.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
I don't think allocating core(s) for specific applications, especially the high resources demanding ones, is a bad idea but maybe the current hardware/software is not optimal for such, yet.

It definitely is a bad idea unless you're working in an extremely limited environment. The kernel knows how to balance the load on the CPUs much better than you so all you're doing is limiting it's choices and eventually it's going to decide to put another task on that CPU and your high resource process will now be stuck competing for CPU time until the other one migrates away because you stuck it on that CPU.

It's kind of sad that Windows' process priorities suck so bad because that would probably do what you want, that's all I do on Linux and it works fine. Although I don't even mess with process priorities on Linux much because it's just not necessary, the kernel does a fine job on it's own.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |