3FS : Un système de fichiers parallèle pour améliorer l'efficacité de l'accès aux données (DeepSeek Open Source Week Day 5)

Introduction générale

3FS (Fire-Flyer File System) est un système de fichiers parallèle open source développé par l'équipe DeepSeek, conçu pour les disques SSD modernes et les réseaux RDMA, dans le but d'améliorer considérablement l'efficacité de l'accès aux données. Il atteint un débit de lecture agrégé de 6,6 TiB/s et une vitesse d'écriture de 3,66 TiB/min dans un cluster de 180 nœuds, démontrant ainsi des performances étonnantes. En tant qu'un des résultats de la DeepSeek Open Source Week, 3FS n'est pas seulement un produit d'innovation technologique, mais reflète également l'engagement de l'équipe envers le partage de la communauté. Il subvertit la conception traditionnelle du système de fichiers distribués orienté disque, optimisé pour les caractéristiques du matériel moderne, et convient aux scénarios informatiques à grande échelle qui nécessitent un traitement efficace des données, tels que l'entraînement à l'IA et l'analyse des données massives (big data). Les développeurs et les utilisateurs professionnels peuvent accéder au code source via GitHub et le déployer et le personnaliser librement.

3FS:提升数据访问效率的并行文件系统(DeepSeek 开源周第五天)

 

Liste des fonctions

  • Accès aux données à haut débitLa solution de gestion de la bande passante : prend en charge 6,6 TiB/s en lecture et 3,66 TiB/min en écriture, en exploitant pleinement la bande passante du SSD et du réseau RDMA.
  • capacité de traitement parallèleLe système d'information sur la santé : Il permet à plusieurs nœuds de travailler ensemble pour améliorer l'efficacité du traitement des données dans les grappes à grande échelle.
  • Optimisation du matériel moderneLes systèmes de fichiers traditionnels ne sont pas adaptés aux SSD et aux réseaux RDMA, ce qui permet d'éliminer le goulot d'étranglement en matière de performances.
  • Open Source PersonnalisableLe code source complet est fourni afin que les utilisateurs puissent modifier et étendre les fonctionnalités en fonction de leurs besoins.
  • Prêt à l'emploi pour les environnements de productionLa solution est validée en production par l'équipe DeepSeek et peut être déployée directement dans des scénarios d'affaires réels.

 

Utiliser l'aide

Processus d'acquisition et d'installation

3FS, en tant que projet open source, nécessite quelques connaissances techniques pour être déployé. Ce qui suit est un guide d'installation et d'utilisation détaillé pour aider les utilisateurs à démarrer rapidement.

1. accès au code source

  • Ouvrez votre navigateur et visitez le site https://github.com/deepseek-ai/3FS.
  • Cliquez sur le bouton "Code" dans le coin supérieur droit de la page, et sélectionnez "Download ZIP" pour télécharger le fichier zip, ou utilisez la commande Git pour cloner le dépôt :
    git clone https://github.com/deepseek-ai/3FS.git
  • Une fois le téléchargement terminé, décompressez le fichier dans un répertoire local, par exemple/home/user/3FS.

2. préparation à l'environnement

3FS s'appuie sur du matériel moderne (disques SSD et réseaux RDMA) et un environnement Linux pour fonctionner. Assurez-vous que votre système remplit les conditions suivantes :

  • système d'exploitationUbuntu 20.04 ou une version plus récente est la distribution Linux recommandée.
  • exigences en matière de matérielClusters de serveurs prenant en charge les disques SSD NVMe et les réseaux RDMA tels qu'InfiniBand ou RoCE.
  • dépendant d'un logicielLes outils de compilation de base tels que Git, GCC, Make, etc. doivent être installés. Vous pouvez exécuter la commande suivante pour les installer :
    sudo apt update
    sudo apt install git gcc make
    

