2011-05-19 26 views
7

Estoy haciendo algunas pruebas en un servidor Linux y necesito que el servidor tenga una carga pesada. Me preguntaba cómo simularía esto? En este momento, el servidor sube a 20% de CPU pero necesito forzarlo a aproximadamente 80% y hacer algunas pruebas para ver cómo funciona.Poner el servidor en carga pesada para la prueba

Respuesta

11

Si desea forzar la ocupación de la CPU, intente lo siguiente:

for cpu in 1 2 ; do 
    (while true; do true; done) & 
done 

Si desea simualte cargo IO también, tratar con esto:

for cpu in 1 2 ; do 
    (while true; do find/-type f -exec cp {} /dev/null \; ; done) & 
done 

con for cpu in 1 2 de 2 núcleos, for cpu in 1 2 3 4 de 4 núcleos;)

+0

I' Supongo que esto hace algo de búsqueda o algo en dev/null? – unleashed

+1

el comando 'find' con esos argumentos está copiando cada archivo en el sistema de archivos a'/dev/null', por lo que genera mucho IO como dijo @ Cédric. –

+0

Sin duda funciona aunque estoy un poco preocupado con la copia de archivos a/dev/null. Los archivos en realidad no se almacenan permanentemente en/dev/null ¿no? – unleashed

2

Si está buscando generar el uso de la CPU, entonces tiene que elegir comandos, que son intensivos en la CPU. Por ejemplo, números aleatorios de generación.

Prueba esto:

dd if=/dev/urandom of=/dev/null 

Añadir el de los de línea para cada núcleo de CPU. Si usted tiene una CPU uso de doble núcleo:

dd if=/dev/urandom of=/dev/null & 
dd if=/dev/urandom of=/dev/null & 

Comprobar los puestos de trabajo con

jobs 

poner fin a los trabajos con kill %1 (donde% 1 es el número de trabajo 1)

Cuestiones relacionadas