Ajustez les paramètres d'ossfs afin de maximiser le débit de lecture pour les charges de travail en lecture seule.
S'applique à ossfs 1.91.3 et versions ultérieures. Téléchargez la dernière version depuis Install ossfs.
Modes de lecture
ossfs propose trois modes de lecture adaptés à différentes charges de travail.
Mode par défaut
Ce mode convient particulièrement aux petits fichiers qui tiennent dans le cache de pages ainsi qu'aux grands fichiers faisant l'objet de lectures aléatoires. Si les performances de lecture des images d'entraînement IA sont médiocres en mode de lecture directe malgré certaines opérations de lecture aléatoire, basculez vers le mode par défaut.
ossfs met en cache les données des fichiers à la fois en mémoire et sur le disque local, ce qui consomme au total un espace de cache équivalent au double de la taille du fichier.
Avec 6 Go de cache de pages disponible pour les pages sales, le mode par défaut prend théoriquement en charge des fichiers jusqu'à 3 Go.
Définissez
parallel_countpour les téléchargements simultanés etmultipart_sizepour la taille des blocs de téléchargement.
Mode de lecture directe
Privilégiez ce mode pour les lectures séquentielles de grands fichiers avec un accès aléatoire limité, comme le chargement de grands fichiers Safetensors dans des scénarios de raisonnement IA.
Activez ce mode à l'aide de l'option
-odirect_read.ossfs met les données en tampon dans la plage
[-direct_read_backward_chunks * direct_read_chunk_size, +direct_read_prefetch_chunks * direct_read_chunk_size]. Valeurs par défaut :direct_read_chunk_size= 4 Mo,direct_read_prefetch_chunks= 32,direct_read_backward_chunks= 1, soit une fenêtre de[-4 Mo, +128 Mo]. Les lectures aléatoires limitées sont prises en charge. Par exemple, si des lectures consécutives de fichiers Safetensors se situent dans la plage[-32 Mo, +32 Mo], définissez-odirect_read_backward_chunks=8pour conserver 32 Mo avant l'offset actuel.Ajustez
direct_read_prefetch_chunksetdirect_read_chunk_sizeafin d'accroître le préchargement parallèle et de maximiser la bande passante.
Mode de lecture hybride
Optimal pour les charges de travail mixtes combinant petits fichiers (mises en cache dans le cache de pages) et grands fichiers avec un accès aléatoire limité, tels que le chargement de grands fichiers Safetensors dans des scénarios d'inférence IA. Pour les lectures aléatoires couvrant de larges plages d'offsets, le mode par défaut offre de meilleures performances.
Activez ce mode à l'aide de l'option
-odirect_read.Définissez
direct_read_local_file_cache_size_mbcomme seuil de basculement vers la lecture directe. Par exemple, avec 6 Go de cache de pages, définissez-odirect_read_local_file_cache_size_mb=3072pour effectuer le basculement lorsque les données téléchargées atteignent 3 Go.ossfs met les données en tampon dans la plage
[-direct_read_backward_chunks * direct_read_chunk_size, +direct_read_prefetch_chunks * direct_read_chunk_size]. Valeurs par défaut :direct_read_chunk_size= 4 Mo,direct_read_prefetch_chunk= 32,direct_read_backward_chunks= 1, soit une fenêtre de[-4 Mo, +128 Mo]. Les lectures aléatoires limitées sont prises en charge. Par exemple, si des lectures consécutives de fichiers Safetensors se situent dans la plage[-32 Mo, +32 Mo], définissez-odirect_read_backward_chunks=8pour conserver 32 Mo avant l'offset actuel.Ajustez
direct_read_prefetch_chunksetdirect_read_chunk_sizeafin d'accroître le préchargement parallèle et de maximiser la bande passante.
Recommandations
Si ossfs lit et écrit simultanément dans le même fichier, utilisez le mode de lecture par défaut.
-
Si ossfs se contente de lire des fichiers, ou s'il lit et écrit dans des fichiers différents :
Type de fichier
Mode recommandé
Uniquement des petits fichiers
Utilisez le mode de lecture par défaut.
Uniquement des grands fichiers
-
Pour les lectures séquentielles ou les lectures aléatoires de fichiers Safetensors avec des plages d'offsets étroites, utilisez le mode de lecture directe.
-
Pour les lectures aléatoires avec de larges plages d'offsets, utilisez le mode de lecture par défaut.
-
En cas de doute, ou si les performances restent médiocres après ajustement de direct_read_backward_chunks, utilisez le mode par défaut.
Petits fichiers et grands fichiers
-
Pour les lectures séquentielles ou les lectures aléatoires de fichiers Safetensors avec des plages d'offsets étroites, utilisez le mode de lecture hybride.
-
Pour les lectures aléatoires avec de larges plages d'offsets, en cas de doute, ou si les performances restent médiocres après ajustement de direct_read_backward_chunks, utilisez le mode par défaut.
RemarqueSi les performances du mode de lecture directe ou du mode de lecture hybride sont insuffisantes, basculez vers le mode par défaut, qui met les données en cache sur le disque local. Les E/S disque deviennent alors le goulot d'étranglement ; utilisez un disque haute performance tel qu'ESSD AutoPL avec des paramètres de performances provisionnées et burst appropriés.
-