Page 1 of 10

SMP Affinity Changer

Posted: Wed Dec 05, 2007 1:03 am
by rilian
Utility for automatical assigning of affinities for SMP folding cores. It works as a service and assigns affinities every 10 mins if needed. Generally this gives up to 10% PPD, which is like up to 1000 additional points for Intel Quad processors.

1.0.3 version is available here:

http://distributed.org.ua/forum/index.p ... topic=1149

ps: i'll try to google old topic and post it here

here is a screenshot for a brief intro Image (copyright)

Posted: Sat Dec 08, 2007 1:48 am
by noorman
.


Congratulations on the Affinity Changer, mostly for the 1.0.3 version which works more effectively for the C2D processor family ...

I 'm running Windows SMP for now, because I can't get Linux installed on this new computer.
Since I had to revert to Windows SMP to get any production done, I returned to your A-Ch site and found this new version; I downloaded it and installed it.

I 'm most impressed; I 've been watching the progress of my now 1st new WU, a p2653, and I 'm seeing very stable and shorter frame times !

You can set your clock by it, almost; from the start I get around 16 mins 05 secs per frame (repeatedly) on a stock C2D E6550 (2.333 GHz).

CPU core temps are looking very good too with a max. of 37°C (real die temps) !


Thanks again for this little jewel from the Ukraine Very Happy :D


.

Posted: Sat Dec 08, 2007 1:51 am
by rilian
noorman: 8) :wink:

1.0.4 version will come out soon, which will also assign affinities for FAH console client

Posted: Sun Dec 09, 2007 10:40 am
by noorman
rilian wrote:noorman: 8) :wink:

1.0.4 version will come out soon, which will also assign affinities for FAH console client
.


I don't understand what you mean; I 'm running the console client on WinXP with the Affinity Changer v1.0.3 and I have a clear advantage against running it without Affinity Changer ...

Before, I ran a p2653 which started off with frames at over 22 mins, then tapering off to around 18 mins and something.

With Affinity Changer v1.0.3 running, I had another 2 pieces of p2653 and both started off right away at 16 mins 05 secs and even 16mins 02 secs.

You can almost set your clock by these frame times; they are that regular !


I don't know what v1.0.4 will bring exactly, but if it is better still, I 'll run with it !

:D


.

Posted: Sun Dec 09, 2007 12:52 pm
by rilian
I mean usual non-smp client. For example, on some of my core duo machines i cannot run SMP because they do not run 24/7 and SMP would not fit deadline.

Posted: Sun Dec 09, 2007 1:51 pm
by zorzyk
Does it mean that running AC 1.0.3 would shorten frame times comparing to standard single SMP client?

I did some tests with AC 1.0.2 and TPF's were longer by about 25-30% (TPF measured for p2653: without AC: 9:05, with AC: 12:40). That's why I'm using single SMP now.

Posted: Sun Dec 09, 2007 6:15 pm
by noorman
zorzyk wrote:Does it mean that running AC 1.0.3 would shorten frame times comparing to standard single SMP client?

I did some tests with AC 1.0.2 and TPF's were longer by about 25-30% (TPF measured for p2653: without AC: 9:05, with AC: 12:40). That's why I'm using single SMP now.
.


I am running Win SMP on a C2D system (@stock for now).

I noticed this: running a p2653 I had frame times of over 22 mins, after a while they settled to just above 18 mins/frame.

After installation of Affinity Changer 1.0.3, I noticed that the starter frame times were 16 mins 05 secs, afterwards they did not shorten very much; I saw no frames shorter than 16 mins 02 secs. I found this on 2 consecutive p2653 WU's ...

So, you can almost set your clock by those frame times with this app. running !

:D :D :D


I know; it 's a repeat performance :lol:


EDIT: typo corrected.


.

Posted: Sun Dec 09, 2007 7:23 pm
by toTOW
Important thing to mention : if SMP Affinity Changer is used on a non dedicated quad running one client, it will loose PPD (for example when a single thread application is used, like a game, or a standard fah client) :cry:

This is not only true with this program, it's also the case when affinities are manually fixed. In fact if one (or more) out four fahprocess can't run, it will slow the other cores a lot too.

Is there a way to add the possibility to Affinity changer to detect when other application uses one or more core in order to release the affinties to default (all processes to all cores) :?:

Posted: Mon Dec 10, 2007 8:57 pm
by noorman
.


Rilian, any chance of getting a Linux version of this very good app. in the future ???


.

Posted: Tue Dec 11, 2007 12:25 pm
by rilian
toTOW: about SMP A-CH on Quad with simgle FAH client. I talked with nik4eva and some other crunchers from my team and we decided that assigning affinities on Quad with ONE FAH SMP client does not give increase of PPD(like it gives on quad with 2 SMP clients). We have not free quad machine for testing of this at the moment so we appreciate if you will test it.

In next version affinities for Quad when one SMP client is used will be disabled.

Do you have any other ideas about it? Process names liek "photoshop" or other may be detectedand A-Ch can do with affinities smth different in this case.

===========

I found a developer for linux version. that is all i can tell about it now.

Posted: Tue Dec 11, 2007 1:06 pm
by toTOW
I think it will be hard to detect specific processes ... there are so much that it's quite impossible to do it this way ... it might be easier to detect that fahcores total usage is no longer 100% (you can set a step at 90% for example). This will not trigger assignement change for a movie playback or a webpage full of flash, but it will trigger if a single threaded application start to eats one core.

Did you plan to add the detection of CPU core logic (to determine the right basic dual cores on quads) :?:

Posted: Tue Dec 11, 2007 1:16 pm
by rilian
1) we were thinking about detecting if any other process ATE more than 10% of total CPU time in the detection period ( = 10 min ). If such process found, affinities for the next period will be set all-processes-for-all-cores

2) i did not get what you ask :roll:

Posted: Tue Dec 11, 2007 1:35 pm
by toTOW
I was talking about the two dual cores that make the quad. When two client are run on a quad, try to assign each client to one dual core (sharing the same cache). Dual cores are CPU0/3 and CPU 1/2 OR CPU 0/1 and CPU 2/3, but it depends on how windows detected them on boot.

Posted: Tue Dec 11, 2007 4:57 pm
by gwildperson
If the software only runs its detection process once every 10 minutes, I don't think it's going to be acceptable. If I start watching a video, I won't be happy if the first 5 or 10 minutes are choppy before FAH yields enough CPU time. This may be an excellent tool for a machine that's dedicated to folding but it's not possible to make it as dynamic as the process scheduler in the OS, which is what people are going to want.

Posted: Tue Dec 11, 2007 5:46 pm
by rilian
I am not really sure why 10 mins was set as default detection time. FahSMpAffinityChanger.exe already ate whole 00:00:00 on my month-uptime machine and eating cpu with speed of 0% :lol:

I think that checking period may be set to smaller time period, like 1 min