Commande ioo

Objectif

Gère les paramètres réglables d'E-S.

Syntaxe

ioo [ -p | -r [ -K ]] [ -y ]{ -o Tunable [ =NewValue ] } 
ioo [ -p | -r [ -K ]] [ -y ] { -d Tunable } 
ioo [ -p | -r [-K ]] [ -y ] -D
ioo [ -p | -r | -K ] [  -F  ] -a
ioo -h [ Tunable ]
ioo [ -F ] [ -K ] -L [ Tunable ]
ioo [ -F ] [ -K ] -x [ Tunable ]
Note : Les drapeaux multiples tels que -o, -d, -x, et -L sont autorisés.

Descriptif

Note : La commande ioo n'est exécutée que par l'utilisateur root.

La commande " ioo configure les paramètres de réglage des entrées/sorties (E/S). Cette commande définit ou affiche les valeurs de démarrage actuelles ou suivantes pour tous les paramètres de réglage des entrées/sorties. Cette commande permet également d'effectuer des modifications permanentes ou différées jusqu'au prochain réamorçage. Un indicateur d'accompagnement détermine si la commande définit ou affiche un paramètre. L'indicateur '-o peut soit afficher la valeur d'un paramètre, soit définir une nouvelle valeur pour un paramètre.

Si un processus lit séquentiellement un fichier, les valeurs spécifiées par le paramètre minpgahead déterminent le nombre de pages à lire en amont lorsque la condition est détectée pour la première fois. La valeur spécifiée par le paramètre " maxpgahead fixe le nombre maximum de pages qui sont lues en avance, quel que soit le nombre de lectures séquentielles précédentes.

Le système d'exploitation permet de régler le nombre de " bufstructs ("numfsbuf) du système de fichiers et la quantité de données traitées par l'algorithme d'écriture en arrière-plan (numclust).

Remarque : les variables réglables qui s'appliquent à l'ensemble du système ne peuvent pas être modifiées à partir d'une partition de la charge de travail.
L'effet de la modification des paramètres réglables
L'utilisation abusive de la commande ioo peut entraîner une dégradation des performances ou une défaillance du système d'exploitation. Avant d'expérimenter la commande ioo , reportez-vous à la section Vue d'ensemble des performances du gestionnaire de mémoire virtuelle.

Pour plus d'informations sur la modification d'un paramètre ajustable et son utilité, voir les caractéristiques du paramètre ajustable dans la section Paramètres ajustables.

Assurez-vous que les sections Diagnostic et Réglage du paramètre réglable s'appliquent à votre situation. La modification de la valeur du paramètre accordable peut améliorer les performances de votre système.

Si les sections Diagnostic et Réglage ne contiennent que des N/A, ne modifiez pas le paramètre réglable, sauf indication contraire du service de AIX développement.

Indicateurs

Tableau 1. Indicateurs
Article Descriptif
-h [ Accordable ] Affiche les informations d'aide concernant le paramètre réglable spécifié. Si le paramètre tunable n'est pas spécifié, l'indicateur -h affiche la déclaration d'utilisation de la commande ioo .
-a Affiche la valeur actuelle, la valeur de redémarrage (lorsqu'elle est utilisée avec l'indicateur -r ), les valeurs de mise à jour en direct (lorsqu'elles sont utilisées avec l'indicateur -K ), ou la valeur permanente (lorsqu'elle est utilisée avec l'indicateur -p ) pour tous les paramètres réglables, un par ligne par paires tunable = value. Pour l'option permanente, une valeur est affichée pour un paramètre réglable uniquement si sa valeur de redémarrage et sa valeur actuelle sont égales. Dans le cas contraire, la valeur affichée est NONE .
-d Accordable Réinitialise les paramètres réglables spécifiés à leur valeur par défaut. Si le paramètre réglable qui doit être modifié parce qu'il n'est pas réglé sur sa valeur par défaut répond à un ou plusieurs des critères suivants, un message d'avertissement s'affiche et aucune modification n'est apportée au paramètre réglable :
  • Le paramètre accordable est du type Bosboot ou Reboot.
  • Le paramètre accordable est du type Incremental et est modifié par rapport à sa valeur par défaut, et l'indicateur -r n'est pas utilisé en combinaison.
  • Le paramètre accordable est de type Reboot et est pris en charge par l'opération de mise à jour en direct.

Pour plus d'informations sur les différents types de paramètres réglables, voir Catégories de paramètres réglables.

-D Réinitialise tous les paramètres réglables à leur valeur par défaut. Si le paramètre réglable qui doit être modifié parce qu'il n'est pas réglé sur sa valeur par défaut répond à un ou plusieurs des critères suivants, un message d'avertissement s'affiche et aucune modification n'est apportée au paramètre réglable :
  • Le paramètre accordable est du type Bosboot ou Reboot.
  • Le paramètre accordable est du type Incremental et est modifié par rapport à sa valeur par défaut, et l'indicateur -r n'est pas utilisé en combinaison.
  • Le paramètre accordable est de type Reboot et est pris en charge par l'opération de mise à jour en direct.

Pour plus d'informations sur les différents types de paramètres réglables, voir Catégories de paramètres réglables.

-F Force l'affichage des paramètres ajustables restreints lorsque vous spécifiez l'option -a, -L, ou -x sur la ligne de commande. Si vous ne spécifiez pas l'indicateur -F les paramètres restreints ne sont pas inclus, à moins qu'ils ne soient nommés en association avec un indicateur d'affichage, tel que -o, -a, -x, ou -L .
-K Définit la valeur de paramètre réglable dans les fichiers /etc/tunables/nextboot et /etc/tunables/nextliveupdate . L'indicateur -K n'est utilisé qu'avec l'indicateur -r l'indicateur

Lorsque vous spécifiez l'indicateur -K avec les options -r et -d ou avec les options -r et -D , la valeur du paramètre ajustable est fixée à sa valeur par défaut dans les fichiers /etc/tunables/nextboot et /etc/tunables/nextliveupdate qui seront utilisés lors du prochain démarrage ou lors des opérations de mise à jour en direct.

