What is a multicore processor and a manycore processor?

Multicore

One processor with two or more independent cores. The cores read and execute ordinary CPU instructions (add, move, branch) at the same time, which helps programs that can run in parallel.

Examples from the original note: AMD A-Series, Athlon II, FX-Series, Phenom, and EPYC; IBM POWER4, POWER5, and POWER6; Intel Core 2 Duo, Core i3, Core i5, and Core i7.

Manycore

A specialist multicore design for a high degree of parallel work, with a large number of simpler cores (tens, hundreds, or thousands). Used in embedded systems and high-performance computing.

Examples from the original note: the Sunway TaihuLight supercomputer, GPUs, Intel Xeon Phi, Tilera, and the Teraflops Research Chip.

Archive note, October 2017. Newer writing here is on VMware Cloud Foundation, Avi, and NSX.

Difference between a CPU and a GPU

A CPU is a general-purpose processor. It can in principle do any computation, but not always in the best way for that computation. You can do graphics on a CPU. A GPU built for the job will usually finish sooner.

A GPU is a special-purpose processor, tuned for the calculations computer graphics repeat, especially SIMD work.

MIMD, the shape associated here with the CPU

Many actions happen at once on many pieces of data. Adding and multiplying at the same time to solve a problem with separate parts is the example used in the original note. The work may or may not be synchronized. MIMD is used when an algorithm splits into independent parts and each part goes to a different processor.

SIMD, the shape associated here with the GPU

One identical action runs at the same time on many pieces of data: retrieve, calculate, or store. Fetching multiple files at once is the example used in the original note. Processors with their own local data execute the same instruction in step, and they communicate to shift work around. SIMD is used when a lot of computation is the same operation done in parallel.

Archive note, October 2017. Newer writing here is on VMware Cloud Foundation, Avi, and NSX.