2008-09-26 24 views

Répondre

15

C'est exactement ce dont vous avez besoin: http://weather.ou.edu/~apw/projects/stress/

la page d'accueil. « le stress est un simple générateur de charge de travail pour les systèmes POSIX Il impose une quantité configurable de CPU, mémoire, I/O, et le stress disque sur le système, il est écrit en C, et est un logiciel libre sous licence GPL. "

+0

Cela a fonctionné parfaitement pour moi dans un environnement virtuel. – Tim

+0

Le lien ci-dessus ne fonctionne pas. Trouvé ici: http://people.seas.harvard.edu/~apw/stress/ –

0

Vous pouvez probablement utiliser un outil de génération de charge pour ce faire, ou exécuter un script pour prendre tous les cycles CPU, puis utiliser nice et renice sur le processus pour faire varier le pourcentage de cycles que le processus obtient.

Voici un exemple de script bash qui occupera tous les cycles libres CPU:

#!/bin/bash 
while true ; do 
true 
done 
+0

ou directement à partir d'un terminal vous pouvez taper: while true; fais vrai; done – Jesse

+0

Cela va charger un CPU à 100% CPU mais gentil et renice ne permettra pas de régler cette charge, seulement pour le pondérer avec des processus concurrents, le cas échéant. – jlliagre

1

Une façon courante d'obtenir une charge sur un système de compiler un gros paquet de logiciels encore et encore. Quelque chose comme le noyau Linux.

Obtenez une copie du code source, extrayez le tar.bz2, allez dans le répertoire source de premier niveau, copiez votre configuration du noyau depuis/boot vers .config ou zcat /proc/config.gz> .config, le do make oldconfig, alors que c'est vrai; faire propre & & make bzImage; done

Si vous avez un système SMP, alors make -j bzImage est amusant, il fera apparaître les tâches en parallèle.

Un problème avec ceci est le réglage de la charge du processeur. Il s'agira d'une charge CPU maximale, sauf en cas d'attente sur les E/S disque.

2

Trouvez un programme simple de recherche de nombres premiers ayant un code source. Modifiez le code source pour ajouter un appel nanosleep à la boucle principale avec le délai qui vous donne la charge CPU souhaitée.

1

Cela dépend vraiment de ce que vous essayez de tester. Si vous ne faites que tester la charge du processeur, des scripts simples pour manger des cycles CPU vides fonctionneront correctement. Personnellement, j'ai dû tester la performance d'une matrice RAID récemment et je me suis appuyé sur Bonnie ++ et IOZone. IOZone va mettre une charge décente sur la boîte, en particulier si vous définissez la taille du fichier plus élevé que la RAM. Vous pouvez également être intéressé par this Article.

1

Vous pouvez éventuellement faire cela en utilisant un script Bash. Utilisez "ps -o pcpu | grep -v CPU" pour obtenir l'utilisation du processeur de tous les processus. Ajoutez toutes ces valeurs ensemble pour obtenir l'utilisation actuelle. Ensuite, ayez une boucle while busy qui vérifie essentiellement ces valeurs, détermine l'utilisation actuelle du CPU et attend un temps calculé pour maintenir le processeur à un certain seuil. Plus de détails sont nécessaires, mais j'espère que cela vous donnera un bon point de départ.

Jetez un oeil à ce script CPU Monitor que j'ai trouvé et essayez d'obtenir d'autres idées sur la façon dont vous pouvez accomplir cela.

-1

Vous ne savez pas quel est votre objectif ici. Je crois que glxgears utilisera 100% CPU.

Alors, trouvez un processus que vous connaissez qui maximisera le CPU à 100%.

Si vous avez quatre cœurs de processeur (0 1 2 3), vous pouvez utiliser "taskset" pour lier ce processus aux CPU 0 et 1. Cela devrait charger votre boîte de 50%. Pour le charger 75% lier le processus à 0 1 2 processeurs.

Avis de non-responsabilité: Ne pas avoir testé. S'il vous plaît laissez-nous savoir vos résultats.Même si cela fonctionne, je ne suis pas sûr de ce que vous allez réaliser à partir de cela?

0

Utilisez la commande "nice".

a) La plus haute priorité: $ nice -n -20 ma_commande

ou

b) priorité le plus bas: belle $ -n 20 ma_commande

0

Lookbusy permet la valeur réglée de la charge CPU. Project site

lookbusy -c util[-high_util], --cpu-util util[-high_util] 

i.e. 60% load 
lookbusy -c 60