Open computablee opened 11 months ago
Identify the function(s) which are causing performance issues.
The tasking API as it stands has some performance bottlenecks. A good look should be taken to see what kind of performance we can squeeze out of it.
Provide example code.
An example which puts lots of stress on the tasking system, showing its shortcomings:
DotMP.Parallel.ParallelMaster(() => { var tl1 = DotMP.Parallel.Taskloop(0, 1_000_000, grainsize: 1, action: i => { }); var tl2 = DotMP.Parallel.Taskloop(0, 1_000_000, grainsize: 1, deps: tl1, action: i => { }); });
This not only takes a massive amount of memory, but also is excruciatingly slow as task dependency resolution is not very optimized right now.
Identify the function(s) which are causing performance issues.
The tasking API as it stands has some performance bottlenecks. A good look should be taken to see what kind of performance we can squeeze out of it.
Provide example code.
An example which puts lots of stress on the tasking system, showing its shortcomings:
This not only takes a massive amount of memory, but also is excruciatingly slow as task dependency resolution is not very optimized right now.