hpx icon indicating copy to clipboard operation
hpx copied to clipboard

Implement P2079 for HPX (System execution context)

Open hkaiser opened this issue 11 months ago • 5 comments

See: wg21.link/p2079

hkaiser avatar Jan 14 '25 12:01 hkaiser

Hi @hkaiser,

I’m interested in contributing to HPX for GSoC and found this issue intriguing. I have been learning HPX and parallel computing, and I would like to work on implementing P2079 for the system execution context. Could you provide some guidance on where to start and any specific areas I should focus on?

Looking forward to your suggestions.

charan-003 avatar Feb 13 '25 02:02 charan-003

Hi @hkaiser,

I’m interested in contributing to HPX for GSoC and found this issue intriguing. I have been learning HPX and parallel computing, and I would like to work on implementing P2079 for the system execution context. Could you provide some guidance on where to start and any specific areas I should focus on?

Looking forward to your suggestions.

Well first of all you will have to look into sender/receivers in order to understand the context. Then, looking into HPX and how we integrated S&R with it, would be the next step.

hkaiser avatar Feb 13 '25 14:02 hkaiser

hello @hkaiser I’m planning to implement P2079 by creating hpx::parallel_scheduler to wrap hpx::threads, with a schedule() returning a sender, tying into HPX’s sender/receiver model. Does that sound good?

charan-003 avatar Mar 26 '25 22:03 charan-003

For tests, should I start fresh or extend existing ones? Any specific scheduler code I should look at? Thanks!

charan-003 avatar Mar 26 '25 22:03 charan-003

I’m planning to implement P2079 by creating hpx::parallel_scheduler to wrap hpx::threads, with a schedule() returning a sender, tying into HPX’s sender/receiver model.

@charan-003 Here are the currently existing schedulers:

https://github.com/STEllAR-GROUP/hpx/blob/master/libs/core/execution/include/hpx/execution/algorithms/run_loop.hpp https://github.com/STEllAR-GROUP/hpx/blob/master/libs/core/executors/include/hpx/executors/thread_pool_scheduler.hpp https://github.com/STEllAR-GROUP/hpx/blob/master/libs/core/executors/include/hpx/executors/thread_pool_scheduler_bulk.hpp

For tests, should I start fresh or extend existing ones?

I'd leave that up to you.

hkaiser avatar Mar 27 '25 00:03 hkaiser