title: What are the differences between multi-CPU, multi-core and hyper-thread?
body: <p>Could anyone explain to me the differences between multi-CPU, multi-core, and hyper-thread? I am always confused about these differences, and about the pros/cons of each architecture in different scenarios.</p>
  <p>Here is my current understanding after learning online and learning from others' comments.</p>
  <ol>
  <li>I think hyper-thread is the most inferior technology among them, but cheap. Its main idea is duplicate registers to save context switch time;</li>
  <li>Multi processor is better than hyper-thread, but since different CPUs are on different chips, the communication between different CPUs is of longer latency than multi-core, and using multiple chips, there is more expense and more power consumption than with multi-core;</li>
  <li>multi-core integrates all the CPUs on a single chip, so the latency of communication between different CPUs are greatly reduced compared with multi-processor. Since it uses one single chip to contain all CPUs, it consumer less power and is less expensive than a multi processor system.</li>
  </ol>
  <p>Is this correct?</p>