Multicore Processors - Parallel Threading - Virtual-Cloud Computing?
I have a feeling that current developments at the physical CPU level may muddy the waters further for cloud computing. There is a an ongoing tendency in CPU design to each CPU having multiple cores. In this case there will be fewer physical CPU's in a physical server, each one having multiple cores. The reason I am repeating the word "physical" here because in both cloud computing and virtual server environments, such as VM Ware, we have no access to nor any knowledge of the physical CPU's.
There is a major difference between how threads behave between multiple processors and less processors with multiple cores. In the latter case, multiple cores, we are dealing with parallelism in the architecture. At present neither Java nor .NET can take full advantage of this powerful feature. However in Java 7 and .NET4 the capability to take advantage of parallel architecture will be available. Neither .NET nor Java is currently efficient when parallel architectures are used. Because parallel architectures require more memory resources than serial architectures.
I think this adds to my already growing concern that we are giving away many of the incredible features of 64-bit systems by using virtual servers and/or cloud computing. My thought is that this move to parallel architectures, which is almost upon us, might be limiting to us if we are using either virtual or cloud computing resources.
Once again, I am asking if anyone out there has any thoughts? I would be particularly interested in comments from a virtual or cloud computing vendor.