DeepSeek’in Fire-Flyer Dosya Sistemi
(github.com/deepseek-ai)Fire-Flyer dosya sistemi
Fire-Flyer dosya sistemi (3FS), yapay zeka eğitimi ve çıkarım iş yüklerinin sorunlarını çözmek için tasarlanmış yüksek performanslı dağıtık bir dosya sistemidir. Modern SSD'ler ve RDMA ağlarını kullanarak dağıtık uygulama geliştirmeyi basitleştiren paylaşımlı bir depolama katmanı sunar.
Performans ve kullanılabilirlik
- Ayrıştırılmış mimari: Binlerce SSD'nin ve yüzlerce depolama düğümünün ağ bant genişliğini birleştirerek uygulamaların yerellikten bağımsız şekilde depolama kaynaklarına erişmesini sağlar.
- Güçlü tutarlılık: Chain Replication with Apportioned Queries (CRAQ) uygulayarak güçlü tutarlılık sağlar ve uygulama kodunu daha basit ve anlaşılır hale getirir.
- Dosya arayüzü: Durumsuz metadata hizmeti, işlemsel bir anahtar-değer deposu (ör. FoundationDB) üzerine geliştirilmiştir. Dosya arayüzü yaygın olarak bilinir ve her yerde kullanılır. Yeni bir depolama API'si öğrenmeye gerek yoktur.
Çeşitli iş yükleri
- Veri hazırlama: Veri analizi pipeline'larının çıktısını hiyerarşik dizin yapısında düzenler ve büyük miktardaki ara çıktıyı verimli şekilde yönetir.
- Data loader: Eğitim örneklerine compute node'lar genelinde rastgele erişim sağlar; böylece veri setinin önceden yüklenmesi veya karıştırılması gerekmez.
- Checkpointing: Büyük ölçekli eğitim için yüksek hızlı paralel checkpointing destekler.
- KVCache for Inference: DRAM tabanlı önbelleğe almaya maliyet açısından verimli bir alternatif sunar; yüksek throughput ve oldukça büyük kapasite sağlar.
Performans
1. Tepe throughput
- 3FS kümesinin büyük ölçekli okuma stres testinde yaklaşık 6.6 TiB/s nihai toplam okuma throughput'una ulaşıldı.
2. GraySort
- Büyük ölçekli veri kümelerinin sıralama performansını ölçen GraySort benchmark'ı ile değerlendirildi. 110.5 TiB veriyi 8.192 partition'a sıralamak 30 dakika 14 saniye sürdü ve ortalama throughput 3.66 TiB/dakika olarak gerçekleşti.
3. KVCache
- LLM çıkarım sürecini optimize etmek için KVCache tekniği kullanılır. Decoder katmanındaki önceki token'ların anahtar ve değer vektörleri önbelleğe alınarak gereksiz hesaplama önlenir. Tepe throughput en fazla 40 GiB/s seviyesine ulaştı.
Belgeler
- Tasarım notları
- Kurulum kılavuzu
- USRBIO API referansı
- P spesifikasyonu
Kaynak kodunu inceleme
- Kaynak kodunu incelemek için GitHub'da 3FS deposunu klonlayabilirsiniz.
Sorun bildirme
- Sorun bildirmek için GitHub Issues sayfasını ziyaret edebilirsiniz.
1 yorum
Hacker News yorumları
Bu tasarım ilk olarak burada tanıtıldı: link
3FS, yapay zeka eğitimi sırasında hesaplama düğümlerinde örnek verilerin toplu okunması senaryosunda kullanılıyor
3FS, örnek okumayı tamamlamak için Linux tabanlı AIO ve io_uring arayüzlerini kullanıyor
DeepSeek ile OpenAI/Anthropic arasındaki farklardan biri, uygulamacılar ile akademisyenler arasındaki fark
Dağıtık dosya sistemleri en zorlu yazılımlardan biri olarak görülüyor
İlgili araştırma makalesi: link
FUSE tabanlı bir tasarımla bu performansı nasıl elde ettiklerini merak ettim
OpenAI ve benzerleri de sistemlere derinlemesine dahil oluyor ama başka yerlerde bu kadar özen görmek zor
Kesinlikle üretkenler
Şu anda popüler olan sistemlerin nerede ve nasıl yetersiz kaldığı net değil
Bunun K8s gibi bir orkestratöre taşınmasının bir faydası olup olmayacağını merak ediyorum
Bunun NIH sendromu olmadığını ikna edici biçimde açıklayabilecek biri var mı diye merak ediyorum