¿Ubuntu está optimizado para CPU multinúcleo?

33

¿Ubuntu utiliza CPU multinúcleo (como se dice que hace Windows 7)?

En otras palabras, ¿está optimizado para realizar múltiples tareas a fin de que los usuarios se beneficien de los procesadores 4+ core?

Paul
fuente
77
La palabra "optimizado" tiene poco o ningún sentido en este caso. El kernel de Linux admite CPU multinúcleo, por lo que Ubuntu también lo hace. La "optimización" viene dada por el nivel de calidad de este "soporte".
gd1
2
Si desea obtener el mayor rendimiento, es posible que desee ejecutar la versión de 64 bits de Ubuntu, que a veces puede ser más rápida en algunas tareas.
Anónimo el
@ Anónimo ¿No sería esto porque puede utilizar más RAM? 32 bits solo puede usar tantos GB de RAM (incluidas todas las tarjetas de video, etc.) pero necesita CPU y sistemas operativos especiales.
Anonymous Penguin

Respuestas:

45

Sí, Ubuntu está optimizado para CPU multinúcleo y lo ha sido durante muchos años.

Algunos antecedentes :

"La versión 2.0 (del kernel de Linux) se lanzó el 9 de junio de 1996. Hubo 41 lanzamientos en la serie. La característica principal de 2.0 fue la compatibilidad con SMP (es decir, el procesamiento múltiple simétrico en un solo sistema) y la compatibilidad con más tipos de procesadores ".

imbaer
fuente
44
Básicamente Linux tenía SMP antes que el Abacus. Incluso tiene soporte SSMP2, pero nunca sabremos qué es eso hasta que la tecnología se ponga al día con Linux.
Luis Alvarado
¡Por supuesto mejor que Windows! ;)
Paul
2
@ Michael K, para el registro, el kernel de Windows NT ha tenido un buen soporte SMP durante mucho tiempo. Si las aplicaciones son lo suficientemente inteligentes como para aprovechar adecuadamente múltiples procesadores o núcleos es otra cuestión completamente diferente.
Mircea Chirea
25

Ubuntu es un sistema operativo, una distribución de Linux. Un sistema operativo consta de varios componentes de software, como un núcleo, bibliotecas , servicios / demonios, aplicaciones, etc.

Ubuntu usa el kernel de Linux que utiliza multiprocesamiento simétrico (SMP) y múltiples núcleos. Escala muy bien desde sistemas de un solo núcleo de CPU única de gama baja a clústeres de supercomputadora de gama alta con miles de CPU de múltiples núcleos.

Ubuntu viene con cientos de bibliotecas, algunas de las cuales son multihilo y seguras para subprocesos, algunas de las cuales no lo son. En algunos casos tiene sentido que sean multiproceso, en otros no es aplicable, generalmente posible o no tiene mucho sentido.

Ubuntu se entrega con cientos de aplicaciones, algunas están codificadas para hacer uso de CPU de múltiples núcleos, otras no. En algunos casos tiene sentido codificar la aplicación como tal, en otros casos no es posible. No todas las aplicaciones que podrían o deberían hacer uso de múltiples núcleos lo hacen.

Ejemplo: tiene sentido que un juego use múltiples núcleos para gráficos, audio, redes, física, etc. Pero no tiene sentido que una calculadora, herramienta de captura de pantalla, suduko o editor de menús sean conscientes de múltiples núcleos.

Anónimo
fuente
"seguro para el comercio"? ¿Quiso decir hilo seguro?
Flimm
10

El núcleo de Ubuntu soporta múltiples CPU desde hace mucho tiempo, realmente no importa si sus CPU de múltiples núcleos o múltiples en un sistema, se manejarán perfectamente.

Sin embargo, una cosa que debe tener en cuenta, solo porque un sistema tiene soporte para varias CPU / núcleos y están presentes en un sistema, no significa que sus aplicaciones se ejecutarán automáticamente más rápido. Te dicen mucho lo contrario hoy en día, es una cuestión de marketing.

Para que una aplicación aproveche varias CPU / núcleos al mismo tiempo, debe crearse para compartir la carga del proceso sobre esas CPU / núcleos.

Es decir: digamos que está ejecutando algo tan simple como wordpaden Windows y está abriendo un gran archivo de texto con él, el tiempo de carga será el mismo, ya sea que tenga 1 CPU o 1 millón de CPU (para CPU con la misma velocidad de bus y arquitectura similar De c).

Lo mismo ocurre con el kernel de Linux y la distribución de Ubuntu, si una aplicación está construida para un solo hilo, entonces no hay nada más que hagan las CPU.

Una cosa que los sistemas operativos están haciendo hoy en día para optimizar la carga de las aplicaciones en varios CPU / núcleos es la capacidad de ejecutar un proceso en un núcleo que no está tan cargado como el otro, equilibrando así la carga y asegurándose de que sus múltiples núcleos La utilización es óptima. Difícil en la práctica, la utilización de esa técnica solo trae pequeñas mejoras de velocidad.

Si realmente quiere ver brillar sus núcleos, debe estar haciendo una gran utilización de la CPU con programas que admitan el multiprocesamiento simétrico , como la edición de video, etc.

Bruno Pereira
fuente
1

Sí, funciona perfectamente para mí y tengo múltiples procesadores e hiperprocesos, lo que olvidé lo que eso significa, pero estoy bastante seguro de que significa algo acerca de que cada procesador puede ejecutar múltiples subprocesos, lo que combinado con el hecho de que cada procesador tiene 2 núcleos, parece ser un problema. El único problema que he encontrado hasta ahora es que los programas en ubuntu tienden a congelarlo. Hice que eso suceda con menos frecuencia al disminuir el intercambio ya que tengo 6 GB de RAM.

descalzo138
fuente
El comentario que haga sobre los programas que cuelgan podría colocarse mejor en una pregunta al respecto. Si no puede encontrar las preguntas apropiadas sobre programas colgantes, puede formularlas usted mismo y luego responderlas, eso está perfectamente bien en askubuntu. Estoy no sugiere que elimine los comentarios aquí - sólo que se comparte el conocimiento que ha aprendido en algún lugar donde pueda encontrar más fácilmente.
John S Gruber