Amplifikasyon yaz - Write amplification

Bir SSD, çöp toplama ve aşınma dengelemenin bir sonucu olarak yazma amplifikasyonu yaşar , böylece sürücüdeki yazmaları artırır ve ömrünü azaltır.

Yazma amplifikasyonu ( WA ), depolama ortamına fiziksel olarak yazılan gerçek bilgi miktarının yazılması amaçlanan mantıksal miktarın katı olduğu flash bellek ve katı hal sürücüleri (SSD'ler) ile ilişkili istenmeyen bir olgudur .

Yeniden yazılmadan önce flash belleğin silinmesi gerektiğinden, silme işleminin yazma işlemine kıyasla çok daha kaba ayrıntı düzeyi ile bu işlemleri gerçekleştirme işlemi, kullanıcı verilerinin ve meta verilerin birden çok kez taşınmasına (veya yeniden yazılmasına) neden olur. Bu nedenle, bazı verilerin yeniden yazılması, önceden kullanılmış bir flash bölümünün okunması, güncellenmesi ve yeni bir konuma yazılması ile birlikte, daha önce bir zaman noktasında kullanılmışsa yeni konumun başlangıçta silinmesini gerektirir. Flaşın çalışma şekli nedeniyle, yeni veri miktarının gerçekte gerektirdiğinden çok daha büyük flash bölümlerinin silinmesi ve yeniden yazılması gerekir. Bu çarpma etkisi, SSD'nin ömrü boyunca gereken yazma sayısını artırarak güvenilir şekilde çalışabileceği süreyi kısaltır. Artan yazma işlemleri ayrıca flash belleğe bant genişliğini tüketir ve bu da SSD'ye rastgele yazma performansını azaltır. Bir SSD'nin WA'sını birçok faktör etkiler; bazıları kullanıcı tarafından kontrol edilebilir, bazıları ise SSD'ye yazılan verilerin ve kullanımının doğrudan bir sonucudur.

Intel ve SiliconSystems ( 2009'da Western Digital tarafından satın alındı ) 2008 gibi erken bir tarihte makalelerinde ve yayınlarında yazma amplifikasyonu terimini kullandılar . WA tipik olarak flash belleğe yapılan yazmaların ana sistemden gelen yazmalara oranıyla ölçülür. Sıkıştırma olmadan , WA birin altına düşemez. SandForce , sıkıştırma kullanarak , SF-2281 kontrol cihazında 0,14 kadar düşük en iyi durum değerleriyle 0,5'lik bir yazma amplifikasyonu elde ettiğini iddia etti.

Temel SSD işlemi

NAND flash bellek, verileri 4 KiB sayfasına yazar ve 256 KiB bloğundaki verileri siler.

Flash belleğin çalışmasının doğası gereği, bir sabit disk sürücüsünde olduğu gibi verilerin üzerine doğrudan yazılamaz . Veriler bir SSD'ye ilk yazıldığında, hücrelerin tümü silinmiş durumda başlar, böylece veriler bir seferde doğrudan sayfalar kullanılarak yazılabilir (genellikle 4-8  kilobayt (KB) boyutunda). SSD kontrol flaş bellek ve yönetir SSD ile arayüzler ana bilgisayar sistemi ile, bilinen bir mantıksal-fiziksel haritalama sistemi kullanır mantıksal blok adresleme (LBA) bir parçasıdır ve bu flaş için tabaka (Yükleme). Halihazırda yazılmış eski verilerin yerine yeni veriler geldiğinde, SSD denetleyicisi yeni verileri yeni bir konuma yazar ve mantıksal eşlemeyi yeni fiziksel konumu gösterecek şekilde günceller. Eski konumdaki veriler artık geçerli değil ve konumun yeniden yazılabilmesi için silinmeleri gerekecek.

Flash bellek yalnızca sınırlı sayıda programlanabilir ve silinebilir. Bu genellikle , flash belleğin ömrü boyunca sürdürebileceği maksimum program/silme döngüsü (P/E döngüleri) olarak adlandırılır. Daha yüksek performans ve daha uzun dayanıklılık için tasarlanmış tek seviyeli hücre (SLC) flaşı, tipik olarak 50.000 ila 100.000 döngü arasında çalışabilir. 2011 itibariyle, çok seviyeli hücre (MLC) flaşı, daha düşük maliyetli uygulamalar için tasarlanmıştır ve tipik olarak 3.000 ile 5.000 arasında büyük ölçüde azaltılmış döngü sayısına sahiptir. 2013'ten beri, döngü sayıları 1.000 program silme (P/E) döngüsüne düşen üç seviyeli hücre (TLC) (örn. 3D NAND) flaşı mevcuttur . Flash bellekte daha az sayıda P/E döngüsüne ve dolayısıyla artan SSD ömrüne karşılık geldiğinden, daha düşük bir yazma amplifikasyonu daha çok arzu edilir.

Değerin hesaplanması

Yazma amplifikasyonu, terim tanımlanmadan önce SSD'lerde her zaman mevcuttu, ancak 2008'de hem Intel hem de SiliconSystems bu terimi makalelerinde ve yayınlarında kullanmaya başladı. Tüm SSD'lerin bir yazma yükseltme değeri vardır ve bu, hem şu anda yazılanlara hem de SSD'ye önceden yazılanlara dayanır. Belirli bir SSD'nin değerini doğru bir şekilde ölçmek için, seçilen test, sürücünün sabit durum durumuna ulaştığından emin olmak için yeterli süre boyunca çalıştırılmalıdır .

Bir SSD'nin yazma amplifikasyonunu hesaplamak için basit bir formül:

Değeri etkileyen faktörler

Bir SSD'nin yazma amplifikasyonunu birçok faktör etkiler. Aşağıdaki tablo, birincil faktörleri ve bunların yazma amplifikasyonunu nasıl etkilediğini listeler. Değişken olan faktörler için tablo, doğrudan bir ilişkisi mi yoksa ters bir ilişkisi mi olduğunu not eder . Örneğin, aşırı sağlama miktarı arttıkça yazma büyütmesi azalır (ters ilişki). Faktör bir geçiş ( etkin veya devre dışı ) işleviyse, pozitif veya negatif bir ilişkisi vardır.

Amplifikasyon faktörlerini yazın
faktör Açıklama Tip İlişki*
Çöp toplama Silmek ve yeniden yazmak için bir sonraki en iyi bloğu seçmek için kullanılan algoritmanın verimliliği Değişken ters (iyi)
Aşırı sağlama SSD denetleyicisine tahsis edilen fiziksel kapasite yüzdesi Değişken ters (iyi)
SCSI için SATA veya UNMAP için TRIM komutu Bu komutlar, depolama aygıtına hangi sektörlerin geçersiz veriler içerdiğini söyleyen işletim sistemi (OS) tarafından gönderilmelidir. Bu komutları kullanan SSD'ler, geçersiz verileri temiz sayfalara kopyalamak yerine bu sayfaları içeren bloklar silindiğinde bu sektörleri içeren sayfaları boş alan olarak geri alabilir. Aç/Kapat Olumlu (iyi)
Ücretsiz kullanıcı alanı Gerçek kullanıcı verisi içermeyen kullanıcı kapasitesinin yüzdesi; TRIM gerektirir, aksi takdirde SSD herhangi bir ücretsiz kullanıcı kapasitesinden fayda sağlamaz Değişken ters (iyi)
Güvenli silme SSD'yi ilk kullanıma hazır performansına sıfırlayan tüm kullanıcı verilerini ve ilgili meta verileri siler (çöp toplama devam edene kadar) Aç/Kapat Olumlu (iyi)
Aşınma tesviye Her bloğun diğer tüm bloklara mümkün olduğunca eşit sayıda yazılmasını sağlayan algoritmanın verimliliği Değişken Doğrudan (kötü)
Statik ve dinamik verileri ayırma Verileri ne sıklıkta değişme eğilimine göre gruplama Aç/Kapat Olumlu (iyi)
sıralı yazma Teoride, sıralı yazmaların yazma amplifikasyonu 1'dir, ancak diğer faktörler değeri yine de etkileyecektir. Aç/Kapat Olumlu (iyi)
Rastgele yazma Sıralı olmayan LBA'lara yazma, yazma amplifikasyonu üzerinde en büyük etkiye sahip olacaktır. Aç/Kapat olumsuz (kötü)
Veri tekilleştirmeyi içeren veri sıkıştırma Veri sıkıştırma ve veri tekilleştirme daha fazla veriyi ortadan kaldırdığında yazma yükseltmesi azalır ve SSD hızı yükselir. Değişken ters (iyi)
Kullanılması MLC içinde NAND SLC modu Bu, okuma ve yazma işlemlerini hızlandırmak için hücre başına tasarlanmış bit sayısı (normalde hücre başına iki bit) yerine hücre başına bir bit hızında veri yazar. SLC modunda NAND'ın kapasite sınırlarına yaklaşılırsa, daha fazla veri kabul etmek için SLC modunda NAND'ın silinmesine izin vermek için SSD'nin SLC modunda yazılmış en eski verileri MLC veya TLC moduna yeniden yazması gerekir. Ancak bu yaklaşım, bu değişiklikleri MLC veya TLC modunda programlamaktan kaçınmak için sık değiştirilen sayfaları SLC modunda tutarak aşınmayı azaltabilir, çünkü MLC veya TLC modunda yazmak flaşa SLC modunda yazmaktan daha fazla zarar verir. Bu nedenle, bu yaklaşım yazma amplifikasyonunu hızlandırır ancak yazma kalıpları sık yazılan sayfaları hedeflediğinde aşınmayı azaltabilir. Bununla birlikte, sıralı ve rastgele yazma desenleri, SLC alanında bulunabilecek sık yazılan sayfaların hiç olmaması veya çok az olması nedeniyle hasarı ağırlaştıracaktır ve eski verilerin SLC alanından MLC veya TLC'ye sürekli olarak yeniden yazılmasını zorunlu kılacaktır. . Aç/Kapat olumsuz (kötü)
*İlişki tanımları
Tip İlişki değiştirildi Açıklama
Değişken doğrudan Faktör arttıkça WA artar
Ters Faktör arttıkça WA azalır
Aç/Kapat Pozitif Faktör mevcut olduğunda WA azalır
Olumsuz Faktör mevcut olduğunda WA artar

Çöp toplama

Sayfalar dolana kadar bloklar halinde yazılır. Daha sonra mevcut verilerin bulunduğu sayfalar yeni bir bloğa taşınır ve eski blok silinir.

Veriler, flash belleğe sayfa adı verilen (birden çok hücreden oluşan) birimler halinde yazılır. Ancak bellek yalnızca blok adı verilen (birden çok sayfadan oluşan) daha büyük birimlerde silinebilir. Bloğun bazı sayfalarındaki verilere artık ihtiyaç duyulmuyorsa (eski sayfalar da denir), yalnızca o blokta iyi veriye sahip sayfalar okunur ve önceden silinmiş başka bir boş bloğa yeniden yazılır. Daha sonra eski verileri taşımayarak kalan boş sayfalar yeni veriler için kullanılabilir. Bu, çöp toplama (GC) adı verilen bir işlemdir . Tüm SSD'ler bir miktar çöp toplama içerir, ancak işlemi ne zaman ve ne kadar hızlı gerçekleştirdikleri konusunda farklılık gösterebilirler. Çöp toplama, SSD'de yazma amplifikasyonunun büyük bir parçasıdır.

Okumalar, flash belleğin silinmesini gerektirmez, bu nedenle genellikle yazma amplifikasyonu ile ilişkilendirilmezler. Sınırlı bir okuma bozukluğu hatası olasılığında, bu bloktaki veriler okunur ve yeniden yazılır, ancak bunun sürücünün yazma amplifikasyonu üzerinde herhangi bir önemli etkisi olmaz.

Arka plan çöp toplama

Çöp toplama işlemi, verilerin flash belleğe okunmasını ve yeniden yazılmasını içerir. Bu, ana bilgisayardan yeni bir yazma işleminin önce tüm bloğun okunmasını, bloğun hala geçerli verileri içeren bölümlerinin yazılmasını ve ardından yeni verilerin yazılmasını gerektireceği anlamına gelir. Bu, sistemin performansını önemli ölçüde azaltabilir. Bazı SSD denetleyicileri , bazen boşta kalan çöp toplama veya boşta kalan zamanda çöp toplama ( ITGC ) olarak adlandırılan arka plan çöp toplama ( BGC ) uygular ; burada denetleyici , ana bilgisayarın yeni veri yazması gerekmeden önce flash bellek bloklarını birleştirmek için boşta kalma süresini kullanır . Bu, cihazın performansının yüksek kalmasını sağlar.

Denetleyici, kesinlikle gerekli olmadan önce tüm yedek blokları arka planda toplayacak olsaydı, ana bilgisayardan yazılan yeni veriler, herhangi bir veriyi önceden taşımak zorunda kalmadan, performansın en yüksek hızda çalışmasına izin vererek yazılabilir. Takas, bu veri bloklarından bazılarına aslında ana bilgisayar tarafından ihtiyaç duyulmamasıdır ve sonunda silinecektir, ancak işletim sistemi denetleyiciye bu bilgiyi ( TRIM tanıtılana kadar ) söylemedi . Sonuç, yakında silinecek verilerin flash bellekteki başka bir konuma yeniden yazılması ve yazma amplifikasyonunun artmasıdır. OCZ'nin bazı SSD'lerinde arka plan çöp toplama işlemi yalnızca az sayıda bloğu temizler ve sonra durur, böylece aşırı yazma miktarını sınırlar. Diğer bir çözüm ise, host yazmalarına paralel olarak gerekli hamleleri yapabilen verimli bir çöp toplama sistemine sahip olmaktır. Bu çözüm, SSD'nin nadiren boşta kaldığı yüksek yazma ortamlarında daha etkilidir. SandForce SSD kontrolörleri ve gelen sistemler Keman Bellek bu özelliğe sahiptir.

Dosya sistemine duyarlı çöp toplama

2010 yılında, bazı üreticiler (özellikle Samsung), SSD'de kullanılan dosya sistemini analiz etmek, yakın zamanda silinen dosyaları ve bölümlenmemiş alanı tanımlamak için BGC kavramını genişleten SSD denetleyicilerini tanıttı . Samsung, bunun TRIM'i desteklemeyen sistemlerin (işletim sistemleri ve SATA denetleyici donanımı) bile benzer performans elde etmesini sağlayacağını iddia etti . Samsung uygulamasının işleyişi, bir NTFS dosya sistemini varsayıyor ve gerektiriyor gibi görünüyordu . Bu özelliğin şu anda bu üreticilerin SSD'lerinde hala mevcut olup olmadığı net değil. MBR ve NTFS kullanılarak düzgün biçimlendirilmemişlerse, bu sürücülerde sistemik veri bozulması bildirilmiştir .

KIRMIZI

TRIM , işletim sisteminin bir SSD'ye dosya silme veya birim biçimlendirme nedeniyle önceden kaydedilmiş veri bloklarına artık ihtiyaç duyulmadığını söylemesini sağlayan bir SATA komutudur. Bir LBA, bir dosyanın üzerine yazıldığında olduğu gibi işletim sistemi ile değiştirildiğinde, SSD orijinal LBA'nın eski veya geçersiz olarak işaretlenebileceğini bilir ve çöp toplama sırasında bu blokları kaydetmeyecektir. Kullanıcı veya işletim sistemi bir dosyayı silerse (sadece parçalarını kaldırmakla kalmaz), dosya genellikle silinmek üzere işaretlenir, ancak diskteki asıl içerik hiçbir zaman fiilen silinmez. Bu nedenle SSD, dosyanın daha önce işgal ettiği LBA'ları silebileceğini bilmez, bu nedenle SSD bu tür LBA'ları çöp toplamaya dahil etmeye devam eder.

TRIM komutunun tanıtılması, Windows 7 , Mac OS (bazı durumlarda yamalı olan Snow Leopard, Lion ve Mountain Lion'un en son sürümleri), 8.1 sürümünden beri FreeBSD ve 2.6 sürümünden beri Linux gibi onu destekleyen işletim sistemleri için bu sorunu çözmektedir. arasında 0,33 Linux çekirdeği ana hat . Bir dosya kalıcı olarak silindiğinde veya sürücü biçimlendirildiğinde, işletim sistemi artık geçerli veri içermeyen LBA'larla birlikte TRIM komutunu gönderir. Bu, SSD'ye kullanımdaki LBA'ların silinebileceğini ve yeniden kullanılabileceğini bildirir. Bu, çöp toplama sırasında taşınması gereken LBA'ları azaltır. Sonuç, SSD'nin daha düşük yazma amplifikasyonu ve daha yüksek performans sağlayan daha fazla boş alana sahip olmasıdır.

Sınırlamalar ve bağımlılıklar

TRIM komutu ayrıca SSD desteğine ihtiyaç duyar. Eğer firmware SSD TRIM komutu için desteği yok, TRIM komutu ile alınan YİR'leriniz geçersiz olarak işaretlenir edilmeyecek ve sürücü çöp devam edecek bu hala geçerli olduğunu varsayarak veri toplamak. Yalnızca işletim sistemi bu LBA'lara yeni veriler kaydettiğinde SSD, orijinal LBA'yı geçersiz olarak işaretlemeyi bilecektir. Orijinal olarak sürücülerinde TRIM desteği oluşturmayan SSD Üreticileri, kullanıcıya bir ürün yazılımı yükseltmesi sunabilir veya işletim sisteminden geçersiz verilerle ilgili bilgileri çıkaran ve SSD'yi ayrı ayrı TRIM'leyen ayrı bir yardımcı program sağlayabilir. Fayda, yalnızca bu yardımcı programın kullanıcı tarafından her çalıştırılmasından sonra gerçekleştirilecektir. Kullanıcı, bu yardımcı programı, otomatik olarak zamanlanmış bir görev olarak arka planda düzenli aralıklarla çalışacak şekilde ayarlayabilir.

Bir SSD'nin TRIM komutunu desteklemesi, bir TRIM komutundan hemen sonra en yüksek hızda çalışabileceği anlamına gelmez. TRIM komutundan sonra boşalan alan, SSD'ye yayılmış rastgele konumlarda olabilir. Geliştirilmiş performans göstermek için bu alanların birleştirilmesinden önce veri yazma ve çöp toplama işlemlerinden birkaç geçiş gerekir.

İşletim sistemi ve SSD, TRIM komutunu destekleyecek şekilde yapılandırıldıktan sonra bile, diğer koşullar TRIM'den herhangi bir fayda sağlamayı engelleyebilir. 2010'un başlarından itibaren, veritabanları ve RAID sistemleri henüz TRIM'den haberdar değil ve sonuç olarak bu bilgilerin SSD'ye nasıl aktarılacağını bilemeyecek. Bu durumlarda SSD, işletim sistemi bu LBA'ları yeni yazmalar için kullanana kadar bu blokları kaydetmeye ve çöp toplamaya devam edecektir.

TRIM komutunun asıl faydası, SSD'deki boş kullanıcı alanına bağlıdır. SSD'deki kullanıcı kapasitesi 100 GB ise ve kullanıcı sürücüye gerçekten 95 GB veri kaydetmişse, herhangi bir TRIM işlemi çöp toplama ve aşınma dengeleme için 5 GB'den fazla boş alan eklemeyecektir. Bu durumlarda, aşırı sağlama miktarını 5 GB artırmak, SSD'nin daha tutarlı performansa sahip olmasını sağlar çünkü işletim sisteminden TRIM komutunun gelmesini beklemek zorunda kalmadan her zaman ek 5 GB ek boş alana sahip olur.

Aşırı sağlama

SSD'lerde bulunan üç aşırı provizyon kaynağı (seviyesi)

Aşırı provizyon (bazen OP, aşırı provizyon veya aşırı provizyon olarak yazılır), flash belleğin fiziksel kapasitesi ile işletim sistemi (OS) aracılığıyla kullanıcıya sunulan mantıksal kapasite arasındaki farktır . SSD'deki çöp toplama, aşınma dengeleme ve bozuk blok eşleme işlemleri sırasında, aşırı provizyondan kaynaklanan ek alan, denetleyici flash belleğe yazarken yazma amplifikasyonunun azaltılmasına yardımcı olur. Aşırı sağlama, fazladan kapasitenin kullanıcı tarafından kullanılabilen kapasiteye yüzde oranı olarak temsil edilir:

Aşırı sağlama genellikle üç kaynaktan gelir:

  1. Gibibit (GiB) yerine birim olarak gigabaytın (GB) kapasitesinin ve kullanımının hesaplanması . Hem HDD hem de SSD satıcıları, GB terimini bir ondalık GB veya 1.000.000.000 (= 10 9 ) baytı temsil etmek için kullanır . Diğer çoğu elektronik depolama gibi, flash bellek iki güçte birleştirilir, bu nedenle bir SSD'nin fiziksel kapasitesinin hesaplanması, ikili GB veya GiB başına 1.073.741.824 (= 2 30 ) temelinde olacaktır . Bu iki değer arasındaki fark %7.37'dir (= (2 30  − 10 9 ) / 10 9  × %100). Bu nedenle, %0 ek aşırı provizyona sahip 128 GB'lık bir SSD, kullanıcıya 128.000.000.000.000 bayt sağlar (toplam 137.438.953.472 bayttan). Bu ilk %7.37, tipik olarak toplam aşırı sağlama sayısında sayılmaz ve denetleyicinin blok durum işaretleri gibi işletim dışı sistem verilerini takip etmesi için bir miktar depolama alanı gerektiğinden, mevcut gerçek miktar genellikle daha azdır. Üreticiler, sırasıyla 1000 ve 2000 GB kapasiteli 1 veya 2 TB sürücü (931 ve 1862 GiB) sunmak için daha ileri düzeyde ikili/ondalık birim ayrımından yararlandıklarından , %7,37 rakamı terabayt aralığında %9,95'e kadar çıkabilir. 1024 ve 2048 GB yerine (1 TB = 1.000.000.000.000 bayt ondalık olarak, ancak 1.099.511.627.776 ikili olarak).
  2. Üretici kararı. Bu, fiziksel kapasitenin ondalık gigabaytı ile kullanıcıya sunulan kullanılabilir alanın ondalık gigabaytı arasındaki farka bağlı olarak tipik olarak %0, %7 veya %28 oranında yapılır. Örnek olarak, bir üretici, SSD'leri için 128 GB olası kapasiteye dayalı olarak 100, 120 veya 128 GB'lık bir belirtim yayınlayabilir. Bu fark sırasıyla %28, %7 ve %0'dır ve sürücülerinde %28 aşırı provizyona sahip olduklarını iddia eden üreticinin temelidir. Bu, ondalık ve ikili gigabayt arasındaki farktan sağlanan %7,37 ek kapasiteyi hesaba katmaz.
  3. Sürücüde bilinen boş kullanıcı alanı, kullanılmayan kısımların bildirilmesi pahasına veya mevcut veya gelecekteki kapasite pahasına dayanıklılık ve performans elde edilir. Bu boş alan, işletim sistemi tarafından TRIM komutu kullanılarak tanımlanabilir. Alternatif olarak, bazı SSD'ler, son kullanıcının ek fazla provizyon seçmesine izin veren bir yardımcı program sağlar. Ayrıca, herhangi bir SSD, kullanılabilir alanın %100'ünden daha küçük bir genel bölümleme düzeniyle kurulursa, bu bölümlenmemiş alan, SSD tarafından da aşırı provizyon olarak otomatik olarak kullanılacaktır. Yine bir başka aşırı provizyon kaynağı, işletim sistemi minimum boş alan sınırlarıdır; bazı işletim sistemleri, özellikle önyükleme veya ana sürücüde, sürücü başına belirli bir minimum boş alan sağlar. Bu ek alan, SSD tarafından, belki de TRIM komutunun sürekli kullanımı yoluyla tanımlanabiliyorsa, bu, yarı kalıcı aşırı sağlama görevi görür. Aşırı provizyon, genellikle geçici veya kalıcı olarak kullanıcı kapasitesinden uzaklaşır, ancak daha az yazma amplifikasyonu, daha fazla dayanıklılık ve daha yüksek performans sağlar.

Ücretsiz kullanıcı alanı

SSD denetleyicisi, çöp toplama ve aşınma dengeleme için SSD'deki tüm boş blokları kullanacaktır. Kullanıcı kapasitesinin kullanıcı verilerinden arındırılmış kısmı (önceden TRIM'lenmiş veya ilk etapta hiç yazılmamış) aşırı provizyon alanı ile aynı görünecektir (kullanıcı SSD'ye yeni veri kaydedene kadar). Kullanıcı, sürücünün toplam kullanıcı kapasitesinin yalnızca yarısını tüketen verileri kaydederse, kullanıcı kapasitesinin diğer yarısı ek aşırı provizyon gibi görünecektir (sistemde TRIM komutu desteklendiği sürece).

Güvenli silme

ATA Secure Erase komutu, bir sürücüdeki tüm kullanıcı verilerini kaldırmak için tasarlanmıştır. Entegre şifrelemesi olmayan bir SSD ile bu komut, sürücüyü orijinal kutudan çıktığı durumuna geri döndürür. Bu, başlangıçta performansını mümkün olan en yüksek seviyeye ve mümkün olan en iyi (en düşük sayı) yazma amplifikasyonuna geri yükleyecektir, ancak sürücü çöp toplamaya başlar başlamaz performans ve yazma amplifikasyonu önceki seviyelere dönmeye başlayacaktır. Birçok araç, sürücüyü sıfırlamak ve ayrıca bir kullanıcı arabirimi sağlamak için ATA Secure Erase komutunu kullanır. Endüstride yaygın olarak başvurulan ücretsiz bir araca HDDerase adı verilir . GParted ve Ubuntu canlı CD'leri, güvenli silme dahil olmak üzere önyüklenebilir bir Linux disk yardımcı programı sistemi sağlar.

Anında tüm yazma şifrelemek Sürücüler olabilir başka bir şekilde ATA Güvenli Sil uygulamak. Her güvenli silme işlemi yapıldığında basitçe sıfırlar ve yeni bir rastgele şifreleme anahtarı oluştururlar. Bu şekilde, şifresi çözülemediği için eski veriler artık okunamaz. Tümleşik şifrelemeye sahip bazı sürücüler bundan sonra fiziksel olarak tüm blokları temizlerken, diğer sürücüler, sürücüyü orijinal kutudan çıktığı durumuna geri döndürmek için sürücüye bir TRIM komutunun gönderilmesini gerektirebilir (aksi takdirde performansları maksimize edilemez).

ATA Secure Erase – veri silme hatası

Bazı sürücüler, ATA Secure Erase ile verileri tamamen veya kısmen silemez ve veriler bu tür sürücülerden kurtarılabilir durumda kalır.

Aşınma tesviye

Belirli bir blok, diğer bloklara yazılmadan tekrar tekrar programlanır ve silinirse, bu blok diğer tüm bloklardan önce yıpranır ve böylece SSD'nin ömrü zamanından önce sona erer. Bu nedenle, SSD denetleyicileri, yazma işlemlerini SSD'deki tüm flash bloklarına mümkün olduğunca eşit bir şekilde dağıtmak için aşınma dengeleme adı verilen bir teknik kullanır .

Mükemmel bir senaryoda, bu, her bloğun maksimum ömrüne yazılmasını sağlar, böylece hepsi aynı anda başarısız olur. Ne yazık ki, yazmaları eşit olarak dağıtma işlemi, daha önce yazılan ve değişmeyen (soğuk veri) verilerin taşınmasını gerektirir, böylece daha sık değişen veriler (sıcak veriler) bu bloklara yazılabilir. Veriler, ana sistem tarafından değiştirilmeden her değiştirildiğinde, bu, yazma amplifikasyonunu arttırır ve böylece flash belleğin ömrünü kısaltır. Anahtar, ikisini de maksimize eden optimum bir algoritma bulmaktır.

Statik ve dinamik verileri ayırma

Yazma amplifikasyonunu azaltmak için statik (soğuk) ve dinamik (sıcak) verilerin ayrılması, SSD denetleyicisi için basit bir işlem değildir. İşlem, SSD denetleyicisinin sürekli değişen ve yeniden yazma gerektiren (dinamik veri) veriler içeren LBA'ları, nadiren değişen ve herhangi bir yeniden yazma gerektirmeyen (statik veri) verilere sahip LBA'lardan ayırmasını gerektirir. Veriler, bugün neredeyse tüm sistemlerde olduğu gibi aynı bloklarda karıştırılırsa, herhangi bir yeniden yazma, SSD denetleyicisinin hem dinamik verileri (başlangıçta yeniden yazmaya neden olan) hem de statik verileri (herhangi bir yeniden yazma gerektirmeyen) çöp toplamasını gerektirecektir. Aksi halde taşınması gerekmeyen herhangi bir çöp veri toplama, yazma amplifikasyonunu artıracaktır. Bu nedenle, verilerin ayrılması, statik verilerin hareketsiz kalmasını sağlayacak ve eğer yeniden yazılmazsa, bu veriler için mümkün olan en düşük yazma amplifikasyonuna sahip olacaktır. Bu işlemin dezavantajı, bir şekilde SSD denetleyicisinin statik verileri aynı seviyede tutmanın bir yolunu bulması gerektiğidir, çünkü asla değişmeyen bu bloklar maksimum P/E döngülerine yazılma şansına sahip olmayacaktır.

Performans etkileri

sıralı yazma

Bir SSD sırayla büyük miktarda veri yazarken, yazma büyütmesi bire eşittir, yani yazma büyütmesi yoktur. Bunun nedeni, veriler yazılırken tüm bloğun aynı dosyaya ilişkin verilerle sırayla doldurulmasıdır. İşletim sistemi dosyanın değiştirileceğini veya silineceğini belirlerse, bloğun tamamı geçersiz olarak işaretlenebilir ve çöp toplamak ve başka bir bloğa yeniden yazmak için parçalarını okumaya gerek yoktur. Çöp toplamadan geçen rastgele yazılmış veriler için gereken okuma-silme-değiştirme-yazma işleminden çok daha kolay ve hızlı olan sadece silinmesi gerekecektir .

Rastgele yazma

Bir SSD'deki en yüksek rastgele yazma performansı, SSD tamamen çöp toplandıktan, güvenli bir şekilde silindikten, %100 TRIM'lendikten veya yeni kurulduktan sonra çok sayıda boş blok tarafından yönlendirilir. Maksimum hız, SSD denetleyicisine bağlı paralel flaş kanallarının sayısına, bellenimin verimliliğine ve flaş belleğin bir sayfaya yazma hızına bağlı olacaktır. Bu aşamada yazma amplifikasyonu, rastgele yazmalar için olabilecek en iyisi olacak ve bire yaklaşacak. Blokların tümü bir kez yazıldığında, çöp toplama başlayacak ve performans, bu sürecin hızı ve verimliliği ile kapılı olacaktır. Bu aşamada yazma amplifikasyonu, sürücünün deneyimleyebileceği en yüksek seviyelere yükselecektir.

performans üzerindeki etkisi

Bir SSD'nin genel performansı, yazma amplifikasyonu da dahil olmak üzere bir dizi faktöre bağlıdır. Bir flash belleğe yazmak, ondan okumaktan daha uzun sürer. Bir SSD, performansı artırmak için genellikle kanallar olarak paralel bağlanmış birden çok flash bellek bileşeni kullanır. SSD'de yüksek yazma amplifikasyonu varsa, denetleyicinin flash belleğe bu kadar çok kez yazması gerekecektir. Bu, ana bilgisayardan veri yazmak için daha da fazla zaman gerektirir. Düşük yazma amplifikasyonuna sahip bir SSD'nin çok fazla veri yazması gerekmeyecektir ve bu nedenle yazma amplifikasyonu yüksek olan bir sürücüden daha kısa sürede yazmayı bitirebilir.

Ürün beyanları

Eylül 2008'de Intel , 1.1 kadar düşük bir WA ile X25-M SATA SSD'yi duyurdu. Nisan 2009'da SandForce , SF-1000 SSD İşlemci ailesini, bir tür veri sıkıştırmasından geliyor gibi görünen 0,5'lik bir WA bildirilmiş olarak duyurdu. Bu duyurudan önce, bir SSD ile elde edilebilecek en düşük değer olarak 1.0'lık bir yazma amplifikasyonu düşünülüyordu.

Ayrıca bakınız

Notlar

Referanslar

Dış bağlantılar