Quand on fait des écritures à une vitesse plus rapide que les disques ne peuvent écrire (ce qui est toujours le cas, sinon on a pas besoin de cache), le cache se rempli très vite (vu qu'il y a plus de données qui entrent dans le cache que de données qui en sortent).
Donc le cache est toujours saturé. Et lorsque le cache est saturé, pour écrire dans le cache il faut d'abord qu'une partie des données en cache soient réellement écrites sur le disque.
Et donc au bout de quelques secondes ou minutes d'utilisation, on obtient les mêmes performances qu'un contrôleur sans cache, non ?
optimiser la lecture en gardant les blocs les plus lus
il me semble que linux fait ça très bien déjà, et vu qu'il n'y a pas besoin que ce cache survive à un arrêt du système, on peut très bien laisser linux s'en occuper. D'autant plus que ça doit certainement être moins coûteux pour le système de lire une page de cache en mémoire que de demander une page au contrôleur.
[^] # Re: Btrfs
Posté par __o . En réponse à la dépêche Le noyau Linux est disponible en version 3.0. Évalué à 1.
Intuitivement, ça a un intérêt très limité:
Quand on fait des écritures à une vitesse plus rapide que les disques ne peuvent écrire (ce qui est toujours le cas, sinon on a pas besoin de cache), le cache se rempli très vite (vu qu'il y a plus de données qui entrent dans le cache que de données qui en sortent).
Donc le cache est toujours saturé. Et lorsque le cache est saturé, pour écrire dans le cache il faut d'abord qu'une partie des données en cache soient réellement écrites sur le disque.
Et donc au bout de quelques secondes ou minutes d'utilisation, on obtient les mêmes performances qu'un contrôleur sans cache, non ?
il me semble que linux fait ça très bien déjà, et vu qu'il n'y a pas besoin que ce cache survive à un arrêt du système, on peut très bien laisser linux s'en occuper. D'autant plus que ça doit certainement être moins coûteux pour le système de lire une page de cache en mémoire que de demander une page au contrôleur.