Message boards : Number crunching : Could anyone help me to understand this?
Author | Message |
---|---|
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Hi all, I've a little problem with the last machine I added for crunching Rosetta's WUs. The problem is in the investigation of the new credit system... Now, the question is simple: if the new credit system is headed to fairness, on a quite large amount of work I should collect quite the same number of credits for WU (for an infinite number of WUs, at least, not depending on the WU type). Is this right? For sure, if the number is not infinite, there's is a dependance on the WU type, basically on the number of decoys and on the "kind of calculation" done, I think. So, having been part of your crew for only one week, I have only 80 results on 2 machines, and I can't do such an analysis, but please help me to understand anyway, if even possible. My PCs both run linux, quite the same version and has quite the same configuration. The first is an AMD Athlon XP 2400+ and the second a Core Duo @ 2 GHz. The first machine collected 1430.63 credits for 35 results, i.e. 40.87 credits/WU. To be more precise, not taking into account WUs in progress and the errors, they are 1430.63 credits for 33 results: 43.35 cr/wu The second machine collected 1087.39 credits for 39 results, i.e. 27.88 credits/WU. To be precise, they are for 1087.39 credits for 35 results: 31.06 cr/wu The problem is that this trend is perfectly regular, as you can see here first machine, everytime gets nearly 30 credits Athlon XP second machine, rarely scores more than 20 credits Core Duo Probably it would be better to calculate on the number of decoys, not of results. Anyway, let's start from this, and later, if possible, I'd like to automatically collect results, decoys and credits in a DB for analysing the problem. Is this possible, are XML registration (or similar) of results accessible for such a calculation? |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Another thing is: how can it be that I have 1400 credits for 33 results, 40cr/wu, if in the list I have not results with more than 40 credits??? |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Another thing is: how can it be that I have 1400 credits for 33 results on the first machine, 40cr/wu, if in the list I have not results with more than 40 credits??? Maybe the number of credits reported in that list is only a part of the credits aknowledged for those results, or maybe the sum in the hosts page is wrong? |
Mats Petersson Send message Joined: 29 Sep 05 Posts: 225 Credit: 951,788 RAC: 0 |
The Athlon XP is getting around 1.3-1.4x the claimed credit, which is probably fair, as the FPU capacity is probably better than the benchmark score is presenting (especially since it's running Linux). Since the credit awarded is higher than the claimed number, I don't see a reason for complaining here, although compared to a modern Athlon64, your Athlon XP processos getting a bit lower scores per cpu-hour, which is to be expected. The Core duo is getting much lower scores than I'd expect from a "state of the art" processor. Is there something else running on the machine, or are you using a cpufreq to lower the processor speed, and if so, is it set to "ignore nice" (i.e. background CPU work)? Rosetta is "nice", so it would be ignored in the calculation for CPU usage in that case, and the processor would run "slow" because there isn't enough "load" on the system to warrant fast speed. Try: echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice That should set your cpufreq daemon to NOT ignore "nice" processes, and that may help... -- Mats |
Mats Petersson Send message Joined: 29 Sep 05 Posts: 225 Credit: 951,788 RAC: 0 |
Another thing is: how can it be that I have 1400 credits for 33 results, 40cr/wu, if in the list I have not results with more than 40 credits??? The results per host list (or rathere, the entire result-table) is culled after a certain amount of time, so the number of results in the results for this host will be what is "current". The total credit for the host is for the entire period the host has been active - for example, I have 36 results for my highest scored machine, it's got 128K credit-points. Those 36 results are NOT worth 128K credit points, far from it... -- Mats |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
The Athlon XP is getting around 1.3-1.4x the claimed credit, which is probably fair, as the FPU capacity is probably better than the benchmark score is presenting (especially since it's running Linux). Since the credit awarded is higher than the claimed number, I don't see a reason for complaining here Thanks for your precise analysis, though I just knew this :) I started from this (which is probably fair, as you said) and was wondering about the centrino duo. Even if I got 1 credit per wu, I wouldn't complain at all. I'm reasoning about facts, I don't like complaining. The Core duo is getting much lower scores than I'd expect from a "state of the art" processor. Is there something else running on the machine, or are you using a cpufreq to lower the processor speed, and if so, is it set to "ignore nice" (i.e. background CPU work)? Rosetta is "nice", so it would be ignored in the calculation for CPU usage in that case, and the processor would run "slow" because there isn't enough "load" on the system to warrant fast speed. This is very interesting indeed! There are no big processes running, but you're right, the cores are running at 1GHz instead of 2GHz. I've choosen, when I compiled the kernel, userspace governor as default, so I don't have the "ondemand" directory where you said. Should I put the ignore_nice file in the cpufreq dir? Now I'll try some workaround, thank you for helping! |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
The results per host list (or rathere, the entire result-table) is culled after a certain amount of time, so the number of results in the results for this host will be what is "current". Much clearer now :) |
Mats Petersson Send message Joined: 29 Sep 05 Posts: 225 Credit: 951,788 RAC: 0 |
The Athlon XP is getting around 1.3-1.4x the claimed credit, which is probably fair, as the FPU capacity is probably better than the benchmark score is presenting (especially since it's running Linux). Since the credit awarded is higher than the claimed number, I don't see a reason for complaining here Sorry, the above "script" is probably only working if you have the "ondemand" governor, but there should be some other solution for the userspace governor, but I don't know quite what that is. I did work on the prototype for the PowerNow! driver for Linux, but I wrote my own governor as a very simple little application (in usermode), and it was pretty lame compared to the stuff that exists today - and I'm not actually using cpufreq on any of my machines - as they are desktops and I want max calculation capacity... -- Mats |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Sorry, the above "script" is probably only working if you have the "ondemand" governor, but there should be some other solution for the userspace governor, but I don't know quite what that is. I did work on the prototype for the PowerNow! driver for Linux, but I wrote my own governor as a very simple little application (in usermode), and it was pretty lame compared to the stuff that exists today - and I'm not actually using cpufreq on any of my machines - as they are desktops and I want max calculation capacity... You helped me a lot, 'cause I didn't think about governors at all :) Now I passed to the performance governor and I think I'll use ondemand governor when I use the battery. I don't know much about userspace governor too, and I prefer using something more easy to understand, for the moment. A question: when I use ondemand governor with ignore_nice set to 1, will be ignored also nices lower than 0, or only greater than 0? I think I can imagine the answer, but to be sure it's better to ask. |
Mats Petersson Send message Joined: 29 Sep 05 Posts: 225 Credit: 951,788 RAC: 0 |
Sorry, the above "script" is probably only working if you have the "ondemand" governor, but there should be some other solution for the userspace governor, but I don't know quite what that is. I did work on the prototype for the PowerNow! driver for Linux, but I wrote my own governor as a very simple little application (in usermode), and it was pretty lame compared to the stuff that exists today - and I'm not actually using cpufreq on any of my machines - as they are desktops and I want max calculation capacity... All the information I have on the "ignore_nice" variable comes from a post on the 'net that I found via google, and it wasn't very detailed - I just remembered reading about it somewhere, and I found a link that showed how to access the "ignore_nice" variable in the sysfs - so I didn't search more than that... I don't think it's "any process with a non-zero nice", but rather the ones that are actually "nice" to the system (positive values - at least unless I remember it wrong - I don't use the nice command often enough to remmeber, so I always do "man nice" to figure out which way it goes). -- Mats |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Thanks again for (great) helping, now the cores are running at full speed and in few hours I'll have new results which will probably solve this problem. If not, I'll let you know. If yes, the same :) |
River~~ Send message Joined: 15 Dec 05 Posts: 761 Credit: 285,578 RAC: 0 |
Thanks again for (great) helping, now the cores are running at full speed and in few hours I'll have new results which will probably solve this problem. There is a preference in the general prefs that you can select to prevent BOINC running when you are on battery. I recommend you use this on any laptop that is ever used on the battery. Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. Mats: good catch on spotting the low output and guessing the reason - I'm impressed. River~~ |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. Could you explain this sentence? I cannot understand :( Mats: good catch on spotting the low output and guessing the reason - I'm impressed. Yes, one shot one kill, and in a very short time :D Though he said I was complaining... in that he was completely wrong ;) |
Mats Petersson Send message Joined: 29 Sep 05 Posts: 225 Credit: 951,788 RAC: 0 |
Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. A processor doing something, will use more current (amps) than one that doesn't actively do any work (because the processor executes the "hlt" instruction, which puts it in a lower-power-state until there's something to do, like handle an interrupt - which may lead to some actual work, etc). "work time" I would take to mean "battery life", in other words, if you run Rosetta, your battery life will be much shorter even at half-speed, compared to not running Rosetta.
Bad choice of words I suppose... -- Mats |
River~~ Send message Joined: 15 Dec 05 Posts: 761 Credit: 285,578 RAC: 0 |
Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. ok, I put a lot of comment in very few words. What I was thinking is that can do three things when you are working on battery power. a) Allow BOINC to run at full speed, same as when on mains power. b) Allow BOINC to run, but use the governor the way it was set up before so that the cpu runs at half speed, using a lot less than half power. c) Tell BOINC not to run at all. Thinking about how long you can work on the battery if you start with full charge, (b) is a lot better than (a), but (c) is best of all. In my own opinion the best option is (c) because for me any shortening of the battery life is annoying when I am typing away from the power socket. There is a setting in general preferences to select whether BOINC runs at all when you are working on battery power. For options (a) and (b) select yes. For option (c) select no. For option (a) have the governor settings the same as they are now, so the cpu is running fast all the time. For options (b) and (c) have the governor settings how they were before, which means you need to work out how to make the settings change over when you swap between battery and mains power, or remember to change them over manually. This is important even on option (c) as it will affect how much power other low priority services use. Hope that is more clear. R~~ edit: and I see Mats has also explained - we were tyoing at the same time I guess! |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
in other words, if you run Rosetta, your battery life will be much shorter even at half-speed, compared to not running Rosetta. Yes, This is true wathever speed you choose :) |
FluffyChicken Send message Joined: 1 Nov 05 Posts: 1260 Credit: 369,635 RAC: 0 |
Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. I'll explain it a bit easier. Leave Rosetta@home settings at default in the Processor Usage on this page https://boinc.bakerlab.org/rosetta/prefs.php?subset=global and ignore what they said ;-) i.e. by default Rosetta@home will not run when you computer is on a battery, so ignore what they are trying to say, unless you altered the very first option. Though if you have enough memory 512Mb/core, set the 4th option Leave applications in memory while suspended? to yes. This means you loose no progress when you switch to batteries. Another thing about calculations, it traditonal since it is easier to talk about credits/hour. Which on the recent results page you just take the granted credit and divide by the time (in seconds) then convert to per hour. It's quite simple to copy and past the whole table of a page in to a spread sheet. The reason for the tradition is an hour is easy to think about and in Rosseta@Home a member can select how long they wish to run a task for on the last option Target CPU Run Time in these options https://boinc.bakerlab.org/rosetta/prefs.php?subset=project hence per hour makes it easier to compare. Team mauisun.org |
daniele Send message Joined: 12 Oct 06 Posts: 18 Credit: 20,328 RAC: 0 |
[quote]Even on half speed, the cpu uses more current when it is thinking that when idle and that will shorten your work time enough to annoy you. Ok ok, I've a bit to write :) Yesterday I was sure I had replied, but I didn't. It's electronics exam's fault, not mine :) to River: You passed from 10 concepts in one row to 0,5 concepts per row in 20 rows, now I catch your english :) Thank you for wide helping, I knew some of these things (I do study, I'm a diligent cruncher) but a revision is helping at any moment. I met this setting on the first days, and I decided to leave the default, cause I'm experiencing problems with the bios and acpi of the toshiba laptop (a known problem, partially resolved and in progress). For example I still can't lower brightness and do fine power managing... Few days later, I took my laptop to work and I didn't turn it off. Ehm, I put it in the bag, simply. It was working, hot, not good power management, spinning fans and with the suspend option off. When I arrived I opened the bag and it was nearly on fire (not above 100 °C, because when he reaches 103/106 °C it automatically stop). My luck: the "don't run on battery" options probably saved my laptop to reach 103/106 °C in a plastic made bag. Maybe the pc would resist, light plastic not... Second thing, there was userspace governor running, everytime at half speed because there was nothing to do. So you understand, not having a (more than) good power management is a mess, I've to stop on battery :) to FluffyChicken: I've 224 MB on the 2400+ and I use "leave in memory" and "Do work while computer is in use" without restrictions. Linux is responsive enough to permit such these tricks on an undegraduate host like this. Toshiba laptop, on the other hand, with the same options is running interactively nearly as it were idle. Fabulous :) I was thinking about that before, the 'credit per CPU hour' index. Since yesterday, credit per hour raised to the right point (right for a linux system, still less than wInsicureXP). take a look 11,78 credits per hour awarded in the last 3 WUs against 6/7 credits per hour as a mean value before yesterday :) |
FluffyChicken Send message Joined: 1 Nov 05 Posts: 1260 Credit: 369,635 RAC: 0 |
:-) I've had a hot laptop before as well, oops ;-) and it was still crunching as I had allowed it to run on batteries... The 512MB per core is just to be on the safe side since it pages most of it out to the drive any so doesn't really effect much. Team mauisun.org |
Message boards :
Number crunching :
Could anyone help me to understand this?
©2025 University of Washington
https://www.bakerlab.org