Ce paramètre détermine un mécanisme de pré-extraction au niveau des fichiers intitulé zfetch. Ce mécanisme examine les modèles de lecture des fichiers et anticipe certaines lectures, ce qui permet de réduire les temps d'attente de l'application. Le comportement actuel présente deux inconvénients :
Les modèles de lecture séquentielle composés de petites lectures atteignent souvent le cache. Dans ce cas, le comportement actuel consomme une grande quantité de temps CPU en tentant de détecter les E/S suivantes à émettre, tandis que les performances sont davantage régies pas la disponibilité du CPU.
Le code zfetch a été observé afin de limiter l'évolutivité de certaines charges. Vous pouvez utiliser les commandes lockstat –i ou er_kernel décrites ci-après pour effectuer le profilage du CPU :
http://www.oracle.com/technetwork/java/index.html
Vous pouvez désactiver la pré-extraction en configurant zfs_prefetch_disable dans le fichier /etc/system.
La pré-extraction au niveau du périphérique zfs_vdev_cache_size est désactivée. Cela signifie que le réglage de vdev cache shift n'est plus nécessaire si zfs_vdev_cache_size est désactivé.
Valeur booléenne
0 (activé)
0 (activé) ou 1 (désactivé)
Oui
Non
Si les résultats de er_kernel démontrent des délais importants des fonctions zfetch_* ou si le profilage des verrous avec lockstat démontre des conflits de verrous zfetch, envisagez alors de désactiver la pré-extraction au niveau du fichier.
Instable