There is no reason why 'foreach' or 'collect' cannot use other processors While it sounds like a good idea, 'foreach' loops often collect the value for each into a single instance variable to get a sum, or similar compilation of the contents of the array. If the cycles were to run at the same time, the second iteration of the loop would not have the data from the first to append to.
I do believe that parallel processing could be used to improve the speed of 3d rendering and particle simulations though, and that is reason enough to be optimistic about it.
More like 220Ghz with a nice graphene Intel Penryn chip which may even be possible if Intel bought out a couple of scotch tape and #2 pencil factories. http://www.nytimes.com/2007/04/10/science/10grap.html?_r=1&ref=science&oref=slogin
I do believe that parallel processing could be used to improve the speed of 3d rendering and particle simulations though, and that is reason enough to be optimistic about it.