computablee / DotMP

A collection of powerful abstractions for parallel programming in .NET with an OpenMP-like API.
https://computablee.github.io/DotMP/
GNU Lesser General Public License v2.1
29 stars 8 forks source link

Lock-free `Schedule.Dynamic` and `Schedule.Guided` #46

Closed computablee closed 11 months ago

computablee commented 1 year ago

The current schedulers for dynamic and guided scheduling as found in Iter.cs use mutual exclusion to ensure that race conditions don't occur. I have thought about ways to implement lock-free scheduling via clever use of atomics and rollback, but to be quite honest I've never been great at lock-free algorithms. With hacktoberfest coming up, this would be an excellent first issue for someone not super familiar with DotMP or C#, but with lots of parallel programming experience.

Thehackerash commented 11 months ago

please assign this issue to me

computablee commented 11 months ago

Sure, assigned.

computablee commented 11 months ago

@Thehackerash Any updates? I am starting to prepare for the next release of DotMP, and would like to know if you are working on this or if I should open up the issue for reassignment.