Dual-Core / execute app. on specific core

tEd

Casual Member
Veteran
I have a dual-core cpu now yay :D

I've heard that it is possible to assign an application to a specific cpu-core. How do i do that?

oh i'm using winxp
 
Last edited:
Try out this "imagecfg" tool. Here's a blurb from where I found it at.

Copy imagecfg.exe to %systemroot%\system32 (or C:\Windows\system32), and %systemroot%\system32\dllcache (or C:\Windows\system32\dllcache).
Doing so will make imagecfg a system command.

This tool only works on NT based operating systems (Windows NT, 2000 Family, XP Family, 2003 Family, Longhorn/Vista).
It will work on Multiprocessor machines and Uniprocessor machines with HyperThreading Technology (and probably multicore processors).

I was unable to find any documentation for this tool on Microsoft's website.
To use this tool to set affinity masks for an executable, type the following command in a command prompt window or run dialog:

imagecfg -a 0x1 c:\path\to\file.exe

If the above didnt work, try typing the following:

imagecfg -u c:\path\to\file.exe
imagecfg -a 0x1 c:\path\to\file.exe

0x1 = CPU0 (first logical/physical CPU)
0x2 = CPU1 (second CPU)
0x3 = CPU2 (third CPU)
 
you can use task manager to set the affinity of an application to just a single cpu id.
 
That imagecfg tool will allow you to assign it to that processor permenantly. Another way to change/set the affinity is via the Task Manager. Select the process of interest, right click and select "Set Affinity". Doing so through the Task Manager will only last for the current session.

I had to set affinity on Serious Sam II, otherwise the sound was completely chopping and the graphics would jump around as well.
 
There's also WinLauncherXP, which also allows you to configure application priority.

Jawed
 
Simplest solution: from the command line or a BAT file,

start /affinity 1 MyExecutable.exe

(2 for processor 2, 4 for processor 3, 8 for processor 4 etc)
 
assen said:
Simplest solution: from the command line or a BAT file,

start /affinity 1 MyExecutable.exe

(2 for processor 2, 4 for processor 3, 8 for processor 4 etc)
/affinity is a invalid switch.....

And the WinLauncherXP is very bugy... i found only a beta version and the website is down?
 
Last edited by a moderator:
I'd just like to comment that in my experience, setting an app to a specific core is usually not necessary. But it can sometimes cure random crashes to the desktop that some games experience when run on a dual-core machine.
 
about my SMPseesaw, it's rather nice (graphical), worked for me, it allows to put one process on one CPU with every other process being relegated on the other CPU, which is nice.
Only drawback, it's old (windows 2000 era) but maybe it still works w/o problem.
 
Blazkowicz_ said:
about my SMPseesaw, it's rather nice (graphical), worked for me, it allows to put one process on one CPU with every other process being relegated on the other CPU, which is nice.
Only drawback, it's old (windows 2000 era) but maybe it still works w/o problem.
well the apps in this thread are 2002.... not much has changed for NT/xp SMP....
 
look what I found:
http://forums.amd.com/lofiversion/index.php/t65211.html
from readme:
setaffinity v1.80 : README
Changelog: 1.81 - 1.80
Added the ability to set affinity masks that aren't valid on the current system in executable files.
Changelog: 1.80 - 1.72
Now includes a Windows Service executable (setaffinity_service.exe) which contains the process monitoring code from setaffinity.exe. You can run this service in the background and have it apply the affinity masks to your selected applications, instead of leaving setaffinity.exe running in the system tray etc.
The main setaffinity application allows you to check the current status of the service, and to start/stop/install/remove it.
Improved some error/warning messages displayed by setaffinity.exe
Changelog: 1.72 - 1.71

last update - 4.09.2006! ;0
 
Back
Top