Gflop estimates?

Message boards : Number crunching : Gflop estimates?
Message board moderation

To post messages, you must log in.

Previous · 1 · 2 · 3 · Next

AuthorMessage
EdwardPF
Volunteer tester

Send message
Joined: 26 Jul 99
Posts: 389
Credit: 236,772,605
RAC: 374
United States
Message 1830874 - Posted: 16 Nov 2016, 18:56:07 UTC - in response to Message 1830873.  

The table is derived by looking at my work unit task results and my wing mans work unit task results. I took my wing mans flopcounter and divided it by my flopcounter.

I reported the AR, the his/mine and his application name.

I am using SOG r3557.

Ed F
ID: 1830874 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830875 - Posted: 16 Nov 2016, 18:59:17 UTC - in response to Message 1830874.  

I see, thanks. So, for VHAR FLOPs missed en masse.
OK. But before diving into any fix I need to understand for what goals (besides just printing) it's used in modern BOINC ecosystem.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830875 · Report as offensive
Richard Haselgrove Project Donor
Volunteer tester

Send message
Joined: 4 Jul 99
Posts: 14649
Credit: 200,643,578
RAC: 874
United Kingdom
Message 1830877 - Posted: 16 Nov 2016, 19:09:35 UTC - in response to Message 1830868.  
Last modified: 16 Nov 2016, 19:14:39 UTC

But where FLOPs are used currently (besides nice line in stderr output) ?

Sorry, got interrupted by my old university phoning to ask, ever so politely, for us alumni to give it money. But strangely, it's relevant here.

In the BOINC world, there's no direct measure of how much scientific computation is done. Instead - and we've talked about this before [*] - projects award credit, and BOINC reverse-calculates computational effort (flops) as if all credit was awarded at cobblestone scale rates. As we know, SETI is currently awarding below-parity credit: so anyone using BOINC calculations will be under-reporting the value of the volunteer community back to the project sponsors and funders.

A few years ago, Eric gave a talk to a NASA-hosted SETI (generic) seminar, and when we watched the recording back, we could hear him mention a figure for the total computational power available via the SETI@Home project. It didn't match any number I could derive from BOINC sources. So my assumption was that Eric stuffs the reported Flops count into a database somewhere, and can produce numbers for more accurate scientific feedback on our progress and contribution to scientific partners.

Now, where was I?

[*] Observation of CreditNew Impact
ID: 1830877 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830880 - Posted: 16 Nov 2016, 19:24:10 UTC - in response to Message 1830877.  

for that FLOPs should be reported not only in stderr.
And regarding awarded credit calculation - do they used currently (I know before CreditScrew they used, but now?)
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830880 · Report as offensive
Richard Haselgrove Project Donor
Volunteer tester

Send message
Joined: 4 Jul 99
Posts: 14649
Credit: 200,643,578
RAC: 874
United Kingdom
Message 1830881 - Posted: 16 Nov 2016, 19:25:13 UTC - in response to Message 1830863.  

OK, seems checkpoint reports real progress as it's counted.
And the same value reported in"restarted @ %" stderr msg.

What BOINC reports as progress - no idea, perhaps some fake value.

My question (in starting all this off) was more to do with what the SoG application reports as progress.

Doing the same operation on an AVX CPU app (on BLC VLAR, as it happens), I got

<prog>0.84698133</prog>
<fraction_done>0.897888</fraction_done>

Now, that's much more reasonable.

In this case, I don't think that BOINC is faking it - just the old familiar GiGo.
ID: 1830881 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830882 - Posted: 16 Nov 2016, 19:28:34 UTC - in response to Message 1830880.  

I don't see FLOPs in res file. How they reported back to project then?
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830882 · Report as offensive
Richard Haselgrove Project Donor
Volunteer tester

Send message
Joined: 4 Jul 99
Posts: 14649
Credit: 200,643,578
RAC: 874
United Kingdom
Message 1830883 - Posted: 16 Nov 2016, 19:30:00 UTC - in response to Message 1830880.  

for that FLOPs should be reported not only in stderr.
And regarding awarded credit calculation - do they used currently (I know before CreditScrew they used, but now?)

Displayed on BOINC's home page a few seconds ago:



Those PetaFLOPS are reverse-calculated from credit (or, to be precise, RAC).
ID: 1830883 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830884 - Posted: 16 Nov 2016, 19:31:09 UTC - in response to Message 1830881.  


In this case, I don't think that BOINC is faking it - just the old familiar GiGo.

Yep, as I wrote I found place where BOINC receives value - and actuially that value more correct than prog/checkpoint.
This will be fixed in next build for test.
Let's concentrate on FLOPs (cause possible fix if really needed will take much more time and code walking).
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830884 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830886 - Posted: 16 Nov 2016, 19:32:21 UTC - in response to Message 1830883.  


Those PetaFLOPS are reverse-calculated from credit (or, to be precise, RAC).

And again, yep, I understand this - just don't understand how "our" FLOP counter fits there.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830886 · Report as offensive
Richard Haselgrove Project Donor
Volunteer tester

Send message
Joined: 4 Jul 99
Posts: 14649
Credit: 200,643,578
RAC: 874
United Kingdom
Message 1830894 - Posted: 16 Nov 2016, 19:51:26 UTC - in response to Message 1830884.  

Let's concentrate on FLOPs (cause possible fix if really needed will take much more time and code walking).

I think we've probably missed the boat on this discussion, by several years. Eric devised the flopcounting technique for credit scoring, and implemented it here - I think that, for floating-point computational projects, it's recognised as the most realistic reward mechanism yet devised for BOINC. But it does rely on - as you say - very complicated internal monitoring in project science apps. Not every small project is equipped to add the 'counter' to their application code.

