Dans un test de performance, je veux contourner l'influence du cache du système Linux (y compris le cache de page / cache d'inode et ainsi de suite).
J'ai essayé le drapeau O_DIRECT, mais il s'est avéré que les E / S directes "apprécient" toujours l'effet d'un cache.
Existe-t-il un moyen complet de fermer l'effet du cache système?
Réponses:
(il tombe en fait donc ..) courez d'
sync
abord, puispagecache gratuit:
dentiers et inodes libres:
pagecache, dentiers et inodes gratuits:
Ensuite, vous pouvez commencer avec un cache propre, mais bien sûr, la mise en cache fonctionnera toujours.
la source
non, vous ne pouvez pas contourner le cache. Mais, cependant, vous pouvez forcer une synchronisation du système de fichiers (ce qui signifie, vider le cache et écrire les données sur le disque) avec l'appel système supplémentaire fsync (3).
Salutations, CK
la source