3. la compilation et l'installation

  • Allez dans le répertoire 3FS :
    cd /home/user/3FS
    
  • Vérifiez s'il existe d'autres descriptions de dépendances (généralement dans le fichierREADME.md), le cas échéant, installez-le conformément à la documentation.
  • Compiler le code source :
    make
    
  • Après une compilation réussie, installez le logiciel sur le système :
    sudo make install
    

    Une fois l'installation terminée, les exécutables et les fichiers de configuration de 3FS sont déployés dans le chemin d'accès par défaut du système (généralement le chemin d'accès/usr/local/bin).

4. configuration de la grappe

  • Modifiez le fichier de configuration (situé par défaut dans le répertoireconfigpar exemple3fs.conf), définir les informations relatives au nœud de la grappe :
    • Indiquez l'adresse IP du nœud, par exemplenode1=192.168.1.10.
    • Configurez le chemin de stockage SSD, par exemplestorage_path=/dev/nvme0n1.
    • Définissez les paramètres du réseau RDMA pour garantir une communication correcte entre les nœuds.
  • Après avoir sauvegardé la configuration, démarrez le service sur chaque nœud :
    3fs --config /path/to/3fs.conf
    

5. vérification de l'installation

  • Vérifier l'état du service :
    3fs --status
    
  • Si un message tel que "3FS running on 180 nodes" est renvoyé, le déploiement a réussi.

Principales fonctions

Accès aux données à haut débit

  • Montage d'un système de fichiersLe client a besoin d'un répertoire local pour monter 3FS : exécutez la commande suivante sur le client pour monter 3FS dans un répertoire local :
    mount -t 3fs /path/to/storage /mnt/3fs
    
  • récupérer des donnéesUtilisation directecatpeut-êtrecppour lire un fichier, par exemple :
    cat /mnt/3fs/large_file.txt
    

    Le système extrait automatiquement les données de plusieurs nœuds en parallèle à des vitesses allant jusqu'à 6,6 TiB/s.

  • écrire des donnéesCopier des fichiers dans le répertoire de montage :
    cp large_file.txt /mnt/3fs/
    

    Vitesse d'écriture jusqu'à 3,66 TiB/min.

traitement parallèle

  • Dans un environnement multi-nœuds, 3FS attribue automatiquement des tâches aux données. Les utilisateurs n'ont pas besoin d'intervenir manuellement, ils doivent simplement s'assurer que l'application prend en charge les E/S parallèles (par exemple, Hadoop ou les programmes MPI).
  • Exemple de test de performance parallèle :
    dd if=/dev/zero of=/mnt/3fs/testfile bs=1G count=10
    

    Observez si le débit est proche de la valeur attendue.

développement personnalisé

  • Modifier le code source : aller àsrcpour modifier les fichiers C/C++. Par exemple, ajuster la taille de la mémoire tampon pour optimiser une charge de travail spécifique.
  • Recompiler :
    make clean && make
    
  • Déployer la version modifiée :
    sudo make install
    

mise en garde

  • compatibilité matérielleLes performances peuvent être réduites si tous les nœuds prennent en charge les technologies RDMA et NVMe.
  • Configuration du réseauLe pare-feu doit ouvrir les ports liés à RDMA (par exemple 4791 par défaut) pour éviter toute interruption de la communication.
  • référence de la documentationSi vous rencontrez des problèmes lors de l'installation, consultez la page GitHub pour le fichierREADME.mdOu soumettre un problème pour obtenir de l'aide.

Avec les étapes ci-dessus, les utilisateurs peuvent rapidement construire et utiliser 3FS pour expérimenter ses capacités d'accès aux données efficaces. Qu'il s'agisse de formation à l'IA ou de traitement de données volumineuses, 3FS peut fournir un soutien solide.

 

En regardant la version de cette semaine, DeepSeek a construit une pile technologique complète pour les grands modèles :

  • Jour 1 - FlashMLANoyau de décodage MLA efficace optimisé pour le traitement de séquences de longueur variable
  • Jour 2 - DeepEPLe projet : Première bibliothèque de communication parallèle experte à source ouverte pour l'apprentissage et l'inférence de modèles MoE.
  • Jour 3 - DeepGEMMBibliothèque GEMM du 8e PC prenant en charge les calculs denses et les calculs MoE
  • Jour 4 - Stratégies de calcul parallèleLe système de gestion de l'information de la Commission européenne (CEI) comprend l'algorithme parallèle bidirectionnel DualPipe et l'EPLB Expert Parallel Load Balancer (Équilibreur de charge parallèle expert).
  • Jour 5 - 3FS et SmallpondInfrastructure de stockage et de traitement des données à haute performance
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...