Soluzione 1:
La suddivisione della cache del buffer è dannosa, ma l'effetto che ha è minimo. Immagino che sia così piccolo che è praticamente impossibile misurarlo.
Devi ricordare quei dati tra diversi punti di montaggio è anche non condivisibile.
Sebbene file system diversi utilizzino buffer di allocazione diversi, non è che la memoria sia allocata solo per stare lì e avere un bell'aspetto. Dati da slabtop
per un sistema che esegue 3 diversi file system (XFS, ext4, btrfs):
OBJS ACTIVE USE OBJ SIZE SLABS OBJ/SLAB CACHE SIZE NAME 42882 42460 99% 0.70K 1866 23 29856K shmem_inode_cache 14483 13872 95% 0.90K 855 17 13680K ext4_inode_cache 4096 4096 100% 0.02K 16 256 64K jbd2_revoke_table_s 2826 1136 40% 0.94K 167 17 2672K xfs_inode 1664 1664 100% 0.03K 13 128 52K jbd2_revoke_record_ 1333 886 66% 1.01K 43 31 1376K btrfs_inode_cache (many other objects)
Come puoi vedere, qualsiasi cache veramente considerevole ha un livello di utilizzo superiore al 90%. Pertanto, se utilizzi più file system in parallelo, il costo è circa pari alla perdita del 5% della memoria di sistema, inferiore se il computer non è un file server dedicato.
Soluzione 2:
Non credo ci sia un impatto negativo. Spesso ho ext3/ext4 mescolato con XFS (e persino ZFS) sulla stessa configurazione del server. Non descriverei le mie prestazioni come qualcosa di meno del previsto, dato l'hardware su cui sto girando.
[[email protected] ~]# mount
/dev/cciss/c0d0p2 on / type ext4 (rw)
/dev/cciss/c0d0p7 on /tmp type ext4 (rw,nobarrier)
/dev/cciss/c0d0p3 on /usr type ext4 (rw,nobarrier)
/dev/cciss/c0d0p6 on /var type ext4 (rw,nobarrier)
vol2/images on /images type zfs (rw,xattr)
vol1/ppro on /ppro type zfs (rw,noatime,xattr)
vol3/Lancaster_Test on /srv/Lancaster_Test type zfs (rw,noatime,xattr)
Sei preoccupato per uno scenario specifico? Quali filesystem sarebbero in gioco? Su che distribuzione sei?