This probably qualifies as blog spam... but I think some of you may find it interesting.
I just made a performance evaluation of different approaches to loop parallelism in a render loop. By "loop parallelism" I mean splitting a loop operation in two smaller loops, as long as they don't interfere with each other, and run them in two separate threads, then join them until both finish.
It's an interesting optimization because it has 0 implication on the exterior of the threaded function, and the thread is temporary/disposable. So, instant performance boost, no concurrency checks,... what's the catch?
I thought there
was a catch, but there isn't. Turns out it's a good idea and you don't have to make your own code to bypass performance issues. The simplest, plain old .NET implementation is the fastest.
http://www.theinstructionlimit.com/?p=49If you think I should shut up about my blog on the forums, do tell.
