hkaiser changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar-group.org | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | This channel is logged: irclog.cct.lsu.edu
K-ballo has quit [Ping timeout: 264 seconds]
K-ballo has joined #ste||ar
Yorlik__ has joined #ste||ar
Yorlik_ has quit [Ping timeout: 264 seconds]
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 265 seconds]
K-ballo1 is now known as K-ballo
hkaiser has quit [Quit: Bye!]
tufei_ has quit [Remote host closed the connection]
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 264 seconds]
K-ballo1 is now known as K-ballo
Yorlik_ has joined #ste||ar
Yorlik__ has quit [Ping timeout: 265 seconds]
hkaiser has joined #ste||ar
hkaiser has quit [Quit: Bye!]
diehlpk_work has joined #ste||ar
hkaiser has joined #ste||ar
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 260 seconds]
K-ballo1 is now known as K-ballo
<pansysk75[m]>
hkaiser In HPX, is work-stealing between threads possible while I'm still in the middle of scheduling tasks?
<pansysk75[m]>
For example, I have 20 tasks that I want to distribute to 4 cores. I want tasks 0,1,2,3,4 to be scheduled on core 0, so I start scheduling with the appropriate thread_placement_hint. Is it possible that, lets say, core 1 comes along and steals some task, before I get the opportunity to explicitly give that core its share of work?
<hkaiser>
pansysk75[m]: no
<hkaiser>
HPX scheduling is cooperative
<hkaiser>
workstealing might happen only if an HPX thread is suspended
<hkaiser>
it can also happen before the thread starts running
<hkaiser>
but while it runs it will not move to a different core
<satacker[m]>
A related question - Also, since linux kernel mostly has minimal differentiation for processes and threads (as they have been created using clone call), do we use anything different for windows (or even linux) to make them more faster?
<hkaiser>
satacker[m]: no, we use kernel threads (std::thread)
<hkaiser>
on linux thats pthreads, on Windows it's whatever they call theirs