SSD’lerin Bilmediğiniz Gizli Özelliği: Over-Provisioning ile Diskimi Nasıl Hızlandırdım

SSD'lerin Bilmediğiniz Gizli Özelliği Over-Provisioning ile Diskimi Nasıl Hızlandırdım

Aktif olarak kullandığım bilgisayarıma üç yıl önce harici olarak taktığım SSD, ilk bir yılda gayet hızlı çalışıyordu. Sonra bir gün fark ettim ki dosya kopyalama süreleri eskisi gibi değil, özellikle disk doluluğu yüzde 85’i geçtikten sonra bariz bir yavaşlama başlamıştı. Forumlarda saatlerce araştırma yaptıktan sonra karşıma çıkan bir terim hayatımı değiştirdi: over-provisioning. Bu yazıda hem bu özelliğin ne olduğunu hem de kendi diskimde uyguladığım yöntemleri, karşılaştığım sonuçları paylaşacağım.

SSD Neden Zamanla Yavaşlar

SSD Neden Zamanla Yavaşlar?

Çoğu kullanıcı SSD’lerin mekanik parçası olmadığı için hiç yavaşlamayacağını düşünür. Oysa gerçek biraz farklı. NAND flash bellek hücrelerine veri yazmadan önce o hücrenin silinmesi gerekir; bu da “yaz amplifikasyonu” denen bir olguya yol açar. Disk doldukça, controller’ın boş blok bulması zorlaşır ve her yazma işlemi öncesinde daha fazla silme-yeniden düzenleme (garbage collection) işlemi yapılır. Bu da gözle görülür bir performans kaybına neden olur.

Benim SSD’imde yaşadığım durum tam olarak buydu: disk yüzde 90’ın üzerine çıktığında, özellikle video render işlemlerinde yazma hızları neredeyse yarı yarıya düşüyordu.

Over-Provisioning Nedir?

Over-provisioning (OP), SSD üzerinde kullanıcıya görünmeyen, ayrılmış bir yedek alan bırakma işlemidir. Üreticiler zaten fabrika çıkışında bir miktar OP alanı bırakır (genellikle toplam kapasitenin yüzde 7-10’u), ancak kullanıcı olarak manuel şekilde bu oranı artırmak mümkündür.

Bu yedek alan, controller’ın garbage collection işlemlerini daha rahat yapmasını sağlar. Yani disk dolu görünse bile, controller’ın arka planda “nefes alacak” bir alanı olur. Sonuç: daha az yazma amplifikasyonu, daha uzun disk ömrü ve daha istikrarlı performans.

Kaç Yıl Kullanılan Bir SSD’de Fark Yaratır mı?

Benim durumumda evet. 1TB’lık SSD’imde toplam kapasitenin yaklaşık yüzde 10’unu (100GB) manuel olarak ayrılmamış alan bıraktığımda, disk yüzde 95 dolu göstermesine rağmen, yazma hızlarında belirgin bir toparlanma yaşadım. Elbette bu benim kişisel gözlemim; SSD modeli, controller tipi ve NAND türüne göre sonuçlar değişebilir.


Kendi SSD’imde Nasıl Uyguladım?

Uyguladığım adımları olabildiğince açık anlatmak istiyorum, ama şunu baştan belirtmeliyim: bu işlemler disk üzerindeki bölümleme (partition) yapısını değiştirir, bu yüzden önce mutlaka yedek almanızı öneririm.

  1. Disk yönetimi üzerinden küçültme: Windows’ta “Disk Yönetimi” (Disk Management) aracını açıp, ana bölümü sağ tıklayıp “Küçült” (Shrink Volume) seçeneğini kullandım. Diskimin belirli bir yüzdesini kasıtlı olarak “ayrılmamış alan” (unallocated space) olarak bıraktım.
  2. Bu alanı formatlamadan bıraktım: Kritik nokta burası. Bu alanı yeni bir sürücü harfi vererek formatlamıyorsunuz; sadece boş ve ayrılmamış bırakıyorsunuz. Böylece işletim sistemi bu alanı görmez ama SSD controller’ı bu alanı garbage collection için kullanabilir.
  3. TRIM komutunun aktif olduğundan emin oldum: Windows’ta komut istemcisine fsutil behavior query DisableDeleteNotify yazarak TRIM’in aktif olup olmadığını kontrol ettim. Sonuç “0” ise TRIM aktiftir.

