.net will dive into parallelism

According to Soma .net will push for parallelism. This is hardly a surprise as multicore CPUs and multi CPUs are becoming mainstream. Microsoft Research has already some projects that explore the area (Acceleratortechnical report, C Omega, Polyphonic C#, …). But wait, one can already utilize multicore by using threads in a way or another, why would you need additional support? Right, one can use threading, however threading and synchronization is hard to manage and do properly, specially when project grows. Furthermore there is no GPU programming support (besides using it for graphics). That’s why [MS] will push for easier and more powerful parallelism.

What about side effects – is it wise to give such a powerful feature in hands of unskilled developers? Imagine a developer who heard that parallelism will speed up the application and so he starts using parallelism for everything. IOW .net is a tool, more and more powerful, but only in hands of a skilled developer who knows how to use it – and opposite is also true, unskilled one can now create a huge mess faster and easier. I am not saying that there shouldn’t be implemented, just that developers should use it wisely as any other tool. It is no magic wand.

Anyway, be prepared to start thinking in parallel – you won’t escape it in near future.

One thought on “.net will dive into parallelism

Leave a Reply