@TheRift
Yes definitely mainstream. In fact 3D rendering in itself is a parallel processing problem to begin with, while it can be serialised the amount of time it would have taken to render anything useful would make it worthless. I'm talking 3D as we know it today not the 80s stuff that was in the early works from Lucas films etc... (excluding scientific computing as well)
For the longest time we dealt with 3D on the host processor which by virtue of the CPU being serial in nature meant we made parallel the rendering through SIMD instruction sets, especially when MMX came around in 1995/96 as you know. Even after the first commercially available 3D accelerator for end users was available it was not until 1999 or so when the true divergence came as prior to this our beloved 3D accelerators were really acting like co-processors that were very efficient at texture operations, from addressing to filtering/blend texture mip-mapping etc...
The difficult part or the part that really needed to be lifted of the CPU was the triangle setup, which was still done on the CPU. In nature a very parallel process and as a result -besides the obvious fill-rate and bandwidth issues faced by early accelerators - CPU dependency was heavy and CPUs with strong FPU were at a significant advantage.
what really revolutionized this for us and allowed the parallel nature of GPUs to accelerate faster than what CPUs could was the triangle and lighting setup moving to the GPU and subsequently needing to be programmable (limited, but definitely not fixed input->output). Being able to do virtually all vertex processing on the GPU in the fixed function unit allowed us, vertex lighting in hardware, texture fetches, addressing, vertex morphing and just about anything we were able to do on the host CPU in regards to vertices (well in a limited manner but basics could be done) significantly faster.
With each passing, generation and increased complexity with the vertex shader etc... We could pretty much do anything on the GPU that we could on the CPU, and that means we can leverage the vertex processing power of the CPU as well in tandem with the GPU to further bolster processing. No doubt the Cell lends itself to some heavy primitive lifting with the vector cores before passing them on to the 8 dedicated vertex processors in the RSX. Guessing here but one would expect the most complex, manipulation is done on the RSX where then the slightly less convoluted results or meshes are passed to the RSX.
Either way, multi-ore processing whichever way is here to stay and I can imagine a time where the number of processing cores is in the thousands if not hundreds of thousands. (Who knows what may be here 50 years from now) : D
Yes definitely mainstream. In fact 3D rendering in itself is a parallel processing problem to begin with, while it can be serialised the amount of time it would have taken to render anything useful would make it worthless. I'm talking 3D as we know it today not the 80s stuff that was in the early works from Lucas films etc... (excluding scientific computing as well)
For the longest time we dealt with 3D on the host processor which by virtue of the CPU being serial in nature meant we made parallel the rendering through SIMD instruction sets, especially when MMX came around in 1995/96 as you know. Even after the first commercially available 3D accelerator for end users was available it was not until 1999 or so when the true divergence came as prior to this our beloved 3D accelerators were really acting like co-processors that were very efficient at texture operations, from addressing to filtering/blend texture mip-mapping etc...
The difficult part or the part that really needed to be lifted of the CPU was the triangle setup, which was still done on the CPU. In nature a very parallel process and as a result -besides the obvious fill-rate and bandwidth issues faced by early accelerators - CPU dependency was heavy and CPUs with strong FPU were at a significant advantage.
what really revolutionized this for us and allowed the parallel nature of GPUs to accelerate faster than what CPUs could was the triangle and lighting setup moving to the GPU and subsequently needing to be programmable (limited, but definitely not fixed input->output). Being able to do virtually all vertex processing on the GPU in the fixed function unit allowed us, vertex lighting in hardware, texture fetches, addressing, vertex morphing and just about anything we were able to do on the host CPU in regards to vertices (well in a limited manner but basics could be done) significantly faster.
With each passing, generation and increased complexity with the vertex shader etc... We could pretty much do anything on the GPU that we could on the CPU, and that means we can leverage the vertex processing power of the CPU as well in tandem with the GPU to further bolster processing. No doubt the Cell lends itself to some heavy primitive lifting with the vector cores before passing them on to the 8 dedicated vertex processors in the RSX. Guessing here but one would expect the most complex, manipulation is done on the RSX where then the slightly less convoluted results or meshes are passed to the RSX.
Either way, multi-ore processing whichever way is here to stay and I can imagine a time where the number of processing cores is in the thousands if not hundreds of thousands. (Who knows what may be here 50 years from now) : D