ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

DonationCoder.com Software > Finished Programs

DONE: Replacement Power Options applet

<< < (3/9) > >>

f0dder:
Hmm...

dunno if this is at all related, but for AMD dualcore CPUs, each core has it's own "Time Stamp Counter", and they don't update in parallel for a various number of reasons.

So, if an application queries the TSC (with assembly instruction RDTSC), store the number, thread gets scheduled to other CPU, RDTSC is done again and old value is subtracted (ie, timing is being done) you can end up with negative values.

This is why all Unreal Engine games crash on AMD64x2 boxes, unless they're launched with "affinity restriction".

Carol Haynes:
That sounds quite likely.

How do you launch a program with affinity restriction (I know how to change it once it is launched).

f0dder:
You need to find a launcher - I wrote a little hacky tool with no error checking, but you're probably better off googling for "win2000launcher" :)

skrommel:
 :) Pocess from http://www.beyondlogic.org/solutions/processutil/processutil.htm can set the affinity of a process.

Skrommel

Change the affinity of processes . . .

The affinity is a mask which indicates on which processors (CPUs) a process can run. This is only useful on multiprocessor systems. When the -a option is used in conjunction with a process name or PID, the utility will show the System Affinity Mask and the Process Affinity Mask. The System Affinity Mask shows how many configured processors are currently available in a system. The Process Affinity Mask indicates on what processor(s) the specified process can run on.

C:\>process -a wordpad.exe

Command Line Process Viewer/Killer/Suspender for Windows NT/2000/XP V2.01
Copyright(C) 2002-2003 [email protected]
Getting Affinity Mask for PID 1084 'wordpad.exe'
System  : 0x0001 0b00000000000000000000000000000011  [2 Installed Processor(s)]
Process : 0x0001 0b00000000000000000000000000000011

 

To set the affinity mask, simply append the binary mask after the PID/Image Name. Any leading zeros are ignored, so there is no requirement to enter the full 32 bit mask.

C:\>process -a wordpad.exe 01

Command Line Process Viewer/Killer/Suspender for Windows NT/2000/XP V2.01
Copyright(C) 2002-2003 [email protected]
Setting Affinity Mask for PID 1084 'wordpad.exe'
Affinity Mask Successfully Set to 00000000000000000000000000000001
--- End quote ---

skrommel:
 :) Try LowToSleep v1.1!

I've added affinity to show the correct cpu usage on mutliple core/cpu systems. But I haven't got one, so please telle me if it works!

Skrommel

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version