hkaiser 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/
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo force-pushed function-storage from 0f35708 to 8f2ef3d: https://github.com/STEllAR-GROUP/hpx/commits/function-storage
<ste||ar-github> hpx/function-storage 8f2ef3d Agustin K-ballo Berge: (draft) Reuse function storage
ste||ar-github has left #ste||ar [#ste||ar]
mcopik has joined #ste||ar
hkaiser has quit [Quit: bye]
hkaiser has joined #ste||ar
K-ballo has quit [Quit: K-ballo]
hkaiser has quit [Client Quit]
jaafar has quit [Read error: No route to host]
nikunj has quit [Ping timeout: 252 seconds]
nikunj has joined #ste||ar
nanashi55 has quit [Ping timeout: 272 seconds]
nanashi55 has joined #ste||ar
nikunj has quit [Ping timeout: 246 seconds]
nikunj has joined #ste||ar
nikunj has quit [Ping timeout: 240 seconds]
nanashi55 has quit [Ping timeout: 245 seconds]
nikunj97 has joined #ste||ar
nikunj1997 has joined #ste||ar
nikunj97 has quit [Ping timeout: 268 seconds]
<heller_> It's over!
nanashi55 has joined #ste||ar
<simbergm> Well done heller_!
<heller_> *phew*
<heller_> simbergm: we should talk next week ;)
<zao> \o/
<simbergm> heller_ I know, sorry that it's taking so long :(
nikunj1997 has quit [Ping timeout: 250 seconds]
nikunj has joined #ste||ar
nikunj97 has joined #ste||ar
nikunj has quit [Ping timeout: 240 seconds]
nikunj97 has quit [Ping timeout: 268 seconds]
nikunj has joined #ste||ar
mcopik has quit [Ping timeout: 240 seconds]
nikunj has quit [Ping timeout: 240 seconds]
jaafar has joined #ste||ar
K-ballo has joined #ste||ar
hkaiser has joined #ste||ar
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo created function-empty (+2 new commits): https://github.com/STEllAR-GROUP/hpx/compare/9c2d0843cf3d^...2950ed75ea1b
<ste||ar-github> hpx/function-empty 9c2d084 Agustin K-ballo Berge: Make empty function non-dependent
<ste||ar-github> hpx/function-empty 2950ed7 Agustin K-ballo Berge: Move throw_bad_function_call to source file
ste||ar-github has left #ste||ar [#ste||ar]
jaafar has quit [Read error: No route to host]
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo force-pushed function-storage from 8f2ef3d to 7055ba4: https://github.com/STEllAR-GROUP/hpx/commits/function-storage
<ste||ar-github> hpx/function-storage 7055ba4 Agustin K-ballo Berge: Reuse function storage
ste||ar-github has left #ste||ar [#ste||ar]
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo force-pushed function-empty from 2950ed7 to 72d4ca4: https://github.com/STEllAR-GROUP/hpx/commits/function-empty
<ste||ar-github> hpx/function-empty 6a8ff94 Agustin K-ballo Berge: Make empty function non-dependent
<ste||ar-github> hpx/function-empty 72d4ca4 Agustin K-ballo Berge: Move throw_bad_function_call to source file
ste||ar-github has left #ste||ar [#ste||ar]
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo pushed 1 new commit to function-empty: https://github.com/STEllAR-GROUP/hpx/commit/497102b70607acdfe98f0b55b06ea55f0280d6fb
<ste||ar-github> hpx/function-empty 497102b Agustin K-ballo Berge: Remove vtable empty flag
ste||ar-github has left #ste||ar [#ste||ar]
ste||ar-github has joined #ste||ar
<ste||ar-github> [hpx] K-ballo force-pushed function-storage from 7055ba4 to 9732850: https://github.com/STEllAR-GROUP/hpx/commits/function-storage
<ste||ar-github> hpx/function-storage 9732850 Agustin K-ballo Berge: Reuse function storage
ste||ar-github has left #ste||ar [#ste||ar]
Vir has joined #ste||ar
diehlpk_mobile has joined #ste||ar
diehlpk_mobile has quit [Ping timeout: 276 seconds]
__ASamir__ has joined #ste||ar
<__ASamir__> Hello guys, I have a question regarding the mutex and the scheduling. Anybody can help?
<zao> I probably can't, but I'd recommend asking your question :)
<zao> If you hang around, chances are that it'll get answered.
<__ASamir__> OK :) so, with the normal mutex when processes try to acquire a locked mutex, they are blocked and when the lock is released the scheduler unblocks the first waiting process from the queue. This is the normal situation. But here in HPX how is that handled? How is the distributed scheduler is implemented and how does it deal with mutex locks?
<zao> Whenever you block on a HPX primitive that's not ready, the scheduler will be involved and run something that's ready.
<zao> Mechanically, it swaps out the running state of the thread-of-execution, as each task has its own wee little stack and context.
<zao> Control will return to the original HPX task when it's readied at some time in the future.
<zao> Important for all this to work is that you don't use OS thread primitives like mutexes, as they'll block the whole OS thread-of-execution, preventing any HPX progress to be made in that particular one.
<zao> Does this make sense?
<zao> (some of the above may be a bit wrong, I haven't used HPX much)
<__ASamir__> Does the mutex works only with the OS threads?
<__ASamir__> It doesn't work with hpx threads?
<__ASamir__> As far as I know is that there is a scheduling on the level of the hpx threads. so that if one hpx thread is blocked, the OS thread is not blocked
<zao> HPX tasks are scheduled co-operatively whenever they would block.
<zao> HPX has a bunch of OS threads that it runs HPX tasks on, and it's important to keep those threads from blocking on non-HPX functions.
<zao> An OS mutex would "work" inside a HPX task, but it would completely halt any HPX progress on that thread and prevent that task from being scheduled anywhere else.
<__ASamir__> Aha I got it. Thank you
nanashi55 has quit [Ping timeout: 244 seconds]
nanashi55 has joined #ste||ar
jaafar has joined #ste||ar
__ASamir__ has quit [Ping timeout: 256 seconds]