CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
Il n'y en aurait pas au moins un de trop là ??
Oui, logiquement, il n'y a qu'un ordonnanceur à choisir. Je n'en ai
sélectionné qu'un. J'ai choisi l'ordonnanceur CFQ, puisqu'il est en
général assez bon (j'utilise aussi l'algorthme CFQ pour le QoS).
Je ne sais pas ce qu'il se passe quand plusieurs sont sélectionnés.
Je n'ai jamais essayé d'en sélectionné plusieurs car je viens juste de
passer au noyau 2.6, mais quelque chose me dit que ça a des chances de
résoudre ton problème.
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
Il n'y en aurait pas au moins un de trop là ??
Oui, logiquement, il n'y a qu'un ordonnanceur à choisir. Je n'en ai
sélectionné qu'un. J'ai choisi l'ordonnanceur CFQ, puisqu'il est en
général assez bon (j'utilise aussi l'algorthme CFQ pour le QoS).
Je ne sais pas ce qu'il se passe quand plusieurs sont sélectionnés.
Je n'ai jamais essayé d'en sélectionné plusieurs car je viens juste de
passer au noyau 2.6, mais quelque chose me dit que ça a des chances de
résoudre ton problème.
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
Il n'y en aurait pas au moins un de trop là ??
Oui, logiquement, il n'y a qu'un ordonnanceur à choisir. Je n'en ai
sélectionné qu'un. J'ai choisi l'ordonnanceur CFQ, puisqu'il est en
général assez bon (j'utilise aussi l'algorthme CFQ pour le QoS).
Je ne sais pas ce qu'il se passe quand plusieurs sont sélectionnés.
Je n'ai jamais essayé d'en sélectionné plusieurs car je viens juste de
passer au noyau 2.6, mais quelque chose me dit que ça a des chances de
résoudre ton problème.
top - 12:18:24 up 2 days, 18:38, 2 users, load average: 3.77, 4.59, 3.91
Tasks: 204 total, 9 running, 195 sleeping, 0 stopped, 0 zombie
Cpu(s): 94.0% us, 5.6% sy, 0.3% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 905292k total, 896728k used, 8564k free, 8540k buffers
Swap: 1004052k total, 0k used, 1004052k free, 481428k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21999 root 25 0 8812 7772 352 R 92.0 0.9 21:41.44 bzip2
top - 12:18:24 up 2 days, 18:38, 2 users, load average: 3.77, 4.59, 3.91
Tasks: 204 total, 9 running, 195 sleeping, 0 stopped, 0 zombie
Cpu(s): 94.0% us, 5.6% sy, 0.3% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 905292k total, 896728k used, 8564k free, 8540k buffers
Swap: 1004052k total, 0k used, 1004052k free, 481428k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21999 root 25 0 8812 7772 352 R 92.0 0.9 21:41.44 bzip2
top - 12:18:24 up 2 days, 18:38, 2 users, load average: 3.77, 4.59, 3.91
Tasks: 204 total, 9 running, 195 sleeping, 0 stopped, 0 zombie
Cpu(s): 94.0% us, 5.6% sy, 0.3% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.0% si
Mem: 905292k total, 896728k used, 8564k free, 8540k buffers
Swap: 1004052k total, 0k used, 1004052k free, 481428k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21999 root 25 0 8812 7772 352 R 92.0 0.9 21:41.44 bzip2
J'ai passé mon serveur d'un ancien PC Céléron 500Mhz, 384Mo de RAM en
une machine neuve Céléron 2.66Ghz, 1Go de RAM, avec un disque SATA.
[et ce nouveau serveur rame anormalement]
J'ai passé mon serveur d'un ancien PC Céléron 500Mhz, 384Mo de RAM en
une machine neuve Céléron 2.66Ghz, 1Go de RAM, avec un disque SATA.
[et ce nouveau serveur rame anormalement]
J'ai passé mon serveur d'un ancien PC Céléron 500Mhz, 384Mo de RAM en
une machine neuve Céléron 2.66Ghz, 1Go de RAM, avec un disque SATA.
[et ce nouveau serveur rame anormalement]
[et ce nouveau serveur rame anormalement]
Je viens de tomber par hasard sur cette page :
http://kerneltrap.org/node/2450/7217
Il est écrit vers la fin du document qu'il est déconseillé d'activer
l'option CONFIG_HIGHMEM pour les systèmes avec 1 Go de RAM. Pour des
raisons liées au fonctionnement interne de Linux et à l'architecture
x86, l'activation de cette option n'est pas rentable au niveau des
performances quand on a 1 Go de mémoire vive, puisqu'elle ralentit les
I/O.
[et ce nouveau serveur rame anormalement]
Je viens de tomber par hasard sur cette page :
http://kerneltrap.org/node/2450/7217
Il est écrit vers la fin du document qu'il est déconseillé d'activer
l'option CONFIG_HIGHMEM pour les systèmes avec 1 Go de RAM. Pour des
raisons liées au fonctionnement interne de Linux et à l'architecture
x86, l'activation de cette option n'est pas rentable au niveau des
performances quand on a 1 Go de mémoire vive, puisqu'elle ralentit les
I/O.
[et ce nouveau serveur rame anormalement]
Je viens de tomber par hasard sur cette page :
http://kerneltrap.org/node/2450/7217
Il est écrit vers la fin du document qu'il est déconseillé d'activer
l'option CONFIG_HIGHMEM pour les systèmes avec 1 Go de RAM. Pour des
raisons liées au fonctionnement interne de Linux et à l'architecture
x86, l'activation de cette option n'est pas rentable au niveau des
performances quand on a 1 Go de mémoire vive, puisqu'elle ralentit les
I/O.
Il serait peut-être intéressant d'avoir les lignes concernant les 8
autres processus en état running.
Je constate que la charge est assez élevée puisqu'atteignant la valeur
de 4. Essaye de diagnostiquer cette montée en charge trop importante.
On pourrait donner un point en charge pour le processus bzip2, un autre
pour le star qui lit les données, et un dernier point pour celui qui les
écrit. On arrive à un total de 3 (et encore, à supposer que le
processeur compresse aussi vite les données qu'il les lit, ce qui n'est
pas à priori le cas). Tu dépasses largement les 3 en charge.
Pour diagnostiquer, je penserais d'abord à lancer un dd if=/dev/zero
of=fichier_sur_disque1 (sur le système initialement non chargé, i.e.
charge = 0). Lance de même un dd if=/dev/zero of=fichier_sur_disque2, et
aussi pour comparaison un dd if=/dev/zero of=/dev/null. Note à chaque
fois la charge de ton système (qui ne devrait pas dépasser 1.0 à chaque
fois).
Tu peux aussi tester si le système est à genoux ou pas pendant ces
tests.
Est-ce que ça rame encore quand tu effectues ta sauvegarde en balançant
le résultat vers /dev/null au lieu de monfichier.tar.bz2 ?
En gros, essaye d'isoler le problème, pour savoir au niveau de quel
disque il se situe, ou pour savoir si c'est l'association des deux qui
pose problème.
Il serait peut-être intéressant d'avoir les lignes concernant les 8
autres processus en état running.
Je constate que la charge est assez élevée puisqu'atteignant la valeur
de 4. Essaye de diagnostiquer cette montée en charge trop importante.
On pourrait donner un point en charge pour le processus bzip2, un autre
pour le star qui lit les données, et un dernier point pour celui qui les
écrit. On arrive à un total de 3 (et encore, à supposer que le
processeur compresse aussi vite les données qu'il les lit, ce qui n'est
pas à priori le cas). Tu dépasses largement les 3 en charge.
Pour diagnostiquer, je penserais d'abord à lancer un dd if=/dev/zero
of=fichier_sur_disque1 (sur le système initialement non chargé, i.e.
charge = 0). Lance de même un dd if=/dev/zero of=fichier_sur_disque2, et
aussi pour comparaison un dd if=/dev/zero of=/dev/null. Note à chaque
fois la charge de ton système (qui ne devrait pas dépasser 1.0 à chaque
fois).
Tu peux aussi tester si le système est à genoux ou pas pendant ces
tests.
Est-ce que ça rame encore quand tu effectues ta sauvegarde en balançant
le résultat vers /dev/null au lieu de monfichier.tar.bz2 ?
En gros, essaye d'isoler le problème, pour savoir au niveau de quel
disque il se situe, ou pour savoir si c'est l'association des deux qui
pose problème.
Il serait peut-être intéressant d'avoir les lignes concernant les 8
autres processus en état running.
Je constate que la charge est assez élevée puisqu'atteignant la valeur
de 4. Essaye de diagnostiquer cette montée en charge trop importante.
On pourrait donner un point en charge pour le processus bzip2, un autre
pour le star qui lit les données, et un dernier point pour celui qui les
écrit. On arrive à un total de 3 (et encore, à supposer que le
processeur compresse aussi vite les données qu'il les lit, ce qui n'est
pas à priori le cas). Tu dépasses largement les 3 en charge.
Pour diagnostiquer, je penserais d'abord à lancer un dd if=/dev/zero
of=fichier_sur_disque1 (sur le système initialement non chargé, i.e.
charge = 0). Lance de même un dd if=/dev/zero of=fichier_sur_disque2, et
aussi pour comparaison un dd if=/dev/zero of=/dev/null. Note à chaque
fois la charge de ton système (qui ne devrait pas dépasser 1.0 à chaque
fois).
Tu peux aussi tester si le système est à genoux ou pas pendant ces
tests.
Est-ce que ça rame encore quand tu effectues ta sauvegarde en balançant
le résultat vers /dev/null au lieu de monfichier.tar.bz2 ?
En gros, essaye d'isoler le problème, pour savoir au niveau de quel
disque il se situe, ou pour savoir si c'est l'association des deux qui
pose problème.
Le Fri, 08 Apr 2005 12:34:40 -0400, Christophe PEREZ a écrit:mais si ça l'est, le résultat est tout à fait normal. Essaye de
vérifier avec chrt ou taskset (du package sys-process/schedutils)
Je vais essayer ça.
Bon, j'ai recompilé mon noyau avec seulement :
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
et
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Rebooté, et même problème.
Je n'ai pas encore vraiment étudier les outils schedutils, mais voici
déjà ce que j'ai pu avoir :
# ps axf | grep 'star '
14924 pts/2 S+ 0:00 | _ sh -c /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse ???errctl=/usr/local/perso/backup/star_errctl ???-fifo fsdm -no-statistics -silent ???-dump -newer=/usr/local/perso/backup/serveur1-www.stamp ???-not pat=lost+found{%!/*} C=/var /var/www ???> /autre/sauvegarde/Linux/serveur1-www-day-5.tar.bz2
14925 pts/2 SL+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
14927 pts/2 S+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
# chrt -m -p 14925
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14927
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
L'erreur est-elle là ?
Ce mini à 99 ça me fait bizarre quand même.
chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
chrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
Le Fri, 08 Apr 2005 12:34:40 -0400, Christophe PEREZ a écrit:
mais si ça l'est, le résultat est tout à fait normal. Essaye de
vérifier avec chrt ou taskset (du package sys-process/schedutils)
Je vais essayer ça.
Bon, j'ai recompilé mon noyau avec seulement :
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
et
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Rebooté, et même problème.
Je n'ai pas encore vraiment étudier les outils schedutils, mais voici
déjà ce que j'ai pu avoir :
# ps axf | grep 'star '
14924 pts/2 S+ 0:00 | _ sh -c /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse ???errctl=/usr/local/perso/backup/star_errctl ???-fifo fsdm -no-statistics -silent ???-dump -newer=/usr/local/perso/backup/serveur1-www.stamp ???-not pat=lost+found{%!/*} C=/var /var/www ???> /autre/sauvegarde/Linux/serveur1-www-day-5.tar.bz2
14925 pts/2 SL+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
14927 pts/2 S+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
# chrt -m -p 14925
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14927
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
L'erreur est-elle là ?
Ce mini à 99 ça me fait bizarre quand même.
chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
chrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
Le Fri, 08 Apr 2005 12:34:40 -0400, Christophe PEREZ a écrit:mais si ça l'est, le résultat est tout à fait normal. Essaye de
vérifier avec chrt ou taskset (du package sys-process/schedutils)
Je vais essayer ça.
Bon, j'ai recompilé mon noyau avec seulement :
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
et
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Rebooté, et même problème.
Je n'ai pas encore vraiment étudier les outils schedutils, mais voici
déjà ce que j'ai pu avoir :
# ps axf | grep 'star '
14924 pts/2 S+ 0:00 | _ sh -c /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse ???errctl=/usr/local/perso/backup/star_errctl ???-fifo fsdm -no-statistics -silent ???-dump -newer=/usr/local/perso/backup/serveur1-www.stamp ???-not pat=lost+found{%!/*} C=/var /var/www ???> /autre/sauvegarde/Linux/serveur1-www-day-5.tar.bz2
14925 pts/2 SL+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
14927 pts/2 S+ 0:00 | _ /usr/bin/star -c -bz artype=exustar -xdev -acl -xattr -link-dirs -sparse errctl=/usr/local/perso/backup/star_errctl -fifo fsdm -no-statistics -silent -dump -newer=/usr/local/perso/backup/serveur1-www.stamp -not pat=lost+found{%!/*} C=/var /var/www
# chrt -m -p 14925
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14927
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
L'erreur est-elle là ?
Ce mini à 99 ça me fait bizarre quand même.
chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
chrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
Ca semble pas mal.
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Ca aussi...
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
Ce mini à 99 ça me fait bizarre quand même.
C'est fort possible:
si je fait un chrt -p sur le shell dans lequel je suis, j'obtiens:chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
pid 3666's current scheduling priority: 0
etchrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
SCHED_RR min/max priority : 1/99
SCHED_OTHER min/max priority : 0/0
Essaye sans le '-m' pour voir sur quel scheduler il tourne.
S'il est sur le round-robin ou la FIFO, ton problème vient très
certainement de là:
les process schédulés dans ces modes là sont
toujours prioritaires par rapport aux process schédulés en 'OTHER'.
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
Ca semble pas mal.
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Ca aussi...
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
Ce mini à 99 ça me fait bizarre quand même.
C'est fort possible:
si je fait un chrt -p sur le shell dans lequel je suis, j'obtiens:
chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
pid 3666's current scheduling priority: 0
et
chrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
SCHED_RR min/max priority : 1/99
SCHED_OTHER min/max priority : 0/0
Essaye sans le '-m' pour voir sur quel scheduler il tourne.
S'il est sur le round-robin ou la FIFO, ton problème vient très
certainement de là:
les process schédulés dans ces modes là sont
toujours prioritaires par rapport aux process schédulés en 'OTHER'.
# grep IOSCHED /usr/src/linux/.config
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
Ca semble pas mal.
# grep PREEMPT /usr/src/linux/.config
CONFIG_PREEMPT=y
# CONFIG_PREEMPT_BKL is not set
# CONFIG_DEBUG_PREEMPT is not set
Ca aussi...
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
Ce mini à 99 ça me fait bizarre quand même.
C'est fort possible:
si je fait un chrt -p sur le shell dans lequel je suis, j'obtiens:chrt -p 3666
pid 3666's current scheduling policy: SCHED_OTHER
pid 3666's current scheduling priority: 0
etchrt -m -p 3666
SCHED_FIFO min/max priority : 1/99
SCHED_RR min/max priority : 1/99
SCHED_OTHER min/max priority : 0/0
Essaye sans le '-m' pour voir sur quel scheduler il tourne.
S'il est sur le round-robin ou la FIFO, ton problème vient très
certainement de là:
les process schédulés dans ces modes là sont
toujours prioritaires par rapport aux process schédulés en 'OTHER'.
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
pas encore essayé
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
pas encore essayé
# chrt -m -p 14924
SCHED_FIFO min/max priority : 99/99
SCHED_RR min/max priority : 99/99
SCHED_OTHER min/max priority : 0/0
Et sans les -m ?
pas encore essayé