Also, have a look at this thread http://stackoverflow.com/questions/12093053/concurrent-mutable-priority-queue A lockfree/concurrent priority queue would be extremely useful too.
(NB. We already make use of boost::lockfree classes) JB From: <[email protected]> on behalf of John Biddiscombe <[email protected]> Reply-To: "[email protected]" <[email protected]> Date: Wednesday, 1 March 2017 at 14:49 To: "[email protected]" <[email protected]> Subject: [hpx-users] FW: Help for GSoC Project on Concurrent data structures support I’m forwarding this email to the list just to keep other informed of the discussion From: Biddiscombe, John A. Sent: 01 March 2017 09:32 To: 'SATYADEV CHANDAK' Subject: RE: Help for GSoC Project on Concurrent data structures support Satyadev How familiar are you with concurrent containers? If you know the basics, then I’d suggest taking a look at the concurrent data structures branch of hpx https://github.com/STEllAR-GROUP/hpx/tree/concurrent_data_structures/hpx/concurrent and examining the small amount of work that has been started. also, see https://github.com/STEllAR-GROUP/hpx/blob/master/plugins/parcelport/verbs/unordered_map.hpp https://github.com/STEllAR-GROUP/hpx/blob/master/plugins/parcelport/verbs/readers_writers_mutex.hpp (newer versions of stuff in the concurrent branch) That I have been working on more recently. They are nasty because they just use a normal map and a lock around it, with the bonus that the lock is a readers/writer lock so you can concurrently have N readers or 1 writer (great if the map is only modified rarely, but accessed frequently). The ability for the user to take a lock before iterating is also included. The readers/writers mutex is hand rolled from some code off the web, but we really should use std:: shared lock for readers and upgrade lock to exclusive etc for writer. You should have a look at the concurrent vector, and think about how to improve it. We really need vector, map (+ set less important) to be properly concurrent if possible, and they need unit tests and integration into the main branch of HPX. Have a look at the material and reading about concurrent structures on the web. Then you need a plan of where to start what to do how to do it what are the objectives that kind of thing I’m a bit busy today and on vacation for a few days after this, but send more questions if you have them and I’ll answer when I can yours JB -- John Biddiscombe, email:biddisco @.at.@ cscs.ch http://www.cscs.ch/ CSCS, Swiss National Supercomputing Centre | Tel: +41 (91) 610.82.07 Via Trevano 131, 6900 Lugano, Switzerland | Fax: +41 (91) 610.82.82 From: SATYADEV CHANDAK [mailto:[email protected]] Sent: 01 March 2017 05:43 To: Biddiscombe, John A. Subject: Help for GSoC Project on Concurrent data structures support Hi Sir. I am willing to work on Concurrent data structures support project by STE||AR group for GSoC. Can you please give me some tasks that will help me in writing a better proposal for the project ? Thanks in advance :) Thanks and Regards Satyadev Chandak.
_______________________________________________ hpx-users mailing list [email protected] https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