Linux kullanan arkadaşlarım için ise fstrim komutunun periyodik olarak çalıştırılması ve hdparm ile OP alanı ayarlanması benzer bir mantıkla işliyor, ancak bu konuda kendi deneyimim sınırlı olduğu için sadece Windows tarafındaki gözlemlerimi detaylı aktarıyorum.

Peki Bu Gerçekten Ne Kadar Fark Yaratıyor?

Dürüst olmak gerekirse, over-provisioning bir mucize değil. Disk zaten hafif dolulukta (yüzde 50-60 civarı) ise pratikte hissedilir bir fark yaratmıyor. Asıl fark, diskin kapasiteye yakın kullanıldığı senaryolarda ortaya çıkıyor. Benim gibi video düzenleme, büyük veri setleriyle çalışma gibi yoğun yazma senaryolarında bu fark daha belirgin oluyor.

Ayrıca üretici firmaların bazı “Pro” veya “Enterprise” serisi SSD’lerinde zaten daha yüksek oranda fabrika OP alanı bırakıldığını fark ettim; bu da neden bu modellerin tüketici modellerine göre daha istikrarlı performans sunduğunu açıklıyor.

Dikkat Etmeniz Gereken Noktalar

Bu işlemi kendim uygularken öğrendiğim birkaç önemli detayı paylaşmak istiyorum:

  • Yedekleme şart. Bölüm küçültme işlemi nadiren de olsa veri kaybına yol açabilir.
  • Aşırıya kaçmayın. Kapasitenin yüzde 20-25’inden fazlasını boş bırakmak, kullanılabilir alanı gereksiz yere azaltır. Yüzde 10-15 aralığı genel olarak makul bir denge sunuyor.
  • SLC cache ile karıştırmayın. Bazı SSD’lerde “SLC cache” adı verilen farklı bir hızlandırma mekanizması daha vardır; over-provisioning bundan bağımsız çalışır.
  • Her SSD’de aynı sonucu vermeyebilir. Controller mimarisi (örneğin DRAM’li ya da DRAM’siz tasarımlar) sonuçları etkiler.

Sonuç: Bu Küçük Ayar Gerçekten Değer mi?

Benim üç yıllık kullanım sürecimde over-provisioning, özellikle disk dolulukken yaşadığım performans dalgalanmalarını büyük ölçüde azalttı. Bu bir “sihirli değnek” değil, ama SSD’nizi kapasitesine yakın kullanıyorsanız ve zaman zaman ani yavaşlamalar yaşıyorsanız denemeye değer, düşük riskli bir yöntem.

Eğer siz de disk yavaşlaması yaşıyorsanız, önce diskinizin doluluk oranını kontrol etmenizi, ardından TRIM durumunu doğrulamanızı öneririm. Sonraki yazımda [Wi-Fi router’ımdaki QoS özelliğini keşfettiğimde ev internetimde neyin değiştiğini] de detaylı anlatacağım; ev ağı ile disk performansı aslında düşündüğünüzden daha fazla birbiriyle ilişkili çıkabiliyor.


Bu yazı, kişisel deneyimlerime ve genel donanım prensiplerine dayanmaktadır. SSD modelinize özel teknik detaylar için üreticinizin resmi belgelerine başvurmanızı öneririm.


Yalçın Güler sitesinden daha fazla şey keşfedin

Subscribe to get the latest posts sent to your email.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir