Whilst working with .NET 4 parallel extensions I often find the need to extend the framework to assist me in various day to day tasks. I’ve finally got around to compiling a library of such extensions.
The extensions include the following
- Set Process Affinity, so I can see how my algorithm scales on a different number of cores. Will select non hyperthreaded cores first.
- Determine the number of Real cores, not including hyperthreading ones.
- A Range type that supports the partitioning of a range so that I can farm sub ranges out to different tasks
- A Sequence class for building non integer parallel loops or loops with steps other than 1
- Finally a simplified way to handle aggregated exceptions.
You can download the library from here
Its a Visual Studio 2010 project, containing the library and a unit test project which should provide enough insight to how the library works.
Im very keen to know what people think of the aggregate exception handling.