So, instead, David devised CreditNew as a way of scoring all projects without the programming overhead of flopcounting. And in the BOINC world, David trumps Eric. CreditNew has been around for over six years now, and gradually all vestiges of previous credit schemes have been removed from the codebase.

To answer your specific question, cumulative flops was reported back to the scheduler via the RPC that returns all the other metadata - CPU time, elapsed time, etc. etc. It doesn't appear in current client RPCs, so I doubt Eric would be able to give a current figure if he repeated that NASA talk now. But as with so much modern 'progress', we've thrown away something that might have been useful.

I still have one museum piece running old code for old times' sake - I may be able to post an example of flops reporting later this evening.
ID: 1830894 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830903 - Posted: 16 Nov 2016, 20:27:40 UTC - in response to Message 1830894.  

OK, thanks.
So, to avoid confusion, I'll remove FLOPs line from stderr.
And comment out (if not already) FLOP counting (but leave commented code for future reference in case it will be needed later).
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830903 · Report as offensive
EdwardPF
Volunteer tester

Send message
Joined: 26 Jul 99
Posts: 389
Credit: 236,772,605
RAC: 374
United States
Message 1830906 - Posted: 16 Nov 2016, 20:43:00 UTC - in response to Message 1830903.  

Sounds good to me ...

Will this eventually move to the general release so as to fade away into obscurity? ... I.E retire... ;-)

Ed F
ID: 1830906 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830911 - Posted: 16 Nov 2016, 21:07:34 UTC - in response to Message 1830906.  
Last modified: 16 Nov 2016, 21:11:04 UTC

Sounds good to me ...

Will this eventually move to the general release so as to fade away into obscurity? ... I.E retire... ;-)

Ed F

Eventually yes but I hardly will update current beta just for that.
But repo will be updated so come with next build anyway.

EDIT: there is progress on iGPU front on Linux (Urs said debugging finished so some new test binaries could be generated). So FLOPs removal maybe will slip into Linux binary first...
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830911 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1830912 - Posted: 16 Nov 2016, 21:09:13 UTC - in response to Message 1830868.  

Well, no, FLOPs and progress not connected.
FLOPs calculated separately and in complex way also.
That's just for spikes:
state.FLOP_counter += 5 * (double) fftlen * log((double) fftlen) / log(2.0);

Nice overhead :P indeed.

Perhaps there is a way to compute such values for whole task with less overhead than for each and every separate iteration...

But where FLOPs are used currently (besides nice line in stderr output) ?


Hi,
I have not read any further on this thread when I write this reply (so I apologize any duplicate (q or a) possibly found)....

Is it needed to report flopcounter during or after the task (with parallel GPU implementations) or Could it be just ignored by the executable (if counting is taking a lot of CPU as Raistmer said)? Does it have any scientific significance? Is it even checked (from stderr :D)?

Some optimizations ignore a lot of the original code path and do not do as many floating points operations as the original one. And then some may do a lot more FP but save on the memory access. So is that number needed at all in stderr.txt?

My original question was about the estimates for the WU's that was displayed in the boinc manager -- task properties -- nn Gflops.
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1830912 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1830913 - Posted: 16 Nov 2016, 21:10:56 UTC

OK. I read further.

Can I remove mine too??
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1830913 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830914 - Posted: 16 Nov 2016, 21:12:26 UTC - in response to Message 1830913.  

I would say yes.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830914 · Report as offensive
EdwardPF
Volunteer tester

Send message
Joined: 26 Jul 99
Posts: 389
Credit: 236,772,605
RAC: 374
United States
Message 1830915 - Posted: 16 Nov 2016, 21:13:49 UTC - in response to Message 1830913.  

more cpu/gpu cycles for science!

Ed F
ID: 1830915 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830916 - Posted: 16 Nov 2016, 21:14:49 UTC - in response to Message 1830912.  


My original question was about the estimates for the WU's that was displayed in the boinc manager -- task properties -- nn Gflops.

Cause RPC that reports FLOPs back to client deprecated and commented out in our code this estimate has nothing in common with in-app FLOPs counter.
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830916 · Report as offensive
Profile petri33
Volunteer tester

Send message
Joined: 6 Jun 02
Posts: 1668
Credit: 623,086,772
RAC: 156
Finland
Message 1830917 - Posted: 16 Nov 2016, 21:16:12 UTC - in response to Message 1830914.  

Thank You Sir. *nods*
To overcome Heisenbergs:
"You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones
ID: 1830917 · Report as offensive
Profile Raistmer
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 16 Jun 01
Posts: 6325
Credit: 106,370,077
RAC: 121
Russia
Message 1830920 - Posted: 16 Nov 2016, 21:22:00 UTC - in response to Message 1830917.  
Last modified: 16 Nov 2016, 21:23:18 UTC

Thank You Sir. *nods*

:D

And for the record I plan to replace all these
progress += SpikeProgressUnits(fftlen) * ProgressUnitSize/NumFfts;
With progress based on icfft/cfft_num value.
Of course progress isn't linear by icfft vs elapsed time, but those *units were devised for CPU code anyway so don't actually linearise GPU progress.
Will save few CPU cycles too (and simplify % done handling).
SETI apps news
We're not gonna fight them. We're gonna transcend them.
ID: 1830920 · Report as offensive
Previous · 1 · 2 · 3 · Next

Message boards : Number crunching : Gflop estimates?


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.