Ok, let’s go off-topic now:
I’ve written a demo using the River Trail functionality that plots the Mandelbrot set in both sequential and parallel calculation modes in order for you to see the performance improvements that are possible. The performance improvements you see will be roughly a factor of the number of CPU cores available on your computer. For instance, I have 8 cores on my MacBook Pro; therefore, I see approximately an 8-fold performance increase.
A word of caution though about parallel processing…
- Don’t drink too much parallel processing Kool Aid here! There is no software (and never will be) that can magically “parallelise” your sequentially written code. If someone tells you there is, then you can be certain they don’t know what they’re talking about!
- Parallel processing is not “a clever way to run my existing code faster”; it’s a completely new design paradigm that demands a whole new way of thinking (and that’s the painful part).
- In order to take advantage of the processing power of multi-core CPU, you must write software that specifically focuses on solving the problem in parallel manner. This style of coding is much closer to functional programming than the more traditional imperative style of coding currently used in almost all of SAP’s business software.
And about River Trail…
- River Trail is shipped as an extension to Firefox. Therefore, this functionality is only available if you are using an up to date version of Firefox.
- All users must install the River Trail extension for Firefox. Choose the latest version available here.
- For Windows users, you must additionally install Intel’s OpenCL SDK, otherwise the River Trail compiler will fail.
- You can view the demo using other browsers, but the coding will only run in sequential mode; therefore, no performance difference will be visible.
To avoid disappointment, please follow the setup instructions.
There is also a full discussion of the approach used to write parallel software, the coding used to implement this demo and of course, the demo itself.
Have fun, and I hope thinking in parallel doesn’t hurt your brain too much…