Lorsque vous spécifiez l'indicateur -K avec l'indicateur -L ou -x , la commande ioo affiche les valeurs Live Update.

-L [ Accordable ] Liste les caractéristiques d'un ou de tous les paramètres réglables, une par ligne, en utilisant le format suivant :

NAME                      CUR    DEF    BOOT   MIN    MAX    UNIT           TYPE 
     DEPENDENCIES 
------------------------------------------------------------------------------------
minpgahead                2      2      2      0      4K     4KB pages         D 
     maxpgahead 
------------------------------------------------------------------------------------
maxpgahead                8      8      8      0      4K     4KB pages         D 
     minpgahead 
------------------------------------------------------------------------------------ 
pd_npages                 64K    64K    64K    1      512K   4KB pages         D 
------------------------------------------------------------------------------------ 
maxrandwrt                0      0      0      0      512K   4KB pages         D 
------------------------------------------------------------------------------------ 
numclust                  1      1      1      0             16KB/cluster      D 
------------------------------------------------------------------------------------ 
numfsbufs                 196    196    196                                    M 
-------------------------------------------------------------------------------- 
recoveryMode              1      1      1      0      1      N/A               D 
-------------------------------------------------------------------------------- 
... 
where: 
    CUR = current value 
    DEF = default value 
    BOOT = reboot value 
    MIN = minimal value 
    MAX = maximum value 
    UNIT = tunable unit of measure 
    TYPE = parameter type: D (for Dynamic), S (for Static), R (for Reboot),
               B (for Bosboot), M (for Mount), I (for Incremental),
               C (for Connect), and d (for Deprecated) 
    DEPENDENCIES = list of dependent tunable parameters, one per line
Si vous spécifiez l'indicateur -K avec l'indicateur -L , les valeurs Live Update sont également affichées.
-o Accordable [=NewValue ] Affiche ou définit la valeur d'un paramètre accordable sur une nouvelle valeur. Le fichier /etc/tunables/usermodified est mis à jour avec la nouvelle valeur du paramètre accordable lorsque vous utilisez l'indicateur -o pour modifier la valeur d'un paramètre accordable dynamique. Si un paramètre réglable que vous souhaitez modifier répond à un ou plusieurs des critères suivants, un message d'avertissement s'affiche et aucune modification n'est apportée au paramètre réglable :
  • Le paramètre accordable est du type Bosboot ou Reboot.
  • Le paramètre accordable est du type Incremental, sa valeur actuelle est supérieure à la valeur spécifiée et l'indicateur -r n'est pas utilisé en combinaison.
  • Le paramètre accordable est du type Reboot, et le paramètre accordable est pris en charge dans le cadre de l'opération de mise à jour en direct.

Pour plus d'informations sur les différents types de paramètres réglables, voir Catégories de paramètres réglables.

Lorsque vous spécifiez l'indicateur -r sans NewValue, la valeur nextboot du paramètre accordable est affichée. Lorsque l'indicateur -K est utilisé en combinaison avec l'indicateur -o sans NewValue, la prochaine valeur de mise à jour en direct pour le paramètre réglable est affichée. Lorsque l'indicateur -p est utilisé avec l'indicateur -o sans NewValue, une valeur n'est affichée que si la valeur actuelle et la prochaine valeur de démarrage du paramètre réglable sont identiques. Dans le cas contraire, la valeur affichée est NONE .

-p Spécifie que les modifications s'appliquent à la fois à la valeur actuelle et à la valeur de redémarrage lorsque vous spécifiez avec l'indicateur -o, -d, ou -D . Le paramètre réglable vous permet de mettre à jour le fichier /etc/tunables/nextboot avec la valeur actuelle. Ces combinaisons ne peuvent pas être utilisées pour les paramètres réglables de type Reboot et Bosboot . La valeur actuelle des paramètres accordables de type Reboot et Bosboot ne peut pas être modifiée.

Lorsque vous spécifiez l'indicateur -a ou -o sans spécifier de nouvelle valeur, les valeurs ne s'affichent que si la valeur actuelle et la prochaine valeur de démarrage d'un paramètre réglable sont identiques. Dans le cas contraire, NONE est affiché comme une valeur réglable.

-r Apporte des modifications qui s'appliquent aux valeurs du paramètre reboot lorsqu'il est utilisé avec les drapeaux -o, -d ou -D . Le paramètre accordable vous permet de mettre à jour le fichier /etc/tunables/nextboot . Si un paramètre accordable de type Bosboot est modifié, l'utilisateur est invité à exécuter la commande bosboot commande.

Lorsque l'indicateur -r est utilisé avec l'indicateur -a ou -o sans spécifier de nouvelle valeur, les valeurs du prochain démarrage pour les paramètres réglables sont affichées à la place des valeurs actuelles. Lorsqu'il est utilisé avec l'option -K , les modifications s'appliquent à la fois au fichier /etc/tunables/nextboot et au fichier /etc/tunables/nextliveupdate .

-x [Accordable] Liste les caractéristiques d'un ou de tous les paramètres réglables, une par ligne, en utilisant le format de feuille de calcul suivant :
tunable,current,default,reboot,min,max,unit,type,{dtunable} 


where: 
    current = current value 
    default = default value 
    reboot = reboot value
    min = minimal value 
    max = maximum value 
    unit = tunable unit of measure 
    type = parameter type: D (for Dynamic), S (for Static), R (for Reboot),
               B (for Bosboot), M (for Mount), I (for Incremental),
               C (for Connect), and d (for Deprecated) 
    dtunable = space separated list of dependent tunable parameters
Si vous spécifiez l'indicateur -K avec l'indicateur -x , les valeurs Live Update sont également affichées.
-y Supprime la demande de confirmation avant l'exécution de la commande 'bosboot

