Saltar al contenido principal

# 2.3: Los segmentos multinúcleo y multiprocesador

$$\newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} }$$

$$\newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}}$$

$$\newcommand{\id}{\mathrm{id}}$$ $$\newcommand{\Span}{\mathrm{span}}$$

( \newcommand{\kernel}{\mathrm{null}\,}\) $$\newcommand{\range}{\mathrm{range}\,}$$

$$\newcommand{\RealPart}{\mathrm{Re}}$$ $$\newcommand{\ImaginaryPart}{\mathrm{Im}}$$

$$\newcommand{\Argument}{\mathrm{Arg}}$$ $$\newcommand{\norm}[1]{\| #1 \|}$$

$$\newcommand{\inner}[2]{\langle #1, #2 \rangle}$$

$$\newcommand{\Span}{\mathrm{span}}$$

$$\newcommand{\id}{\mathrm{id}}$$

$$\newcommand{\Span}{\mathrm{span}}$$

$$\newcommand{\kernel}{\mathrm{null}\,}$$

$$\newcommand{\range}{\mathrm{range}\,}$$

$$\newcommand{\RealPart}{\mathrm{Re}}$$

$$\newcommand{\ImaginaryPart}{\mathrm{Im}}$$

$$\newcommand{\Argument}{\mathrm{Arg}}$$

$$\newcommand{\norm}[1]{\| #1 \|}$$

$$\newcommand{\inner}[2]{\langle #1, #2 \rangle}$$

$$\newcommand{\Span}{\mathrm{span}}$$ $$\newcommand{\AA}{\unicode[.8,0]{x212B}}$$

$$\newcommand{\vectorA}[1]{\vec{#1}} % arrow$$

$$\newcommand{\vectorAt}[1]{\vec{\text{#1}}} % arrow$$

$$\newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} }$$

$$\newcommand{\vectorC}[1]{\textbf{#1}}$$

$$\newcommand{\vectorD}[1]{\overrightarrow{#1}}$$

$$\newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}}$$

$$\newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}}$$

$$\newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} }$$

$$\newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}}$$

$$\newcommand{\avec}{\mathbf a}$$ $$\newcommand{\bvec}{\mathbf b}$$ $$\newcommand{\cvec}{\mathbf c}$$ $$\newcommand{\dvec}{\mathbf d}$$ $$\newcommand{\dtil}{\widetilde{\mathbf d}}$$ $$\newcommand{\evec}{\mathbf e}$$ $$\newcommand{\fvec}{\mathbf f}$$ $$\newcommand{\nvec}{\mathbf n}$$ $$\newcommand{\pvec}{\mathbf p}$$ $$\newcommand{\qvec}{\mathbf q}$$ $$\newcommand{\svec}{\mathbf s}$$ $$\newcommand{\tvec}{\mathbf t}$$ $$\newcommand{\uvec}{\mathbf u}$$ $$\newcommand{\vvec}{\mathbf v}$$ $$\newcommand{\wvec}{\mathbf w}$$ $$\newcommand{\xvec}{\mathbf x}$$ $$\newcommand{\yvec}{\mathbf y}$$ $$\newcommand{\zvec}{\mathbf z}$$ $$\newcommand{\rvec}{\mathbf r}$$ $$\newcommand{\mvec}{\mathbf m}$$ $$\newcommand{\zerovec}{\mathbf 0}$$ $$\newcommand{\onevec}{\mathbf 1}$$ $$\newcommand{\real}{\mathbb R}$$ $$\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}$$ $$\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}$$ $$\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}$$ $$\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}$$ $$\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}$$ $$\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}$$ $$\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}$$ $$\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}$$ $$\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}$$ $$\newcommand{\laspan}[1]{\text{Span}\{#1\}}$$ $$\newcommand{\bcal}{\cal B}$$ $$\newcommand{\ccal}{\cal C}$$ $$\newcommand{\scal}{\cal S}$$ $$\newcommand{\wcal}{\cal W}$$ $$\newcommand{\ecal}{\cal E}$$ $$\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}$$ $$\newcommand{\gray}[1]{\color{gray}{#1}}$$ $$\newcommand{\lgray}[1]{\color{lightgray}{#1}}$$ $$\newcommand{\rank}{\operatorname{rank}}$$ $$\newcommand{\row}{\text{Row}}$$ $$\newcommand{\col}{\text{Col}}$$ $$\renewcommand{\row}{\text{Row}}$$ $$\newcommand{\nul}{\text{Nul}}$$ $$\newcommand{\var}{\text{Var}}$$ $$\newcommand{\corr}{\text{corr}}$$ $$\newcommand{\len}[1]{\left|#1\right|}$$ $$\newcommand{\bbar}{\overline{\bvec}}$$ $$\newcommand{\bhat}{\widehat{\bvec}}$$ $$\newcommand{\bperp}{\bvec^\perp}$$ $$\newcommand{\xhat}{\widehat{\xvec}}$$ $$\newcommand{\vhat}{\widehat{\vvec}}$$ $$\newcommand{\uhat}{\widehat{\uvec}}$$ $$\newcommand{\what}{\widehat{\wvec}}$$ $$\newcommand{\Sighat}{\widehat{\Sigma}}$$ $$\newcommand{\lt}{<}$$ $$\newcommand{\gt}{>}$$ $$\newcommand{\amp}{&}$$ $$\definecolor{fillinmathshade}{gray}{0.9}$$

### Introducción

Esta sección presenta al alumno al multinúcleo y al multiprocesador. También destaca por qué la arquitectura de computadoras se está moviendo hacia la arquitectura multiprocesador

Unidad Central de Procesamiento es lo que normalmente se denomina procesador. Un procesador contiene muchas partes discretas dentro de él, como una o más cachés de memoria para instrucciones y datos, decodificadores de instrucciones y varios tipos de unidades de ejecución para realizar operaciones aritméticas o lógicas.

Multicore: es un tipo de arquitectura donde un solo procesador físico contiene la lógica central de dos o más procesadores.

Una CPU multinúcleo tiene múltiples núcleos de ejecución en una CPU. Esto puede significar cosas diferentes dependiendo de la arquitectura exacta, pero básicamente significa que un cierto subconjunto de los componentes de la CPU está duplicado, de modo que múltiples “núcleos” pueden funcionar en paralelo en operaciones separadas.

Esto se llama CMP, Multiprocesamiento a nivel de chip.

Un sistema multiprocesador contiene más de una CPU de este tipo, lo que les permite trabajar en paralelo. Esto se llama SMP, o Multiprocesamiento simultáneo. Eso es Multi-procesamiento simplemente significa

poner múltiples procesadores en un solo sistema.

Por ejemplo, un procesador multinúcleo puede tener una caché L1 separada y una unidad de ejecución para cada núcleo, mientras que tiene una caché L2 compartida para todo el procesador. Eso significa que si bien el procesador tiene un gran pool de caché más lento, tiene memoria rápida separada y unidades aritméticas/lógicas para cada uno de varios núcleos. Esto permitiría a cada núcleo realizar operaciones al mismo tiempo que los demás.

### Chip de CPU de un solo núcleo

La Figura 1 a continuación ilustra el chip de CPU de un solo núcleo. tiene los archivos de registro de componentes, ALU, interfaz de bus y el bus del sistema. La figura también muestra el núcleo único claramente marcado

Figura 1

### Arquitecturas multi-core

Los núcleos caben en un solo zócalo de procesador, también llamado CMP (Chip Multi-Processor)

### Sistema multinúcleo:

Un sistema multinúcleo generalmente se refiere a un sistema multiprocesador que tiene todos sus procesadores en el mismo chip. También podría referirse a un sistema donde los procesadores están en diferentes chips pero usan el mismo paquete (es decir, un módulo multichip). Los sistemas multinúcleo se desarrollaron principalmente para mejorar el rendimiento del sistema y limitar su consumo de energía. Consiste en

1. Núcleos programables para fines generales,

2. Núcleos aceleradores para fines especiales,

3. Módulos de memoria compartida,

4. NoC (red de interconexión), y

5. Interfaz de E/S.

La figura 2 a continuación ilustra el chip de CPU multinúcleo

Figura 2

En la Figura 2 todos los procesadores están en el mismo chip. Los procesadores multi-core son MIMD, es decir, diferentes núcleos ejecutan diferentes subprocesos (instrucciones múltiples), operando en diferentes partes de la memoria (datos múltiples). También Multi-core es un multiprocesador de memoria compartida, es decir, todos los núcleos comparten la misma memoria

### NB

La razón principal por la cual la arquitectura de computadoras se está moviendo hacia los sistemas multinúcleo es la escalabilidad. Es decir, a medida que aumentamos el número de procesadores para mejorar el rendimiento, los sistemas multinúcleo permiten limitar el consumo de energía y la sobrecarga de comunicación entre procesadores. Un sistema multinúcleo se puede escalar agregando más núcleos de CPU y ajustando la red de interconexión. Se tiene que hacer más trabajo de programación del sistema para poder utilizar los mayores recursos. Una cosa es aumentar el número de recursos de CPU. Es otro ser capaz de agendar todos ellos para realizar tareas útiles.

Multiprocesador. es el uso de dos o más unidades centrales de procesamiento (CPU) dentro de un solo sistema informático.

Un sistema multiprocesador tiene sus procesadores que residen en chips separados y los procesadores están interconectados por un bus de placa base. Se desarrollaron sistemas multiprocesador para mejorar el rendimiento del sistema con poca consideración al consumo de energía. Un sistema multiprocesador tiene un buen rendimiento y sus procesadores constituyentes son procesadores de alto rendimiento.

### Principales diferencias entre sistemas multinúcleo y sistemas multiprocesador:

Las diferencias son las expresadas en la Tabla 4

 Sistema multiprocesador Sistema multinúcleo Nivel de integración Cada procesador en un chip Todos los procesadores en el mismo chip Rendimiento del procesador Alto Bajo Rendimiento del sistema Muy alto Alto Consumo de energía del procesador Alto Bajo Consumo total de energía Relativamente alto Relativamente bajo

### Conclusión

Esta sección introdujo la razón principal por la que la arquitectura de computadoras se está moviendo hacia sistemas multinúcleo que es la escalabilidad. Permite un incremento en el número de procesadores.

Esto ha mejorado el rendimiento, los sistemas multinúcleo permiten limitar el consumo de energía y la sobrecarga de comunicación entre procesadores

### Evaluación

Distinguir las arquitecturas multinúcleo y multiprocesador

Una CPU, o Unidad Central de Procesamiento, es lo que normalmente se denomina procesador. Un procesador contiene muchas partes discretas dentro de él, como una o más cachés de memoria para instrucciones y datos, decodificadores de instrucciones y varios tipos de unidades de ejecución para realizar operaciones aritméticas o lógicas.

Un sistema multiprocesador contiene más de una CPU de este tipo, lo que les permite trabajar en paralelo. Esto se llama SMP, o Multiprocesamiento simultáneo.

Una CPU multinúcleo tiene múltiples núcleos de ejecución en una CPU. Ahora bien, esto puede significar cosas diferentes dependiendo de la arquitectura exacta, pero básicamente significa que un cierto subconjunto de los componentes de la CPU está duplicado, de modo que múltiples “núcleos” pueden funcionar en paralelo en operaciones separadas.

Esto se llama CMP, Multiprocesamiento a nivel de chip.

This page titled 2.3: Los segmentos multinúcleo y multiprocesador is shared under a CC BY-SA license and was authored, remixed, and/or curated by Harrison Njoroge (African Virtual University) .