Multicore systems are ubiquitous; it’s virtually impossible to buy even commodity computers without a dual, quad, or hex-core processor. It won’t be long before many-core processors start to be prevalent as well. Each core in a multicore processor is capable of executing a program, so a quad-core processor can run four separate programs at the same time. That’s great if you have many different programs you need to run at one time, but can become a problem when you need performance from a single program. Those four cores can also potentially run one program faster than a single core processor would, but only if the program is written correctly. If you run a sequential (or serial) program written for single core architectures on a multicore platform, it will generally only be able to leverage a single core. Serial programs don’t run any faster, and may even run slightly slower, on multicore processors.
Continue Reading Here