Si vous modifiez un paramètre accordable restreint en utilisant les drapeaux -o, -d ou -D , un message d'avertissement s'affiche à l'intention de l'utilisateur, indiquant qu'un paramètre accordable du type à usage restreint a été modifié. Si vous spécifiez également l'indicateur -r ou -p , vous êtes invité à confirmer la modification du paramètre ajustable restreint. En outre, au redémarrage du système, la présence de paramètres restreints accordables, qui se trouvent dans le fichier /etc/tunables/nextboot , est modifiée à une valeur différente de leur valeur par défaut, à l'aide d'une ligne de commande qui spécifie l'indicateur -r ou -p . La modification d'un paramètre accordable restreint entraîne une entrée dans le journal des erreurs qui identifie la liste des paramètres accordables modifiés.

Lorsque vous modifiez un paramètre réglable, vous pouvez en spécifier la valeur en utilisant les abréviations suivantes pour indiquer les valeurs correspondantes :
Tableau 2. Abréviations des valeurs des paramètres réglables
Abréviation Puissance de deux
K 210
M 220
G 230
T 240
P 250
E 260
Ainsi, une valeur de paramètre réglable de 1024 peut être spécifiée comme étant de 1 K.

Une modification avec les drapeaux -o, -d ou -D , d'un paramètre accordable de type Mount affiche un message d'avertissement à l'utilisateur indiquant que la modification n'est effective que pour les montages futurs.

Une modification avec l'indicateur -o, -d, ou -D , pour un paramètre accordable de type Connect, redémarre la commande inetd et affiche un message d'avertissement à l'utilisateur indiquant que la modification n'est effective que pour les futures connexions de socket.

Une tentative de modification avec l'indicateur -o, -d, ou -D , d'un paramètre accordable de type Bosboot ou Reboot sans l'indicateur -r , affiche un message d'erreur.

Une tentative de modification de la valeur courante d'un paramètre accordable de type Incremental par une nouvelle valeur plus petite que la valeur courante avec l'indicateur -o, -d ou -D , mais sans l'indicateur -r , affiche un message d'erreur.

Mode de compatibilité

Lorsque vous exécutez le paramètre paramétrable en mode de compatibilité pre-5.2, qui est contrôlé par l'attribut sys0 appelé pre520tune, les valeurs de redémarrage des paramètres paramétrables, à l'exception de Bosboot, ne sont pas significatives. En mode de compatibilité pre-5.2, ils ne sont pas appliqués au démarrage.

Dans le mode de compatibilité pre-5.2, la définition de valeurs de redémarrage pour les paramètres de réglage reste possible en intégrant des appels à des commandes de réglage dans des scripts qui sont appelés pendant la séquence de démarrage. Par conséquent, les paramètres de type Redémarrage peuvent être définis sans l'indicateur " -r afin que les scripts existants continuent de fonctionner.

Le mode de compatibilité pre-5.2 est automatiquement activé lorsqu'une machine est migrée vers le AIX 5.2. Pour les installations complètes, il est désactivé et les valeurs de redémarrage pour les paramètres réglables sont définies en appliquant le contenu du fichier /etc/tunables/nextboot pendant la séquence de redémarrage. Ce n'est que dans ce mode que les drapeaux " -r et " -p sont pleinement fonctionnels. Pour plus d'informations, voir " Mise au point du noyau dans " Guide et référence des outils de performance.

Paramètres réglables

