multi-CPU, multi-core e hiperproceso

¿Alguien podría recomendarme algunos documentos para ilustrar las diferencias entre multi-CPU, multi-core e hyper-thread? Siempre estoy confundido acerca de estas diferencias y sobre los pros / contras de cada arquitectura en diferentes escenarios. EDITAR: aquí está mi comprensión actual...