aserio changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar.cct.lsu.edu | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | Buildbot: http://rostam.cct.lsu.edu/ | Log: http://irclog.cct.lsu.edu/
jaafar has quit [Ping timeout: 240 seconds]
EverYoung has quit [Ping timeout: 255 seconds]
EverYoun_ has joined #ste||ar
StefanLSU has joined #ste||ar
EverYoun_ has quit [Ping timeout: 255 seconds]
StefanLSU has quit [Quit: StefanLSU]
StefanLSU has joined #ste||ar
StefanLSU has quit [Quit: StefanLSU]
mbremer has joined #ste||ar
vamatya has joined #ste||ar
mbremer has quit [Quit: Page closed]
hkaiser has quit [Quit: bye]
jaafar has joined #ste||ar
AnujSharma has joined #ste||ar
AnujSharma has quit [Ping timeout: 246 seconds]
AnujSharma has joined #ste||ar
jaafar has quit [Ping timeout: 240 seconds]
jbjnr has quit [Remote host closed the connection]
jaafar has joined #ste||ar
Matombo has joined #ste||ar
jaafar has quit [Ping timeout: 240 seconds]
vamatya has quit [Ping timeout: 240 seconds]
mcopik has joined #ste||ar
Matombo has quit [Remote host closed the connection]
<simberg>
hi everyone, i'm going to be working on hpx together with jbjnr
mcopik_ has quit [Ping timeout: 248 seconds]
<heller>
simberg: hi, nice to meet you!
Matombo has joined #ste||ar
<heller>
jbjnr: finally booked my flight
<heller>
jbjnr: i'll arrive wednesday in the evening
<heller>
jbjnr: which hotel do you recommend again?
pree has joined #ste||ar
pree has quit [Ping timeout: 240 seconds]
hkaiser has joined #ste||ar
<jbjnr>
hi simberg I was at lunch.
<jbjnr>
heller: if you can get it, the nioce one by the station is our recommended one
<hkaiser>
jbjnr: did you resolve your hwloc dilemma?
<jbjnr>
I forget the name - hotel continental or something
<jbjnr>
ask heidi if in doubt
<jbjnr>
she can book it for you too. shal I send her an emaila and C you
<jbjnr>
^CC you
<jbjnr>
hkaiser: not really
<jbjnr>
I will use a wrapper, but I'm not very happy about it
<jbjnr>
I think I should make a hwloc_bitmap_t shared pointer wraper and use that
<jbjnr>
butr fortunately we only need it in a few places
<hkaiser>
jbjnr: let's optimize this later, if needed, for now this is the right decision
<jbjnr>
I'm a little disturbed by some of the executors - they hold masks and things too. This ought to be obsolete (hopefully?) with the RP changes
<hkaiser>
and I'd suggest to create a class hwloc_bitmap {}; which handles the memory allocs/deallocs.
<hkaiser>
yes, most of the executors will have to be touched up now
<jbjnr>
ok
pree has joined #ste||ar
<jbjnr>
hkaiser: meet ^simberg^ he is Mikael Simberg. Working at CSCS in the Zurich office and assigned to be an HPX person for the time being.
<hkaiser>
hey Mikael!
<hkaiser>
I'm looking forward to working with you
pree has quit [Ping timeout: 240 seconds]
<simberg>
hi hkaiser, heller: looking forward to working with you too :)
<hkaiser>
simberg: what is it you're interested in working on?
<hkaiser>
darn, need coffee... - brains still sleeps...
<zao>
Asychronous thought, not waking that thread until results are needed.
<simberg>
the idea is that i would continue the work on making hpx a bit more composable (e.g. MPI + HPX) and making it play nicely with fortran code
<hkaiser>
simberg: ahh - very nice - I will have to work on this over the next weeks as well
<hkaiser>
have a concrete project where this is needed
<heller>
jbjnr: thanks!
<hkaiser>
hey heller, you're back !
<heller>
hkaiser: I was never gone :P
<heller>
just silent
<heller>
and joel and michael keep me busy
<jbjnr>
hkaiser: simberg any chance of a skype call on Fri? I will be in the Zurich office with Mikael then - just a quick one to share ideas on where best to focus attention and what we're up to.
<heller>
and the other EU guys...
<heller>
and john
<hkaiser>
jbjnr: travelling on Friday - flying back from Seattle...
<jbjnr>
ok. Thu were available too, but it sounds like you're busy so it can wait.
<hkaiser>
my talk is Thu, but I should be available in the morning (PDT)
<simberg>
hkaiser: nice, would be interested to know more what your use case is
<jbjnr>
it can wait a wee or two. we have the hpx course next week, we'll do it after then
<jbjnr>
^week
<hkaiser>
jbjnr: ok
<heller>
jbjnr: so heidi will book a room for me?
<jbjnr>
simberg: Also get to know zao who builds hpx on strange machines and finds bugs in all our cmake and build setup, and K-ballo who is the one stop shop for all C++/HPX related question :)
<jbjnr>
heller: I'll send an email now
<heller>
thanks!
<jbjnr>
done
pree has joined #ste||ar
pree has quit [Read error: Connection reset by peer]
pree has joined #ste||ar
pree has quit [Read error: Connection reset by peer]
<jbjnr>
heller: the block allocator and block executor. I was puzzled by these cos I didn't understand what they were doing, but finally the penny has dropped and I see that they can launch arrays of tasks on different executors etc. I have been reworking the stream benchmark - as I want to use RP to create one pool per numa domain - but this means the block allocator/executor need a lot of work...
<jbjnr>
...since we need to somehow define pools as targets. What I'm not sure about is the use case for this. The stream benchmark is a very particular example and I'm not sure anyone will ever need the block executor for anything else. Is it worth doing?
<heller>
jbjnr: I wanted to have a take on this
<heller>
jbjnr: the single reason for this kind of executor is to exploit first touch
<heller>
jbjnr: for the stream benchmark, it would get two pool executors
<jbjnr>
it can be used with first touch or other policies. but it breaks the block_allocator use case
<heller>
right
<heller>
so use a different one ;)
<jbjnr>
I got bogged down in the executor traits and stuff and decided to finish other stuff first :)
<heller>
ok
<jbjnr>
I need an epic cholesky plot, then I'll play with this - but I nede the numa allocator for cholesky
<jbjnr>
hence I thought I'd play with stream as well
<heller>
two different use cases I guess
<heller>
when you create the vector, is it on the same numa domain where you want to use it?
<jbjnr>
the $64k question though is - do we really need the block executor? for GPU, ok I can see a case, but for cpu, we're not going to have many use cases for it I do not think
<jbjnr>
^^no
<jbjnr>
anyway ....
<jbjnr>
back to work
<heller>
jbjnr: the block allocator is useful for anything where you want to have a contiguous block of memory, but the placement distributed in this block
<heller>
stencil applications are usually written that way
pree has joined #ste||ar
<heller>
but yes, I see the point
<jbjnr>
"a contiguous block of memory, but the placement distributed in this block" - placement on a page by page basis do you mean? ( we cannot control it manually can we?)
pree has quit [Read error: Connection reset by peer]
<heller>
jbjnr: right, with avoiding to actually figuring out where a page ends etc
<jbjnr>
ok
<jbjnr>
I wasn't sure if there was a single malloc across targets, or one maloc per target. I see that it's one across targets, but the executor can spawn multiple threads across the targets. Still a bit hazy as to what's going on in there
<heller>
yes, very fragile, I am not particularly fond of it either
<heller>
I'd consider it as vintage usage
<heller>
what I'd prefer now is to really have different, and distinct memory blocks
<heller>
how do I get the unused argc and argv again?
pree has joined #ste||ar
pree has quit [Client Quit]
pree has joined #ste||ar
<jbjnr>
do you mean .allow_unregistered in the boost:po
<heller>
no
<heller>
that's working
<heller>
I want to access the ones that have not been consumed now
<jbjnr>
not sure I know anything about that
<heller>
hpx_main(argc, argv) seems to do the job
Matombo has quit [Remote host closed the connection]
<heller>
no it doesn't!
<jbjnr>
what is it you are trying to do?
<heller>
I am trying to init the RP with a special user main
<heller>
which needs to propagate argc argv properly to the application
<jbjnr>
look at the simple_resource_partitioner example
<jbjnr>
it has a few options of its own, then passes stuff on to hpx_init
<jbjnr>
is that what you want?
<hkaiser>
heller: there are a bunch of constructors for the RP
<jbjnr>
"special user main" hmmmm
<jbjnr>
that might not have been implemented
<hkaiser>
if some are missing, add them
<heller>
yes
<heller>
currently there is only the int(*)(variables_map&) overload
<heller>
and I wondered if I could construct the non consumed int argc, char** argv in user code
<jbjnr>
I never had any problems with OTF2 or TAU as I recall. Might be a broken install rule for one of them, but make -k install usually works
<zao>
Oh boy. Score-P pulls in Cube, which pulls in Qt4, which pulls in GLib, which pulls in Python...
<jbjnr>
aha. score-p - that's a really awful one to build
pree has quit [Read error: Connection reset by peer]
eschnett has quit [Quit: eschnett]
aserio has joined #ste||ar
pree has joined #ste||ar
<jbjnr>
heller: for the HPX course would you prefer a reservation on MC nodes (36 cores+HT) or GPU nodes, 12cores+GPU. I don't recall if we planned on demo-ing GPU futures. I lost my notes. I think we said we would.
pree has quit [Read error: Connection reset by peer]
<heller>
jbjnr: yeah, we said we would
<heller>
jbjnr: would also be nice to demo the NUMA stuff though
<jbjnr>
ok
eschnett has joined #ste||ar
<jbjnr>
heller: which numa stuff did you mean?
pree has joined #ste||ar
<jbjnr>
my super fancy new numa stuff with pools etc - or your crappy old stream benchmark?
<heller>
your super fancy new stuff
pree has quit [Read error: Connection reset by peer]
<jbjnr>
\o/
<jbjnr>
better get a working demo then ....
<heller>
sure thing
<jbjnr>
do you have a demo already - you said you were getting good results with 1 pool per domain ...
<jbjnr>
anything simple enough to reuse
<heller>
no, but simple enough to create
pree has joined #ste||ar
<heller>
I am currently jumping in squares
<jbjnr>
is that good or bad?
jaafar has joined #ste||ar
<heller>
jbjnr: for me bad
<heller>
give me until tonight
<jbjnr>
sorry. wasn't trying to pressure you or coerce you into doing it, just wondered if you had a nice demo. I have half finished a new stream benchmark using pools, but it's not GPU compatible
pree has quit [Ping timeout: 240 seconds]
<heller>
jbjnr: I am at a project meeting at the moment. just finished the FETHPC proposal
<heller>
having 6 people constantly wanting something from me
<heller>
now it is better
<jbjnr>
so you went ahead with the proposal. I am jealous.
<heller>
the other guys went ahead
<jbjnr>
you mean FAU pulled out?
pree has joined #ste||ar
ABresting has quit [Quit: Connection closed for inactivity]
pree has quit [Read error: Connection reset by peer]
<heller>
jbjnr: no, we are still in
pree has joined #ste||ar
pree has quit [Read error: Connection reset by peer]
<jbjnr>
Great. Fingers crossed for you.
<heller>
thanks
<heller>
let's talk later
patg[[w]] has joined #ste||ar
jaafar has quit [Ping timeout: 255 seconds]
EverYoung has joined #ste||ar
EverYoung has quit [Remote host closed the connection]
EverYoung has joined #ste||ar
pree has joined #ste||ar
pree has quit [Read error: Connection reset by peer]
AnujSharma has quit [Ping timeout: 248 seconds]
pree has joined #ste||ar
jaafar has joined #ste||ar
rod_t has joined #ste||ar
pree has quit [Read error: Connection reset by peer]
jaafar has quit [Ping timeout: 240 seconds]
<jbjnr>
wasted an hour an "template parameters of a template template argument are inconsistent with other deduced template arguments"
<jbjnr>
grrrrr...
pree has joined #ste||ar
pree has quit [Ping timeout: 240 seconds]
EverYoun_ has joined #ste||ar
EverYoung has quit [Ping timeout: 246 seconds]
harsh has joined #ste||ar
pree has joined #ste||ar
akheir has joined #ste||ar
rod_t has left #ste||ar [#ste||ar]
aserio has quit [Ping timeout: 240 seconds]
pree has quit [Ping timeout: 240 seconds]
aserio has joined #ste||ar
patg[[w]] has quit [Quit: Leaving]
pree has joined #ste||ar
pree has quit [Ping timeout: 260 seconds]
aserio has quit [Ping timeout: 246 seconds]
aserio has joined #ste||ar
pree has joined #ste||ar
rod_t has joined #ste||ar
pree has quit [Ping timeout: 240 seconds]
jaafar has joined #ste||ar
StefanLSU has joined #ste||ar
jaafar has quit [Ping timeout: 240 seconds]
StefanLSU has quit [Quit: StefanLSU]
StefanLSU has joined #ste||ar
aserio1 has joined #ste||ar
aserio has quit [Ping timeout: 240 seconds]
aserio1 is now known as aserio
<jbjnr>
K-ballo: yt? I'm still stuck on my template template param problem and have created a mini test case - (which gives a different compiler error, but maybe its related) - do you have a moment to help please?