Les paramètres réglables qui sont manipulés par les commandes de réglage, tels que no, nfso, vmo, ioo, rasoet schedo sont classées dans les catégories de paramètres réglables suivantes :
Tableau 3. Catégories de paramètres ajustables
Article Descriptif
Dynamic Si le paramètre accordable peut être modifié à tout moment.
Static Si le paramètre accordable ne peut jamais être modifié.
Reboot Si le paramètre réglable ne peut être modifié que lors du redémarrage.
Bosboot Si le paramètre accordable ne peut être modifié qu'en utilisant la commande bosboot et en redémarrant la machine.
Mount Si les modifications apportées au paramètre ajustable ne s'appliquent qu'aux futurs systèmes de fichiers ou montages de répertoires.
Incremental Si le paramètre accordable peut être augmenté de façon incrémentielle, sauf au moment du démarrage.
Connect Si les modifications apportées au paramètre accordable ne sont effectives que pour les futures connexions de socket.
Deprecated Si les modifications apportées au paramètre accordable ne sont plus prises en charge par la version actuelle de AIX.
Pour les paramètres réglables de type Bosboot, chaque fois qu'une modification est effectuée, la commande de réglage demande automatiquement à l'utilisateur s'il souhaite exécuter la commande bosboot commande. Pour les paramètres réglables de type Connect, les commandes de réglage redémarrent automatiquement le démon inetd démon.
Remarque : l'ensemble actuel des paramètres gérés par la commande ioo ne comprend que les types de paramètres accordables Static, Dynamic, Mount et Incremental .
Pour connaître les valeurs par défaut et la plage de valeurs des paramètres réglables, entrez la commande suivante :
ioo -h
Le tableau suivant énumère les paramètres réglables ainsi que leur description :
Tableau 4. paramètres réglables
Article Descriptif
aio_active
Objectif
Indique si l'extension du noyau AIO (Asynchronous I/O) est utilisée et épinglée.
Ajustement
Une valeur d'accord de 1 indique que l'extension du noyau AIO est utilisée et épinglée.
aio_maxreqs
Objectif
Indique le nombre maximal de demandes d'E-S asynchrones pouvant être en attente à la fois.
Ajustement
Le nombre indiqué inclut les demandes d'entrée-sortie en cours, ainsi que les demandes en attente dans les files d'attente à lancer. Le nombre maximal de demandes d'E/S asynchrones ne peut être inférieur à la valeur du champ AIO_MAX , telle qu'elle est définie dans le fichier /usr/include/sys/limits.h , mais il peut être supérieur. Pour un système ayant un volume élevé d'E/S asynchrones, il convient d'avoir un nombre maximal de demandes d'E/S asynchrones supérieur à la valeur du champ AIO_MAX .
aio_maxservers
Objectif
Spécifie le nombre maximum de serveurs AIO (processus du noyau dédiés au traitement des E/S asynchrones) qui sont autorisés à traiter les demandes d'E/S sur des chemins lents.
Ajustement
La valeur de réglage est une valeur par unité centrale. La valeur du " aio_maxservers ne peut être inférieure à celle du " aio_minservers. Il ne peut jamais y avoir plus de demandes d'E/S asynchrones en cours à la fois que la valeur du paramètre ajustable aio_maxservers . Ce nombre limite donc la concurrence possible des E/S.
aio_minservers
Objectif
Indique le nombre minimal de serveurs AIO (processus de noyau dédiés au traitement d'E-S asynchrones) qui restent actifs pour traiter les demandes d'entrée-sortie de chemin lent.
Ajustement
La valeur de réglage est une valeur par unité centrale. La valeur de aio_minservers ne peut être supérieure à la valeur de aio_maxservers. Quand l'extension du noyau est chargée, aucun serveur AIO n'est créé, quels que soient les paramètres actuels ou par défaut. Cette valeur permet une empreinte AIO minimale sur les systèmes où AIO n'est jamais utilisé. Au fur et à mesure que les demandes d'E/S sont initiées, des serveurs AIO sont créés pour les traiter jusqu'à ce que la valeur maximale autorisée par le " aio_maxservers soit atteinte. Lorsque la valeur " aio_minservers est dépassée, le nombre de serveurs ne devient pas inférieur à " aio_minservers.
aio_server_inactivity
Objectif
Indique combien de temps un serveur AIO dort sans traiter une demande d'entrée-sortie.
Ajustement
Lorsque cette limite de temps est dépassée, le serveur se retire, à moins qu'il ne fasse passer le nombre de serveurs disponibles en dessous de " aio_minservers. Dans ce cas, le serveur se remet en veille. Dans ce cas rare, la durée de sommeil du serveur est la plus longue des durées spécifiées pour la valeur actuelle et la valeur par défaut de " aio_server_inactivity. Il s'agit d'un cas rare et indique qu'il peut y avoir un déséquilibre entre le nombre de serveurs disponibles et la quantité d'E-S.
aio_delegateiotodriverkth
Objectif
Spécifie la valeur seuil pour déléguer les E/S asynchrones au thread du noyau du pilote de la mémoire persistante virtuellevPMEM).
Ajustement
La sous-routine " lio_listio ou " lio_listio64 lance une liste de demandes d'E/S asynchrones en un seul appel. Si le nombre de demandes d'E/S asynchrones dans la liste est supérieur à la valeur du paramètre ajustable aio_delegateiotodriverkth et que le périphérique sous-jacent est vPMEM, le pilote vPMEM délègue les E/S asynchrones au thread du noyau du pilote vPMEM afin d'améliorer les performances. Une valeur de 0 désactive le paramètre accordable aio_delegateiotodriverkth .
début de la modificationaio_queue_enhanced_searchfin de la modification
Objectif
Indique s'il faut utiliser l'algorithme existant ou l'algorithme amélioré pour localiser la demande d'AIO dans la file d'attente.
Ajustement
Si la valeur de ce paramètre paramétrable est fixée à 1, un algorithme de recherche amélioré est utilisé pour localiser la demande d'AIO dans la file d'attente; dans le cas contraire, l'algorithme existant est utilisé. La performance de la demande de recherche AIO est améliorée grâce à l'algorithme amélioré. Pour passer d'un algorithme à l'autre, réglez le paramètre aio_queue_enhanced_search sur la valeur requise et redémarrez le système. Par défaut, la valeur du paramètre paramétrable aio_queue_enhanced_search est fixée à 1 et utilise l'algorithme de recherche amélioré. En fixant la valeur du paramètre réglable à 0, on utilise l'algorithme existant.
dk_closed_path_recovery
Objectif
Active ou désactive la prise en charge des chemins d'entrée-sortie multichemins (MPIO) qui étaient à l'état Echec lors de la fermeture du disque MPIO. L'opération de reprise est tentpériodiquement après la fermeture du disque MPIO jusqu'à ce que le chemin MPIO soit récupéré. Si les chemins MPIO sont en état d'échec et si le disque MPIO est déjà fermé, les chemins MPIO en état d'échec ne peuvent pas être récupérés lorsque vous réglez ce paramètre réglable sur 1. Vous pouvez ouvrir et fermer le disque MPIO et lancer la récupération des chemins MPIO pour les disques MPIO déjà fermés à l'aide de la commande suivante :
lsmpio -o -l hdiskX
Cette fonction est prise en charge par défaut sur les modules de contrôle de chemin (PCM) de AIX.
Ajustement
Une valeur d'accord de 0 désactive la prise en charge de la récupération des chemins MPIO qui sont en état d'échec. La valeur par défaut est 0.
Une valeur de réglage de 1 active la prise en charge de la récupération des chemins MPIO qui sont en état d'échec.
dk_lbp_enabled
Objectif
Active ou désactive la prise en charge du Logical Block Provisioning (LBP), également connu sous le nom de thin-provisioning, dans le système d'exploitation AIX®. Lorsque cette option est désactivée, AIX ne tente pas de libérer les blocs non utilisés d'un disque à provisionnement limité.
Ajustement
Une valeur de réglage de 1 active le support LBP. La valeur par défaut est 1.
Une valeur d'accord de 0 désactive le support LBP.
dk_lbp_num_bufs
Objectif
Définit la taille du pool de mémoires tampons préallouées utilisées pour le support LBP.
Ajustement
Contrôle le nombre maximum de requêtes unmap pouvant être traitées par le pilote de disque à un moment donné. Le pool de mémoire tampon est un pool de ressources à l'échelle du système. Sur un disque à provisionnement fin, une seule demande unmap peut être active à la fois. La valeur par défaut de ce paramètre est de 64 tampons. Par exemple, si vous avez 64 tampons, vous disposez de 32 Ko (64 tampons x 512 octets = 32 Ko) de mémoire totale épinglée. La valeur de ce paramètre est comprise entre 1 et 1024.
dk_lbp_buf_size
Objectif
Définit la taille de chaque mémoire tampon dans le pool de mémoire tampon LBP. La valeur par défaut est de 512 octets. Cette valeur peut être remplacée par 4096 (4 KB), auquel cas les blocs peuvent être libérés pour les disques qui prennent en charge une taille de bloc de 4 KB.
Ajustement
La valeur de ce paramètre doit être la même que la plus grande taille de bloc supportée par un disque attaché au système AIX.
j2_atimeUpdateSymlink
Objectif
Si le paramètre accordable j2_atimeUpdateSymlink est fixé à 1, le temps d'accès des liens symboliques du système de fichiers JFS2 est mis à jour lors des requêtes readlink .
Ajustement
La valeur 0 indique que le temps d'accès aux liens symboliques du système de fichiers JFS2 n'est pas mis à jour lors de la demande readlink . L'activation de j2_atimeUpdateSymlink entraîne une pénalité en termes de performances, c'est pourquoi ce paramètre ne doit pas être modifié à moins que cela ne soit vraiment nécessaire. SUSv3 n'exige pas que le temps d'accès soit mis à jour sur la demande readlink . Cependant, JFS et de nombreuses autres plateformes mettent à jour le temps d'accès sur la demande readlink . Ce paramètre est fourni à des fins de compatibilité avec JFS et d'autres systèmes conformes à UNIX.
j2_dynamicBufferPreallocation
Objectif
Spécifie le nombre de dalles de 16 K à allouer lorsque le système de fichiers est à court de tampons de système de fichiers utilisés pour stocker temporairement des données pendant les opérations d'E/S (bufstructs).
Ajustement
Une valeur de 16 représente 256 K. Le système de fichiers n'a pas besoin d'être remonté. Le site bufstructs pour le système de fichiers JFS2 est désormais dynamique. Le nombre de tampons qui démarrent sur le dispositif de pagination est contrôlé par le paramètre accordable j2_nBufferPerPagerDevice , mais les tampons sont alloués et détruits dynamiquement après cette valeur initiale. Si le nombre d'E/S du système de fichiers pager externe bloquées sans fsbuf (à partir de vmstat -v) augmente, le paramètre accordable j2_dynamicBufferPreallocation doit être augmenté pour ce système de fichiers, car la charge d'E/S sur le système de fichiers peut dépasser la vitesse de la pré-allocation. Une valeur de 0 désactive complètement l'allocation dynamique de la mémoire tampon.
j2_inodeCacheSize
Objectif
Contrôle la quantité de mémoire que le système de fichiers JFS2 utilise pour le cache du nœud d'index (inode).
Ajustement
La valeur d'accord n'indique pas explicitement la quantité utilisée, mais constitue plutôt un facteur d'échelle. La valeur du paramètre paramétrable " j2_inodeCacheSize est utilisée en combinaison avec la taille de la mémoire principale pour déterminer l'utilisation maximale de la mémoire pour le cache d'inodes. Le facteur d'échelle de la taille du cache d'inodes est calculé comme le produit de la mémoire de la machine et de la valeur du paramètre ajustable j2_inodeCacheSize , divisé par 4000. La valeur par défaut du paramètre paramétrable " j2_inodeCacheSize est de 200, ce qui signifie que la taille du cache d'inodes occupe jusqu'à 5 % de la mémoire de la machine. L'ajout et la suppression de la mémoire dynamique ne modifient pas automatiquement la taille du cache. La valeur par défaut de ce paramètre a été modifiée dans la version 7.1 d'AIX, mais les systèmes dont la mémoire principale est plus petite et qui ont un grand nombre d'utilisateurs simultanés ou de fichiers ouverts peuvent être plus performants avec l'ancienne valeur par défaut de 400.
j2_maxPageReadAhead
Objectif
Spécifie le nombre maximum de pages à lire en amont lorsqu'un fichier à accès séquentiel est traité sur le système de fichiers JFS2.
Ajustement
La différence entre le paramètre minfree et le paramètre maxfree doit toujours être égale ou supérieure à la valeur du paramètre accordable j2_maxPageReadAhead . Si la durée d'exécution diminue lorsque la valeur du paramètre paramétrable j2_maxPageReadAhead augmente, assurez-vous que les performances des autres applications ne se détériorent pas.
j2_maxRandomWrite
Objectif
Spécifie une valeur seuil pour les opérations d'écriture aléatoire qui s'accumulent dans la mémoire vive (RAM) avant que les pages suivantes ne soient évacuées sur le disque par l'algorithme write-behind du système de fichiers JFS2.
Ajustement
La valeur de seuil d'écriture par écriture aléatoire est par fichier. Ce paramètre est utile si un grand nombre de pages sont vidées par le démon syncd .
j2_metadataCacheSize
Objectif
Contrôle la quantité de mémoire utilisée par le système de fichiers JFS2 pour le cache des métadonnées.
Ajustement
La valeur d'accord n'indique pas explicitement la quantité utilisée, mais constitue plutôt un facteur d'échelle. La valeur du paramètre ajustable " j2_metadataCacheSize est utilisée en combinaison avec la taille de la mémoire principale pour déterminer l'utilisation maximale de la mémoire pour le cache de métadonnées. Le facteur d'échelle de la taille du cache de métadonnées est calculé comme le produit de la mémoire de la machine et de la valeur du paramètre ajustable j2_metadataCacheSize , divisé par 10000. La valeur par défaut du paramètre ajustable j2_metadataCacheSize est 200, ce qui signifie que la taille des métadonnées des inodes occupe jusqu'à 2 % de la mémoire de la machine. L'ajout et la suppression de la mémoire dynamique ne modifient pas automatiquement la taille du cache. La valeur par défaut de ce paramètre a été modifiée dans la version 7.1 d'AIX, mais les systèmes dont la mémoire principale est plus petite et qui ont un grand nombre d'utilisateurs simultanés ou de fichiers ouverts peuvent être plus performants avec l'ancienne valeur par défaut de 400.
j2_minPageReadAhead
Objectif
Spécifie le nombre minimum de pages à lire en amont lors du traitement d'un fichier à accès séquentiel sur le système de fichiers JFS2.
Ajustement
A augmenter s'il existe de nombreux et importants accès séquentiels. Veiller à ce que les performances des autres applications ne se détériorent pas. Une valeur de 0 peut être utile si le modèle d'E/S est purement aléatoire.
j2_nPagesPerWriteBehindCluster
Objectif
Spécifie le nombre de pages, par cluster, qui est traité par l'algorithme write-behind du système de fichiers JFS2.
Ajustement
Utile pour augmenter si d'autres pages doivent être conservées en mémoire vive avant qu'elles ne soient planifiées pour les E-S, lorsque le modèle d'E-S est séquentiel. Il peut être judicieux de l'augmenter si l'on utilise des volumes logiques à bandes ou des matrices de disques.
j2_nRandomCluster
Objectif
Spécifie la distance (en grappes) que l'opération d'écriture doit dépasser pour être considérée comme aléatoire par l'algorithme d'écriture aléatoire du JFS.
Ajustement
Il est utile d'augmenter cette valeur si davantage de pages doivent être conservées dans la RAM avant d'être programmées pour les E/S, lorsque le modèle d'E/S est aléatoire et que l'écriture aléatoire est activée par le paramètre paramétrable j2_maxRandomWrite .
j2_recoveryMode
Objectif
Définit le comportement de récupération des erreurs d'écriture du système de fichiers JFS2.
Ajustement
La valeur par défaut de 1 indique que la récupération automatique des erreurs d'écriture du système de fichiers JFS2 est activée. La valeur 0 indique que les systèmes de fichiers restent en mode dégradé jusqu'à ce qu'ils soient démontés.
j2_syncByVFS
Objectif
Change le délai entre chaque appel du traitement de synchronisation pour un système de fichiers JFS2 .
Ajustement
Ce paramètre réglable permet de synchroniser les systèmes de fichiers JFS2 à un rythme différent de la période standard du démon sync . Lorsque ce paramètre est défini sur une valeur non nulle, il s'agit du nombre de secondes à attendre entre les itérations du traitement de synchronisation pour chaque système de fichiers JFS2. En utilisant ce paramètre, les opérations de synchronisation peuvent être réparties plus largement que le démon sync ne peut le faire, car le démon sync gère tous les systèmes de fichiers simultanément. Il permet également de modifier le nombre de threads qui gèrent les opérations du système de fichiers sync .
j2_syncConcurrency
Objectif
Change le nombre d'unités d'exécution qui sont exécutées pour synchroniser les données vers les systèmes de fichiers JFS2 . Chaque thread opère sur un système de fichiers à la fois.
Ajustement
Lorsque de nombreux systèmes de fichiers sont montés, il peut être nécessaire d'augmenter cette valeur pour que tous les systèmes de fichiers soient traités par l'opération de synchronisation en temps voulu.
Remarque: Cette valeur est effective uniquement lorsque le paramètre réglable j2_syncByVFS est différent de zéro.
j2_syncDelayReport
Objectif
Notifie si le temps nécessaire pour synchroniser les systèmes de fichiers dépasse le nombre de secondes spécifié.
Ajustement
Ce paramètre réglable définit le nombre de secondes autorisé à effectuer le traitement de synchronisation pour un système de fichiers. Si ce nombre est dépassé, un message est généré dans le fichier syslog . Ce message est uniquement informatif et ne modifie en rien le comportement de l'opération de synchronisation.
j2_syncPageCount
Objectif
Définit le nombre maximum de pages modifiées d'un fichier qui sont écrites sur le disque par l'appel système sync en une seule opération.
Ajustement
Lorsqu'une application qui utilise la mise en cache du système de fichiers est exécutée et qu'elle effectue un grand nombre d'écritures aléatoires, il peut être nécessaire d'ajuster ce paramètre pour éviter les longs délais lors des opérations de synchronisation.
j2_syncPageLimit
Objectif
Définit le nombre maximum de fois que l'appel système sync utilise le paramètre paramétrable j2_syncPageCount . Ce paramètre ajustable limite le nombre de pages écrites avant d'augmenter la valeur du paramètre ajustable j2_syncPageCount pour permettre la progression de l'opération de synchronisation.
Ajustement
Ce paramètre accordable doit être défini lorsque le paramètre j2_syncPageCount est défini et doit être augmenté si l'effet de la modification du paramètre j2_syncPageCount n'est pas suffisant.
start of changelvm_workQ_enhanced_searchend of change
Objectif
Indique s'il faut utiliser l'algorithme de recherche existant ou amélioré pour localiser les E/S chevauchées dans la file d'attente du volume logique.
Ajustement
Si la valeur du paramètre ajustable start of changelvm_workQ_enhanced_searchend of change est fixée à 1, l'algorithme de recherche amélioré est utilisé pour localiser les E/S chevauchées dans la file d'attente du volume logique. Dans le cas contraire, l'algorithme existant est utilisé. Les performances de recherche des E/S superposées sont améliorées grâce à l'algorithme optimisé.
Pour passer d'un algorithme à l'autre, un volume logique doit être fermé et rouvert en changeant la valeur du paramètre accordable start of changelvm_workQ_enhanced_searchend of change à la valeur requise. Par défaut, la valeur de ce paramètre réglable est fixée à 0 et utilise l'algorithme de recherche existant.
lvm_bufcnt
Objectif
Indique le nombre de tampons LVM pour les E-S physiques.
Ajustement
Les applications qui effectuent des écritures importantes sur des volumes logiques bruts à bandes n'obtiennent pas le débit souhaité. LVM divise les grandes E/S brutes en plusieurs tampons de 128 Ko chacun. La valeur 9 signifie que les E-S d'environ 1 Mo peuvent être traitées sans attendre des tampons supplémentaires. Si un système est configuré pour avoir des volumes logiques bruts segmentés et qu'il effectue des écritures supérieures à 1.125 Mo, l'augmentation de cette valeur peut aider le débit de l'application. Si un système exécute des entrées-sorties brutes de plus de 1 Mo, il peut être utile d'augmenter cette valeur.
maxpgahead
Objectif
Indique le nombre maximal de pages à lire à l'avance lorsqu'un fichier à accès séquentiel est traité.
Ajustement
Cette valeur de paramètre accordable doit être une puissance de deux et doit être supérieure ou égale à la valeur de paramètre accordable minpgahead . Observez le temps d'exécution écoulé des applications critiques dépendant des entrées-sorties séquentielles à l'aide de la commande time . En raison des limitations du noyau, la valeur maximale ne doit pas dépasser 512. La différence entre les paramètres minfree et maxfree doit toujours être égale ou supérieure à la valeur du paramètre ajustable maxpgahead . Si le temps d'exécution diminue avec une valeur plus élevée du paramètre accordable maxpgahead , observez les autres applications pour vous assurer que leurs performances ne se détériorent pas.
maxrandwrt
Objectif
Indique un seuil (en pages de 4 ko) pour que les écritures aléatoires s'accumulent dans la mémoire RAM avant que les pages suivantes ne soient vidées, puis copiées sur le disque par l'algorithme d'écriture.
Ajustement
Le seuil d'écriture aléatoire est calculé fichier par fichier. La valeur maximale indique la plus grosse taille de fichier, en pages. Vous pouvez modifier cette valeur si la commande vmstat n montre des pics de temps de sortie de page et d'attente d'E/S à intervalles réguliers (généralement lorsque le démon de synchronisation écrit des pages sur le disque). Il est utile de fixer cette valeur à 1 ou plus si de nombreuses E/S se produisent lors de l'exécution de la commande syncd . Une valeur de 0 désactive l'écriture aléatoire en arrière-plan et indique que les écritures aléatoires restent dans la RAM jusqu'à ce qu'une opération de synchronisation se produise. La définition du paramètre accordable maxrandwrt permet de s'assurer que ces écritures sont transférées sur le disque avant l'opération de synchronisation. Toutefois, cela peut nuire aux performances, car le fichier est alors vidé à chaque fois avant une opération de synchronisation. Modifiez cette option pour améliorer le temps de réponse interactif du débit. Une fois le seuil atteint, toutes les pages suivantes sont évacuées vers le disque. Les pages jusqu'à la valeur seuil restent dans la RAM jusqu'à ce qu'une opération de synchronisation se produise.
numclust
Objectif
Spécifie le nombre de clusters de 16 Ko traités par l'algorithme d'écriture séquentielle de la VMM.
Ajustement
Utile pour augmenter si d'autres pages doivent être conservées en mémoire vive avant qu'elles ne soient planifiées pour les E-S, lorsque le modèle d'E-S est séquentiel. Il peut être judicieux d'augmenter cette valeur en cas d'utilisation de volumes logiques à bandes ou de matrices de disques.
numfsbufs
Objectif
Spécifie le numéro du système de fichiers " bufstructs.
Ajustement
Le système de fichiers doit être remonté. Si la VMM doit attendre un " bufstruct libre, elle place le processus sur la liste d'attente de la VMM avant que l'E/S de démarrage ne soit émise et le réveille dès qu'un " bufstruct est disponible. peut être augmenté en cas d'utilisation de volumes logiques à bandes ou de matrices de disques.
pd_npages
Objectif
Indique le nombre de pages qui doivent être supprimées dans un bloc de la mémoire vive lorsqu'un fichier est supprimé.
Ajustement
La valeur maximale indique la plus grosse taille de fichier, en pages. Les applications en temps réel ont un temps de réponse lent pendant que les fichiers sont supprimés. Il n'est utile de modifier cette option que pour les applications en temps réel. Si la réponse en temps réel est critique, l'ajustement de cette option peut améliorer le temps de réponse en répartitant la suppression des pages de fichier de la mémoire vive plus équitablement sur une charge de travail.
posix_aio_active
Objectif
Indique si l'extension de noyau AIO est utilisée et réservée.
Ajustement
Une valeur réglable de 1 indique que l'extension du noyau AIO est utilisée et épinglée.
posix_aio_maxreqs
Objectif
Indique le nombre maximal de demandes d'E-S asynchrones pouvant être en attente à la fois.
Ajustement
Le nombre indiqué inclut les demandes d'entrée-sortie en cours, ainsi que les demandes en attente dans les files d'attente à lancer. Le nombre maximal de demandes d'E-S asynchrones ne peut pas être inférieur à la valeur de AIO_MAX, comme défini dans le fichier /usr/include/sys/limits.h , mais peut être supérieur. Il est approprié pour un système ayant un volume élevé d'E/S asynchrones d'avoir un nombre maximum de demandes d'E/S asynchrones supérieur à AIO_MAX.
posix_aio_maxservers
Objectif
Indique le nombre maximal de serveurs AIO (processus de noyau dédiés au traitement d'E-S asynchrones) autorisés à traiter les demandes d'entrée-sortie de chemin lent.
Ajustement
La valeur de ce paramètre réglable est une valeur par processeur. La valeur du paramètre ajustable posix_aio_maxservers ne peut être inférieure à la valeur du paramètre ajustable posix_aio_minservers . Il ne peut jamais y avoir plus que la valeur de posix_aio_minservers paramètre ajustable demandes d'E/S asynchrones en cours à la fois, ce nombre limite donc la concurrence d'E/S possible.
posix_aio_minservers
Objectif
Indique le nombre minimal de serveurs AIO (processus de noyau dédiés au traitement d'E-S asynchrones) qui restent actifs pour traiter les demandes d'entrée-sortie de chemin lent.
Ajustement
La valeur de ce paramètre réglable est une valeur par unité centrale. La valeur du paramètre accordable posix_aio_minservers ne peut être supérieure à la valeur du paramètre accordable posix_aio_maxservers . Lorsque l'extension de noyau est chargée, aucun serveur AIO n'est créé, quels que soient les paramètres en cours ou par défaut. Cette manipulation permet une empreinte AIO minimale sur les systèmes où AIO n'est jamais utilisé. Au fur et à mesure que les demandes d'E/S sont initiées, des serveurs AIO sont créés pour les traiter jusqu'à ce que la valeur maximale autorisée par le paramètre paramétrable posix_aio_maxservers soit atteinte. Une fois que la valeur du paramètre ajustable posix_aio_minservers est dépassée, le nombre de serveurs ne devient pas inférieur à la valeur du paramètre ajustable posix_aio_minservers .
posix_aio_server_inactivity
Objectif
Indique combien de temps un serveur AIO dort sans traiter une demande d'entrée-sortie.
Ajustement
Lorsque la limite de temps est dépassée, le serveur s'arrête, à moins que le nombre de serveurs disponibles ne devienne inférieur à la valeur du paramètre paramétrable posix_aio_minservers . Dans ce cas, le serveur se remet en veille. Dans ce cas rare, la durée de sommeil du serveur est la plus longue des durées spécifiées pour la valeur actuelle et la valeur par défaut du paramètre paramétrable posix_aio_server_inactivity . Il s'agit d'un cas rare et indique qu'il peut y avoir un déséquilibre entre le nombre de serveurs disponibles et la quantité d'E-S.
posix_aio_delegateiotodriverkth
Objectif
Spécifie la valeur seuil pour déléguer les E/S asynchrones au thread du noyau du pilote vPMEM.
Ajustement
La sous-routine " lio_listio ou " lio_listio64 lance une liste de demandes d'E/S asynchrones en un seul appel. Si le nombre de demandes d'E/S asynchrones dans la liste est supérieur à la valeur du paramètre accordable posix_aio_delegateiotodrPivuerproksteh et que le périphérique sous-jacent est vPMEM, le pilote vPMEM délègue les E/S asynchrones au thread du noyau du pilote vPMEM afin d'améliorer les performances. Une valeur de 0 désactive le paramètre accordable posix_aio_delegateiotodrPivuerproksteh .
début de la modificationposix_ aio_queue_enhanced_searchfin de la modification
Objectif
Indique s'il faut utiliser un algorithme de recherche existant ou amélioré pour localiser la demande d'AIO dans la file d'attente.
Ajustement
Si la valeur de ce paramètre réglable est fixée à 1, un algorithme de recherche amélioré est utilisé pour localiser la demande d'AIO dans la file d'attente. Dans le cas contraire, un algorithme existant est utilisé. La performance de la demande de recherche AIO est améliorée grâce à l'algorithme de recherche amélioré. Pour passer d'un algorithme à l'autre, réglez le paramètre posix_ aio_queue_enhanced_search sur la valeur requise et redémarrez le système. Par défaut, la valeur du paramètre paramétrable posix_aio_queue_enhanced_search est fixée à 1 et utilise l'algorithme de recherche amélioré. En fixant la valeur du paramètre réglable à 0, on utilise l'algorithme existant.

Utilisation de la mémoire et statistiques

  • Pour afficher l'utilisation de la mémoire du système de fichiers, entrez la commande suivante :
    cat /proc/sys/fs/jfs2/memory_usage

    Elle renvoie le cache de métadonnées, le cache 'inode et l'utilisation totale de la mémoire en octets.

  • Pour afficher les statistiques du système de fichiers, entrez la commande suivante :
    cat /proc/sys/fs/jfs2/statistics

    Cette méthode renvoie le nombre d'occurrences du " icache, de manques du " icache et d'activations du " icache.

  • Pour afficher les statistiques du système relatives à la prise en charge LBP, telles que le nombre de fois où la valeur hors tampon apparaît et le nombre de fois où l'opération unmap a échoué, entrez la commande suivante :
    cat/proc/sys/disk/lbp/statistics

Security

Attention aux utilisateurs RBAC: Cette commande peut effectuer des opérations privilégiées. Seuls les utilisateurs privilégiés peuvent exécuter des opérations privilégiées. Pour plus d'informations sur les autorisations et les privilèges, voir Base de données des commandes privilégiées dans Sécurité. Pour obtenir la liste des privilèges et des autorisations associés à cette commande, voir la commande 'lssecattr ou la sous-commande 'getcmdattr

Exemples

  1. Pour répertorier la valeur actuelle et la valeur de redémarrage, la plage, l'unité, le type et les dépendances des paramètres réglables gérés par la commande ioo , entrez la commande suivante :
    ioo -L 
  2. Pour répertorier les valeurs actuelles, par défaut et de redémarrage, la plage, l'unité et le type du paramètre accordable " j2_recoveryMode, entrez la commande suivante :
    ioo -L j2_recoveryMode
    Le résultat peut être similaire à la sortie suivante:
    NAME              CUR    DEF    BOOT   MIN    MAX    UNIT          TYPE
    -----------------------------------------------------------------------
    recoveryMode       1      1       1     0      1      n/a            D
    -----------------------------------------------------------------------
  3. Pour afficher les informations d'aide pour le paramètre j2_nPagesPerWriteBehindCluster tunable, entrez la commande suivante :
    ioo -h j2_nPagesPerWriteBehindCluster 
  4. Pour définir le paramètre accordable maxrandwrt sur 4 après le prochain redémarrage, entrez la commande suivante :
    ioo -r -o maxrandwrt=4
  5. Pour réinitialiser définitivement tous les paramètres réglables du " ioo sur leur valeur par défaut, entrez la commande suivante :
    ioo -p -D 
  6. Pour répertorier la valeur de redémarrage de tous les paramètres réglables de ioo , entrez la commande suivante :
    ioo -r -a
  7. Pour lister au format tableur la valeur actuelle et la valeur de redémarrage, la plage, l'unité, le type et les dépendances des paramètres tunables gérés par la commande ioo , entrez la commande suivante :
    ioo -x