Questa guida mostra come ottimizzare le prestazioni del driver CSI FUSE Cloud Storage su Google Kubernetes Engine (GKE).
Sebbene Cloud Storage FUSE offra flessibilità e scalabilità, una configurazione e un'ottimizzazione attente sono fondamentali per ottenere prestazioni ottimali. Le prestazioni di Cloud Storage FUSE possono differire da quelle di un file system POSIX in termini di latenza, throughput e coerenza. L'obiettivo della messa a punto è ridurre al minimo l'overhead delle operazioni sui metadati e massimizzare l'efficienza dell'accesso ai dati. Se stai utilizzando applicazioni AI/ML che consumano dati nei bucket Cloud Storage, l'ottimizzazione del driver CSI può ridurre i tempi di addestramento e inferenza delle tue applicazioni AI/ML.
Questa guida è rivolta a sviluppatori e machine learning engineer che vogliono migliorare le prestazioni delle loro applicazioni che accedono ai dati archiviati nei bucket Cloud Storage.
Prima di leggere questa pagina, assicurati di conoscere le nozioni di base di Cloud Storage, Kubernetes e del driver CSI di Cloud Storage FUSE. Assicurati di controllare anche i requisiti della versione GKE per le funzionalità specifiche che vuoi utilizzare.
Configura le opzioni di montaggio
Il driver CSI di Cloud Storage FUSE supporta le opzioni di montaggio per configurare il modo in cui i bucket Cloud Storage vengono montati sul file system locale. Per l'elenco completo delle opzioni di montaggio supportate, consulta la documentazione del file della CLI Cloud Storage FUSE.
Puoi specificare le opzioni di montaggio nei seguenti modi, a seconda del tipo di volume che utilizzi:
Volume temporaneo CSI
Se utilizzi volumi effimeri CSI, specifica le opzioni di montaggio nel
spec.volumes[n].csi.volumeAttributes.mountOptions
campo del manifest del tuo pod.
Devi specificare le opzioni di montaggio come stringa, con i flag separati da virgole e senza spazi. Ad esempio:
mountOptions: "implicit-dirs,file-cache:enable-parallel-downloads:true,file-cache:download-chunk-size-mb:3"
Volume permanente
Se utilizzi volumi permanenti, specifica le opzioni di montaggio nel
spec.mountOptions
campo del file manifest PersistentVolume.
Devi specificare le opzioni di montaggio sotto forma di elenco. Ad esempio:
mountOptions:
- implicit-dirs
- file-cache:enable-parallel-downloads:true
- file-cache:download-chunk-size-mb:3
Considerazioni sul montaggio
Tieni presenti le seguenti considerazioni quando configuri i mount con il driver CSI:
Considerazioni generali
- I seguenti flag non sono consentiti:
app-name
,temp-dir
,foreground
,log-file
,log-format
,key-file
,token-url
ereuse-token-from-url
. - Cloud Storage FUSE non rende visibili le directory implicite per impostazione predefinita.
- Se vuoi montare solo una directory nel bucket anziché l'intero
bucket, passa il percorso relativo della directory utilizzando il
flag
only-dir=relative/path/to/the/bucket/root
.
Sicurezza e autorizzazioni
- Se utilizzi un contesto di sicurezza per il pod o il container o se l'immagine del container utilizza un gruppo o un utente non root, devi impostare i flag di montaggio
uid
egid
. Inoltre, devi utilizzare i flag di montaggiofile-mode
edir-mode
per impostare le autorizzazioni del file system. Tieni presente che non puoi eseguire comandichmod
,chown
ochgrp
su un file system FUSE di Cloud Storage, quindi utilizza i flag di montaggiouid
,gid
,file-mode
edir-mode
per ottenere l'accesso per un gruppo o un utente non root.
Opzioni di montaggio del kernel Linux
- Se devi configurare le opzioni di montaggio del kernel Linux, puoi passare le opzioni utilizzando il flag
o
. Ad esempio, se non vuoi consentire l'esecuzione diretta di eventuali file binari sul file system montato, imposta il flago=noexec
. Ogni opzione richiede un flag separato, ad esempioo=noexec
,o=noatime
. Sono consentite solo le seguenti opzioni:exec
,noexec
,atime
,noatime
,sync
,async
edirsync
.
Configurare la memorizzazione nella cache
Questa sezione fornisce una panoramica delle opzioni di memorizzazione nella cache disponibili con il driver CSI di Cloud Storage FUSE per migliorare le prestazioni.
Memorizzazione nella cache dei file
Puoi utilizzare il driver CSI di Cloud Storage FUSE con la memorizzazione nella cache dei file per migliorare le prestazioni di lettura delle applicazioni che gestiscono file di piccole dimensioni dai bucket Cloud Storage. La funzionalità della cache dei file di Cloud Storage FUSE è una cache di lettura basata su client che consente di eseguire più rapidamente letture ripetute dei file dallo spazio di archiviazione della cache di tua scelta.
Puoi scegliere tra una serie di opzioni di archiviazione per la cache di lettura, tra cui SSD locali, archiviazione basata su Persistent Disk e disco RAM (memoria), in base alle tue esigenze in termini di prezzo e prestazioni.
Attivare e utilizzare la memorizzazione nella cache dei file
Per impostazione predefinita, la funzionalità di memorizzazione nella cache dei file è disattivata su GKE. Devi attivare la memorizzazione nella cache dei file con il driver CSI di Cloud Storage FUSE.
Per attivare e controllare la memorizzazione nella cache dei file, imposta l'attributo volumefileCacheCapacity
o utilizza l'opzione di montaggio file-cache:max-size-mb
.
Per impostazione predefinita, GKE utilizza un volume emptyDir
per la memorizzazione nella cache dei file FUSE Cloud Storage supportata dall'archiviazione temporanea configurata sul nodo. Potrebbe essere il disco di avvio collegato al nodo o un SSD locale sul nodo. Se attivi
SSD locale
sul nodo, GKE utilizza l'SSD locale per eseguire il backup del volume emptyDir
.
Puoi configurare un volume della cache di lettura personalizzato per il contenitore sidecar per sostituire il volume emptyDir
predefinito per la memorizzazione nella cache dei file nelle operazioni di lettura.
Per saperne di più sulle best practice per la memorizzazione nella cache dei file, consulta Prestazioni di Cloud Storage FUSE.
Seleziona lo spazio di archiviazione per il backup della cache dei file
Per selezionare lo spazio di archiviazione per il backup della cache dei file, tieni conto di queste considerazioni:
- Per le famiglie di VM GPU e CPU che supportano l'SSD locale (ad esempio le VM A3), ti consigliamo di utilizzare l'SSD locale.
- Per le VM A3 e versioni successive, GKE configura automaticamente gli SSD locali per il consumo da parte dei pod.
- Se la famiglia di VM non supporta le unità SSD locali, GKE utilizza il disco di avvio per la memorizzazione nella cache. Il tipo di disco predefinito per il disco di avvio su GKE è
pd-balanced
.
- Per le famiglie di VM TPU, in particolare v6 e versioni successive, consigliamo di utilizzare la RAM come cache dei file per ottenere le migliori prestazioni, poiché queste istanze VM hanno una RAM più grande.
- Quando utilizzi la RAM, presta attenzione agli errori di esaurimento della memoria (OOM), in quanto causano interruzioni dei pod.
- Per altre famiglie di TPU, ti consigliamo di utilizzare
pd-balanced
opd-ssd
. Il tipo di disco predefinito per il disco di avvio su GKE èpd-balanced
.
- Evita di utilizzare il disco di avvio per la memorizzazione nella cache, in quanto ciò può comportare un calo delle prestazioni e interruzioni impreviste. Valuta invece la possibilità di utilizzare un PersistentVolume supportato da un disco permanente.
Utilizzare la memorizzazione nella cache dei file basata su disco RAM
Puoi utilizzare il disco RAM per la memorizzazione nella cache dei file o il download parallelo per ridurre il sovraccarico dell'utilizzo di un disco di avvio o di un Persistent Disk, se utilizzi una VM TPU con RAM sufficientemente grande.
Per utilizzare un disco RAM con il driver CSI di Cloud Storage FUSE, aggiungi quanto segue al tuo manifest:
volumes:
- name: gke-gcsfuse-cache
emptyDir:
medium: Memory
Cache delle statistiche
Il driver CSI di Cloud Storage FUSE migliora le prestazioni memorizzando nella cache i metadati dei file, come le dimensioni e la data di modifica. Il driver CSI abilita questa cache delle statistiche per impostazione predefinita e riduce la latenza archiviando le informazioni localmente anziché richiederle ripetutamente da Cloud Storage. Puoi configurarne la dimensione massima (il valore predefinito è 32 MB) e il tempo di permanenza dei dati nella cache (il valore predefinito è 60 secondi). Ottimizzando la cache dei metadati, puoi ridurre le chiamate API a Cloud Storage per migliorare le prestazioni e l'efficienza dell'applicazione riducendo al minimo il traffico di rete e la latenza.
Per saperne di più sulle best practice per la memorizzazione nella cache delle statistiche, consulta la panoramica della memorizzazione nella cache di Cloud Storage FUSE.
Utilizza il pre-caricamento dei metadati per precompilare la cache dei metadati
La funzionalità di prelettura dei metadati consente al driver CSI di Cloud Storage FUSE di caricare in modo proattivo i metadati pertinenti sugli oggetti nel bucket Cloud Storage nelle cache di Cloud Storage FUSE. Questo approccio riduce le chiamate a Cloud Storage ed è particolarmente utile per le applicazioni che accedono a set di dati di grandi dimensioni con molti file, come i carichi di lavoro di addestramento AI/ML.
Questa funzionalità richiede GKE 1.31.3-gke.1162000 o versioni successive.
Per ottenere miglioramenti delle prestazioni dal pre-caricamento dei metadati, devi impostare il valore TTL (time to live) degli elementi della cache dei metadati su illimitato. In genere, l'impostazione di un TTL impedisce che i contenuti memorizzati nella cache diventino obsoleti. Quando imposti il TTL su illimitato, devi prendere le precauzioni del caso per non modificare i contenuti del bucket out-of-band (ovvero consentire a un altro attore o a un altro carico di lavoro di modificarlo). Le modifiche out-of-band non sono visibili a livello locale e potrebbero causare problemi di coerenza.
Per attivare il pre-caricamento dei metadati, apporta le seguenti modifiche alla configurazione. Ti consigliamo di attivare questa funzionalità sui volumi che vengono letti molto.
- Imposta l'attributo volume
gcsfuseMetadataPrefetchOnMount: true
. - Aggiorna le seguenti opzioni di montaggio:
metadata-cache:stat-cache-max-size-mb:-1
per annullare l'impostazione del limite di capacità della cache.file-system:kernel-list-cache-ttl-secs:-1
per evitare che gli elementi della cache dell'elenco del kernel scadano.metadata-cache:ttl-secs:-1
per impedire la scadenza degli elementi dei metadati memorizzati nella cache.
Per un esempio, consulta l'esempio di codice in Migliorare le prestazioni di lettura di file di grandi dimensioni utilizzando il download parallelo.
Cache dell'elenco
Per velocizzare le schede della directory per le applicazioni, puoi attivare la cache dell'elenco. Questa funzionalità memorizza le schede della directory in memoria in modo che le richieste ripetute possano essere gestite più rapidamente. La cache dell'elenco è disabilitata per impostazione predefinita. Puoi attivarla impostando il parametro kernel-list-cache-ttl-secs
nelle opzioni di montaggio. Questo valore definisce la durata della cache delle schede.
Migliorare le prestazioni di lettura dei file di grandi dimensioni utilizzando il download parallelo
Puoi utilizzare il download parallelo di Cloud Storage FUSE per accelerare la lettura di file di grandi dimensioni da Cloud Storage per i download multithread. Il download parallelo di Cloud Storage FUSE può essere particolarmente utile per i casi d'uso di pubblicazione di modelli con letture di dimensioni superiori a 1 GB.
Ecco alcuni esempi comuni:
- Erogazione del modello, in cui è necessario un buffer di prefetch di grandi dimensioni per accelerare il download del modello durante l'avvio dell'istanza.
- Ripristini dei punti di controllo, in cui è necessaria una cache di dati di sola lettura per migliorare l'accesso una tantum di più file di grandi dimensioni.
Utilizza il download parallelo per le applicazioni che eseguono letture di file di grandi dimensioni a thread singolo. Le applicazioni con un elevato parallelismo di lettura (che utilizzano più di otto thread) potrebbero riscontrare prestazioni inferiori con questa funzionalità.
Per utilizzare il download parallelo con il driver CSI di Cloud Storage FUSE:
Crea un cluster con la memorizzazione nella cache dei file abilitata, come descritto in Abilitare e utilizzare la memorizzazione nella cache dei file.
Nel file manifest, configura queste impostazioni aggiuntive utilizzando le opzioni di montaggio per abilitare il download parallelo:
- Imposta
file-cache:enable-parallel-downloads:true
. - Regola
file-cache:parallel-downloads-per-file
,file-cache:parallel-downloads-per-file
,file-cache:max-parallel-downloads
efile-cache:download-chunk-size-mb
in base alle esigenze.
- Imposta
(Facoltativo) Se necessario, ti consigliamo di ottimizzare questi attributi del volume:
file-cache:cache-file-for-range-read
per letture casuali o parziali.metadata-cache:stat-cache-max-size-mb
emetadata-cache:type-cache-max-size-mb
per i carichi di lavoro di addestramento.
Riduci il consumo della quota dai controlli di controllo dell'accesso
Per impostazione predefinita, il driver CSI esegue controlli di controllo dell'accesso'accesso per assicurarsi che l'account di servizio del pod abbia accesso ai bucket Cloud Storage. Ciò comporta un aggravio aggiuntivo sotto forma di API Kubernetes Service, Security Token Service e chiamate IAM. A partire dalla versione GKE 1.29.9-gke.1251000, puoi utilizzare l'attributo volume skipCSIBucketAccessCheck
per saltare questi controlli ridondanti e ridurre il consumo di quota.
Esempio di pubblicazione di inferenza
L'esempio seguente mostra come attivare il download parallelo per il servizio di inferenza:
Crea un manifest PersistentVolume e PersistentVolumeClaim con la seguente specifica:
apiVersion: v1 kind: PersistentVolume metadata: name: serving-bucket-pv spec: accessModes: - ReadWriteMany capacity: storage: 64Gi persistentVolumeReclaimPolicy: Retain storageClassName: example-storage-class claimRef: namespace: NAMESPACE name: serving-bucket-pvc mountOptions: - implicit-dirs #avoid if list cache enabled and doing metadata prefetch - metadata-cache:ttl-secs:-1 - metadata-cache:stat-cache-max-size-mb:-1 - metadata-cache:type-cache-max-size-mb:-1 - file-cache:max-size-mb:-1 - file-cache:cache-file-for-range-read:true - file-system:kernel-list-cache-ttl-secs:-1 - file-cache:enable-parallel-downloads:true csi: driver: gcsfuse.csi.storage.gke.io volumeHandle: BUCKET_NAME volumeAttributes: skipCSIBucketAccessCheck: "true" gcsfuseMetadataPrefetchOnMount: "true" --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: serving-bucket-pvc namespace: NAMESPACE spec: accessModes: - ReadWriteMany resources: requests: storage: 64Gi volumeName: serving-bucket-pv storageClassName: example-storage-class
Sostituisci i seguenti valori:
- NAMESPACE: lo spazio dei nomi Kubernetes in cui vuoi eseguire il deployment del pod.
- BUCKET_NAME: il nome del bucket Cloud Storage specificato durante la configurazione dell'accesso ai bucket Cloud Storage.
Puoi specificare un'underscore (
_
) per montare tutti i bucket a cui può accedere il servizio account Kubernetes. Per scoprire di più, consulta Montaggio dinamico nella documentazione di Cloud Storage FUSE.
Applica il manifest al cluster:
kubectl apply -f PV_FILE_PATH
Sostituisci PV_FILE_PATH con il percorso del file YAML.
Crea un file manifest del pod con la seguente specifica per utilizzare la richiesta di volume permanente, a seconda che tu stia utilizzando la memorizzazione nella cache dei file basata su SSD locali o la memorizzazione nella cache dei file basata su disco RAM:
SSD locale
apiVersion: v1 kind: Pod metadata: name: gcs-fuse-csi-example-pod namespace: NAMESPACE annotations: gke-gcsfuse/volumes: "true" gke-gcsfuse/cpu-limit: "0" gke-gcsfuse/memory-limit: "0" gke-gcsfuse/ephemeral-storage-limit: "0" spec: containers: # Your workload container spec ... volumeMounts: - name: serving-bucket-vol mountPath: /serving-data readOnly: true serviceAccountName: KSA_NAME volumes: - name: serving-bucket-vol persistentVolumeClaim: claimName: serving-bucket-pvc
Disco RAM
apiVersion: v1 kind: Pod metadata: name: gcs-fuse-csi-example-pod namespace: NAMESPACE annotations: gke-gcsfuse/volumes: "true" gke-gcsfuse/cpu-limit: "0" gke-gcsfuse/memory-limit: "0" gke-gcsfuse/ephemeral-storage-limit: "0" spec: containers: # Your workload container spec ... volumeMounts: - name: serving-bucket-vol mountPath: /serving-data readOnly: true serviceAccountName: KSA_NAME volumes: - name: gke-gcsfuse-cache # gcsfuse file cache backed by RAM Disk emptyDir: medium: Memory - name: serving-bucket-vol persistentVolumeClaim: claimName: serving-bucket-pvc
Applica il manifest al cluster:
kubectl apply -f POD_FILE_PATH
Sostituisci POD_FILE_PATH con il percorso del file YAML.
Configura gli attributi del volume
Gli attributi del volume ti consentono di configurare un comportamento specifico del driver CSI di Cloud Storage FUSE.
Il driver CSI di Cloud Storage FUSE non ti consente di specificare direttamente il file di configurazione di Cloud Storage FUSE. Puoi configurare alcuni dei campi nel file di configurazione utilizzando gli attributi del volume CSI FUSE di Cloud Storage. Il driver CSI gestisce la traduzione dei valori degli attributi del volume nei campi del file di configurazione.
Per l'elenco completo degli attributi del volume supportati, consulta il riferimento agli attributi del volume.
Puoi specificare gli attributi del volume nei seguenti modi:
- Nel campo
spec.csi.volumeAttributes
di un manifest PersistentVolume, se utilizzi volumi permanenti. - Nel campo
spec.volumes[n].csi.volumeAttributes
, se utilizzi volumi CSI effimeri.
Nel manifest, gli attributi del volume possono essere specificati come coppie chiave-valore. Ad esempio:
volumeAttributes:
mountOptions: "implicit-dirs"
fileCacheCapacity: "-1"
gcsfuseLoggingSeverity: warning
Metriche di Cloud Storage FUSE
Le seguenti metriche di Cloud Storage FUSE sono ora disponibili tramite l'API di monitoraggio GKE. Puoi trovare i dettagli sulle metriche di Cloud Storage FUSE, come etichette, tipo e unità, in Metriche di sistema GKE. Queste metriche sono disponibili per ogni pod che utilizza Cloud Storage FUSE e puoi utilizzarle per configurare gli approfondimenti per volume e bucket.
Le metriche sono disattivate per impostazione predefinita. Per attivarli, imposta l'attributo volume
disableMetrics
su "false".
Metriche del file system
Le metriche del file system monitorano le prestazioni e lo stato del file system, tra cui il numero di operazioni, gli errori e la velocità di esecuzione. Queste metriche possono aiutarti a identificare i colli di bottiglia e ottimizzare le prestazioni.
gcsfusecsi/fs_ops_count
gcsfusecsi/fs_ops_error_count
gcsfusecsi/fs_ops_latency
Metriche di Cloud Storage
Puoi monitorare le metriche di Cloud Storage, tra cui volume dei dati, velocità e attività di richiesta, per capire in che modo le tue applicazioni interagiscono con i bucket di Cloud Storage. Questi dati possono aiutarti a identificare le aree di ottimizzazione, ad esempio migliorare i pattern di lettura o ridurre il numero di richieste.
gcsfusecsi/gcs_download_bytes_count
gcsfusecsi/gcs_read_count
gcsfusecsi/gcs_read_bytes_count
gcsfusecsi/gcs_reader_count
gcsfusecsi/gcs_request_count
gcsfusecsi/gcs_request_latencies
Metriche della cache dei file
Puoi monitorare le metriche della cache dei file, tra cui il volume di lettura dei dati, la velocità e il tasso di successo della cache, per ottimizzare Cloud Storage FUSE e le prestazioni dell'applicazione. Analizza queste metriche per migliorare la tua strategia di memorizzazione nella cache e massimizzare gli hit della cache.
gcsfusecsi/file_cache_read_bytes_count
gcsfusecsi/file_cache_read_latencies
gcsfusecsi/file_cache_read_count
Best practice per l'ottimizzazione delle prestazioni
Questa sezione elenca alcune tecniche di ottimizzazione e tuning delle prestazioni consigliate per il driver CSI di Cloud Storage FUSE.
Utilizza i bucket di spazi dei nomi gerarchici (HNS): scegli i bucket HNS per ottenere un aumento sostanziale di 8 volte delle query al secondo (QPS) iniziali. Questa scelta facilita anche i rinominamenti delle directory rapidi e atomici, un requisito fondamentale per un checkpointing efficiente con Cloud Storage FUSE. I bucket HNS garantiscono un'esperienza simile a quella dei file supportando 40.000 richieste di lettura di oggetti e 8000 richieste di scrittura di oggetti al secondo, un miglioramento significativo rispetto alle 8000 richieste di lettura di oggetti e 1000 richieste di scrittura di oggetti al secondo offerte dai bucket flat.
Monta directory specifiche, se possibile:se il tuo carico di lavoro prevede l'accesso a una directory specifica all'interno di un bucket, utilizza il flag
--only-dir
durante il montaggio. Questo approccio mirato semplifica le chiamate all'elenco, in quanto limita l'ambito delle chiamateLookUpInode
, che richiedono una chiamatalist+stat
per ogni file o directory nel percorso specificato. Se limiti il montaggio alla sottodirectory obbligatoria, riduci al minimo queste chiamate, con un conseguente miglioramento delle prestazioni.Ottimizza la memorizzazione nella cache dei metadati:configura le cache dei metadati per massimizzare la loro capacità e imposta una durata (TTL) infinita. Questa pratica memorizza nella cache in modo efficace tutti i metadati a cui hai eseguito l'accesso per la durata del job, riducendo al minimo le richieste di accesso ai metadati a Cloud Storage. Questa configurazione è particolarmente utile per i volumi di sola lettura, in quanto elimina le ricerche ripetute dei metadati di Cloud Storage. Tuttavia, verifica che il consumo di memoria associato a queste cache di metadati di grandi dimensioni sia in linea con le funzionalità del tuo sistema.
Massimizza le risorse sidecar di GKE: Cloud Storage FUSE opera in un contenitore sidecar in un ambiente GKE. Per evitare i colli di bottiglia delle risorse, rimuovi le limitazioni al consumo di CPU e memoria per il contenitore sidecar. In questo modo, Cloud Storage FUSE può scalare l'utilizzo delle risorse in base alle esigenze del carico di lavoro, impedendo il throttling e garantendo una velocità in uscita ottimale.
Compila la cache dei metadati in modo proattivo:abilita il pre-caricamento dei metadati per il driver CSI. In questo modo, vengono compilati in modo efficiente i metadati e le cache degli elenchi, riducendo al minimo le chiamate ai metadati di Cloud Storage e accelerando l'esecuzione iniziale. Molti framework di ML eseguono questa operazione automaticamente, ma è fondamentale eseguire questo passaggio per il codice di addestramento personalizzato. Per scoprire di più, consulta Utilizzare il pre-caricamento dei metadati per precompilare la cache dei metadati.
Utilizza la cache dei file e i download paralleli:attiva la funzionalità della cache dei file, in particolare per i carichi di lavoro di addestramento con più epoche, in cui i dati vengono letti ripetutamente. La cache dei file memorizza i dati a cui si accede di frequente nell'archiviazione locale (SSD nel caso delle macchine A3), migliorando le prestazioni di lettura. Abbina questa funzionalità ai download paralleli, in particolare per il servizio dei carichi di lavoro, per accelerare il download di file di grandi dimensioni suddividendoli in blocchi più piccoli e scaricandoli contemporaneamente.
Ottimizza i checkpoint:per i checkpoint con Cloud Storage FUSE, consigliamo vivamente di utilizzare un bucket HNS. Se utilizzi un bucket non HNS, imposta il parametro
rename-dir-limit
su un valore elevato per supportare i rinominazioni delle directory spesso impiegate dai framework ML durante il checkpointing. Tuttavia, tieni presente che le rinominazioni delle directory nei bucket non HNS potrebbero non essere atomiche e potrebbero richiedere più tempo per essere completate.Attiva la memorizzazione nella cache degli elenchi:attiva la memorizzazione nella cache degli elenchi utilizzando il flag
--kernel-list-cache-ttl-secs
per migliorare ulteriormente il rendimento. Questa funzionalità memorizza nella cache le voci di directory e file, migliorando la velocità delle operazionils
. La memorizzazione nella cache degli elenchi è particolarmente utile per i carichi di lavoro che prevedono elenchi di directory completi ripetuti, comuni negli scenari di addestramento di AI/ML. Ti consigliamo di utilizzare la memorizzazione nella cache degli elenchi con montaggi in sola lettura per mantenere la coerenza dei dati.