Forum > Windows

2.4V updated apps.

<< < (8/10) > >>

msattler:

--- Quote from: Josef W. Segur on 04 Sep 2007, 01:55:19 am ---
--- Quote from: msattler on 03 Sep 2007, 09:22:43 pm ---...
If there were a way to test the same app on 2 cores or 4 cores simultaneously, I wouldn't mind knowing if it can be done and trying it..............would it be a hard thing to modify the knabench script to do it,  or really just not worth the bother?
--- End quote ---

It might be possible to modify knabench that way, but certainly difficult.

There is a way to do realistic testing, though. It requires a cache of work, but none which might cause going into EDF during the test.

1. Turn off Network activity in BOINC, then shut it down.
2. Make another folder, say BOINCTEST.
3. Copy everything from the BOINC folder and its subdirectories to BOINCTEST.
4. Install the application you want to test in the project folder below BOINCTEST.
5. Start a timer and the Boinc Manager in BOINCTEST.
6. Run for say two hours then save all messages from BOINC Manager and shut down. Make a copy of client_state.xml, that and the saved messages are the test results.
7. To test another app, wipe out all the contents of BOINCTEST and go back to step 3.

This should be possible on any platform with minor modifications. I wouldn't recommend comparing more than two apps this way, it does require going through the messages and/or client_state.xml files and checking time differences, contents of stderr reports, etc. But it's about as realistic as testing can be, each test using identical WUs starting at the same points.
                                                                    Joe



--- End quote ---

Thanks Joe!  You've given me some food for thought there.  As you mentioned earlier, may be very time consuming to play with, but you've go my curiosity going now.  As the holiday is over and I have to go back to work today, it'll have to wait until perhaps this weekend, but I may experiment with your approach.

Josef W. Segur:

--- Quote from: Raistmer on 04 Sep 2007, 02:22:44 am ---Well, this approach assumes to use "normal" full-length WUs. Really realistic one ;) but at least one WU per core should be completed during the test because of not perfectly linear %of work done  changing during WU calculation, right? This can take more than 2 hours on lower CPUs  :'(
--- End quote ---

Although the progress isn't perfectly linear, it is monotonic (never goes backward) and is close enough to linear to remain useful. I don't think the method can provide precise speed comparison in any case, but should clearly indicate which of two apps is faster on whatever mix of work is present. Completing WUs for each core would give result files which could be compared, but my presumption was this sort of extended testing would only be used for apps already known to produce correct results.


--- Quote ---Does CPU time for WUs with the same AR spread widely to not allow statistical approach?
--- End quote ---

Contention can cause something like 30% CPU time differences, the data in WUs with equal angle range probably no more than 2%.


--- Quote ---And how CPU time logged on web-page corresponds real time spent on WU (assuming app running 100% of time)? Are any CPU-time corrections performed?
--- End quote ---

IIRC, BOINC doesn't start the CPU time when it launches the app, rather when the app initiates its BOINC imterface. After that, CPU time accrues as accurately as the OS allows. On my Win2k Pentium-M system, Windows Task Manager shows about 2.5 seconds more CPU time for the current SETI task than BOINC Manager does. Most of that difference is probably delay in the BOINC Manager getting the data from the core client and displaying it.
                                                          Joe

msattler:
Well Joe, my thought were somewhere along the lines of cloning the WUs, so that you had 4 copies of the same WU (to test on a quad), so that you could get 4 instances of the same WU to run at the same time.

Raistmer:
Thank you very much for detailed answer! You right, there is no need in linear percentage to chose faster/slower case in case of all % bigger or all % smaller.
I imagined case in that lets' say WU-1 got 50%, WU-2 got 95% and with second app WU-1 got 52% and WU-2 got 90%. In that case we cant just sum up nonlinear %.  But don't know will be such situation in real testing or not (BTW, completion of full WU doesnt help anyway, you right).

Only one refinement - the maximum CPU time for WU is the same that time that logged with result on project web page? Not artifical time correction (some multiplier or so? )
As I remember there was a time that some optimized app adjusted CPU time logged to achive correct credit allocation - from that case my question arose.

Josef W. Segur:

--- Quote from: msattler on 04 Sep 2007, 02:07:51 pm ---Well Joe, my thought were somewhere along the lines of cloning the WUs, so that you had 4 copies of the same WU (to test on a quad), so that you could get 4 instances of the same WU to run at the same time.
--- End quote ---

That's probably possible by naming the cloned WUs with existing queued WU names and suspending other WUs so only those run. It may cause maximum contention, having all 4 cores trying to do exactly the same things at the same time. OTOH, initial contention might get the 4 instances an ideal amount out of phase so they'd perform very well.
                                                           Joe

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version