Šta je novo?

TRIM

alfaunits

Znamenit
Učlanjen(a)
24.06.2006
Poruke
45,227
Poena
1,385
Steta sto ne postoji neki SIGURAN nacin da se vidi da li je TRIM prosao... (proba posle toga nije to, iako je dovoljno ako radi :))
Ovo mislim za sve SSD-ove.
 
Nazalost to ne funkcionise. To samo proverava da li je stranica markirana za Erase cycle, ali i da je uradjen Erase cycle (gotov TRIM). Nije isto!
Stavise, ovo je (ranije) samo na Intelu funkcionisalo odmah. Kod drugih (probali smo bash ovde na forumu!), mozda i markira, mozda i radi TRIM vremenom - ali ne vraca odmah NULL cell data! Sve dok ne zavrsi TRIM cycle, vecina SSD-ova je vracala podatke iz celije, tj. citala je celiju koja je ocigledno trebala da bude TRIMmed :)
 
Pa ovo ne proverava da li markirano za brisanje, već da li je odrađeno brisanje, tj. da je TRIM odradio posao (zajedno sa GC)! Čim se vrednost promeni, fajla više nema, a kako bi se ustalom moglo videti da li je SSD kontroler nešto markirao nakon TRIM komande ili ne, za to ne postoji način...
I baš se ovako može videti brzina TRIM-a.
 
Nope. Ovo samo moze da vidi da li je MARKIRANO za TRIM. Ali ne i da li je odradjen ceo TRIM (da li je uradjen Erase cycle).
Nema sanse recimo da se uradi Erase cycle celog SSD-a dovoljno brzo a TRIM celog SSD-a se "uradi" za manje od nekoliko sekundi (cak i za manje od sekund). Tada ce ceo SSD pokazati NULL, ali TRIM nikako nije zavrsen!

I ako se pogasi sistem tada, ne znam sta se desava... u smislu mozda je markiranje u memoriji, mozda nije, male su sanse da nije u DRAM-u :( Nema dovoljno prosotora cini mi se za SSD od 128GB vec. Tako da ako se ceo SSD recimo markira za TRIM, padne sistem, posle reseta ce biti kao da nije uradjen TRIM.

Ko ima spare SSD moze da proba :)
 
Ti ovde nešto brkaš, nema šanse videti da li je nešto markirano ili ne ovom metodom.
Drugo ko govori o brisanju celog SSD-a? Pa ovde se radi o jednom, može i malenom jpg fajlu?
Treće kakve veze ima RAM memorija sa TRIM-om??! :trust: Ili misliš na keš SSD-a, ali nema ni tada veze.. Pa to radi sam kontroler upotrebljujući isključivo NAND na SSD-u! Čekaj znaš valjda da je TRIM samo komanda SSD-u da je podatak nevalidan i za brisanje, i kako inače SSD uopšte radi?
http://thessdreview.com/daily-news/...n-and-trim-in-ssds-explained-an-ssd-primer/2/
I kada se ugasi sistem, kontroler i dalje pamti trim komande od pre (ima ih upamćene na prostoru NAND-a rezervisanom za FW) i ako ih nije stigao završiti posle ih samo nastavlja...
 
Poslednja izmena:
Mislio sam na RAM SSD-a (neki ga koriste i za cache i za interni procesing - Intel je PRECIZIRAO da (prvi) SSDovi valjda uospte ne koriste taj RAM kao cache, vec samo za interno procesiranje).

Znam da TRIM samo kaze da je podatak za brisanje. Ono sto me zanima je kada je ustvari podatak stvarno obrisan. A to se ne moze videti ovom metodom. Moze se pretpostaviti ali ne i videti.

Nema sansi da se TRIM upisuje na neki NAND, previse je to da moze tako brzo da se odradi. Treba nekoliko stotina MB da se upise da bi se recimo ceo SSD TRIMovao (zamisli takav slucaj), a TRIM komanda se zavrsava mnogo brze.
Sto ce reci, ili se ne upisuje na NAND (mozda u RAM), ili SSD samo javlja da je PRIMIO komandu, ali samo toliko (onda on upise negde da treba nesto da se brise, i pocne da brise).
 
Pa ovo jeste da se vidi da li je podatak ZAISTA obrisan. Ali mislim da sam shvatio tvoje pitanje, ja mislim da ovako upravo možeš znati da li je podatak od strane GC-a FIZIČKI uklonjen iz NANDA, tj. da je skroz obrisan. Si to pitao? :D
Markiran on ili ne ako nije obrisan i dalje je tu dok GC ne odradi posao, a to bi trebao za mali faj da odradi odmah ili ubrzo nakon (osim možda kod SF-a, ali i tu je brzo za jedan fajl). Tj. TRIM komanda se šalje čim iz korpe (ili ako je preskočiš) obrišeš bilo koji fajl, te zašto stalno pominješ stotine MB ili ceo SSD?
TRIM je samo komanda, ništa se ne upisuje na NAND tipa podataka (doc, film...); osim upravo šta ima da se obriše, pa onda kad smisli SSD briše fajl(ove).. I ovom metodom VIDIŠ kada je fajl konačno obrisan.
 
Ne vidis. Pretpostavljas...
Pominjem ceo SSD kao kontra tezu. Recimo da posaljes TRIM da se CEO SSD obrise. To moze.. jer TRIM nema samo adresu vec i range koji pokriva - moze da se posalje TRIM komanda sa LBA=0, Range=All. Takva komanda se vrlo brzo vrati (uslovno receno izvrsi). Ali poprilicno treba vremena da se ona stvarno izvrsi!
Moguce je da SSD upisuje na interni NAND same komande... sto bi bilo vrlo brzo. Ali ne i bitmap koji pokazuje sta je slobodno.

Probao sam recimo na m4 da uradim TRIM celog slobodnog prostora - sto je preko 400GB bilo u tom trenutku. TRIM se vratio za sekund. I SSD je verovatno strckao NAND posle toga :)
Na Intelu se isto desavalo, samo sto je Intel odmah vracao NULL kada pokusam da procitam celiju - sto nazalost ne znaci da je celija VEC izbrisana, samo da je markirana za brisanje!

Ima razlike izmedju markirane za brisane i obrisane.

Ako ne shvatas o cemu pricam, dzaba dalja prica ;)
 
Pa znam da ima razlike, ali upravo dok ga ne obriše neće pokazati sve nule, i upravo znači da je čelija obrisana, a ne da je samo markirano za brisanje. I ja kažem da treba GC-u vremena da odradi brisanje, ali bez brige može to da se uradi i za par sekundi za jedan ogroman fajl! ;) Ili jedan mali.
Dok bi za pun SSD malih već trebalo malo vremena...
 
Poslednja izmena:
Ne, ako pokaze nule ne znaci da je vec zavrsio Erase cycle. Dovoljno je da je markirao celije za Erase cycle i ako se pokusa citanje, samo ce vratiti nule - to je to. Bez obzira da li je zavrsen Erase cycle.
Tako je radio Intel - posaljes TRIM komandu za ceo SSD, on ce vratiti nule za BILO KOJI deo SSD-a, ali Erase cycle nikako nije zavrsen!

NULL cell != zavrsen Erase cycle. O tome pricam.
 
Nisam siguran da pokazuje nule samo ako je markiran a ne obrisan, to treba proveriti.
Ali opet kažem da se brisanje može brzo odigrati nakon TRIM-a, tj. ceo Erase cycle.
 
Pa probao sam da izbrisem ceo Intel SSD, bilo koji NAND je javljao nule, ali nije bilo fizicke sanse da ceo bude Erased tako brzo :)

Moze za koji blok - ali nikako ceo SSD. Zato pominjem ceo SSD - jer je to prava proba.
 
Zašto misliš da ne može?!
Pa kako SE komanda obriše sve blokove za manje od minut? ;)

I ceo SSD je kontroleru mnogo lakše nego gomila malih fajlova obrisanih a većina podataka i dalje tu...
 
Poslednja izmena:
SE komanda ne brise NAND, ona samo prebrise master password (koji i svaki HDD ima). Nikako ne brise ceo NAND... samo ga markira za brisanje. Erase recimo 512GB (pa i manjih) nikako ne moze tako brzo da se izvrsi - inace zasto bi se smarali sa TRIM-om? Kad bi mogli tako brzo da izbrisu cim zele.
E sada kada se stvarno obrise... ne znam.
 
Poslednja izmena:
AU kako ne briše ceo nand?! (sad još brkaš i SSD sa HDD-om, a i kod HDD: "Secure Erase overwrites every single track on the hard drive. That includes the data on "bad blocks", the data left at the end of partly overwritten blocks, directories, everything. There is no data recovery from Secure Erase.") Pa upravo pusti određen napon preko svih NAND ćelija i fizički ih obriše!! Pa zašto bi ga zvali Secure Erase, a da nije bezbedno? :p

TRIM naravno sa GC ne briše baš na taj isti način, ali poenta je da može to da ide poprilično brzo..
 
Secure Erase = secure data removal. Ako se master password regenerise (prebrise i nova napravi), dovoljno je, jer postojeci podaci su beskorisni.
E sad SSD to vidi kao znak da sve NANDove moze da brise.
Na HDD-ovima postoji isto Secure Erase. Ne mesam nista. I tamo je podjednako brza kao i na SSD-u - trenutna. Podaci nisu "izbrisani" ali su beskorisni jer ne postoji sifra kojom su pisani.

Razmisli prosto... ako Secure Erase na HDD-u "brise" sve, kako bi onda moglo da radi "trenutno"? Sigurno ne dira svaku traku posebno, jer za HDD treba nekoliko sati - sto nije slucaj.

http://en.wikipedia.org/wiki/Data_erasure
Changing the encryption key will make all the drive data inaccessible so is an easy and very fast method of achieving 100% data erasure

Kako dodatno SSD to tretira zavisi od samog kontrolera. Sve NAND celije se naravno zapisu kao prazne, i spremne su za Erasure - ali nikako nisu Erased odmah.
Erase cycle celog SSD-a ne moze da traje samo jedan sekund!
 
Poslednja izmena:
Kod SSD-a kad god sam radio SE to je trajalo jako kratko, u sekundama, tako da je alfaunits u pravu, ne upisuje se preko celog NAND/a ništa, već su samo sve ćelije označene kao slobodne. Da se stvarno upisuje ceo NAND, za 120GB disk koji postiže 250MB/s upis, SE bi trajao 8 minuta.

Kod hard diskova nije tako, svaki put kad sam puštam SE mehaničkih hard diskova, a radim to često, kad god neko zameni račuanr u firmi, traje koliko i recimo full format, dakle prepisuje sadržaj.

SE i na HDD-ovim i na SSD-ovima je rešen ATA komandom u samom firrmware-u hard diska, dakle nije softverski. Jednostavno se kod HDD-ova i SSD-ova razlikuje implementacija te komande, SSD-u je dovoljno da kreira novi master password i označi ćelije kao prazne, dok kod HDD-a se sav sadržaj prebriše, tj. upisuje 0 preko celog HDD-a.
 
Poslednja izmena:
Pa bre evo iz tvog linka na dnu:

"According to the 2006 CMRR Tutorial on Disk Drive Data Sanitization Document: "Secure erase does a single on-track erasure of the data on the disk drive. The U.S. National Security Agency published an Information Assurance Approval of single pass overwrite, after technical testing at CMRR showed that multiple on-track overwrite passes gave no additional erasure." "Secure erase" is a utility built into modern ATA hard drives that overwrites all data on a disk, including remapped (error) sectors."

A ti si izgleda pobrkao brisanje šifre što je samo moguća opcija SE (a i kod HDD, ali samo ako ima mogućnost enkripcije u letu, što za razliku od SSD i nije česta pojava, osim enterprise primeraka...), ali čitaj do kraja da se to kod SSD-a ne primenjuje (tj. najčešće se kombinuje sa potpunim brisanjem), već forsira TRIM i da koji se trenutno izvršava:

"The ATA Secure Erase command is designed to remove all user data from a drive. With an SSD without integrated encryption, this command will put the drive back to its original out-of-box state. This will initially restore its performance to the highest possible level and the best (lowest number) possible write amplification, but as soon as the drive starts garbage collecting again the performance and write amplification will start returning to the former levels. Many tools use the ATA Secure Erase command to reset the drive and provide a user interface as well. One free tool that is commonly referenced in the industry is called HDDErase. Parted Magic provides a free bootable Linux system of disk utilities including secure erase.

Drives which encrypt all writes on the fly can implement ATA Secure Erase in another way. They simply zeroize and generate a new random encryption key each time a secure erase is done. In this way the old data cannot be read anymore, as it cannot be decrypted. Some drives with an integrated encryption may require a TRIM command be sent to the drive to put the drive back to it original out-of-box state."
http://en.wikipedia.org/wiki/Write_amplification#Secure_erase

Pa kako objašnjavaš vraćanje na fabričke brzine nakon SE, ako nije ćelija potpuno prazna?! A svi znaju da odmah nakon SE imaš punu brzinu kao iz kutije za SSD! Hajde nek traje i minut dva SE za ceo veći "zaprljani" SSD, ali ne duže... Tako da SE pametno briše samo ćelije koje u tom momentu imaju podatke (ne markirane, već stvarno i dalje upisane), ako su sve pune može malo i da potraje... Nemojte zaboraviti koliko je brz SSD, ali interna brzina, ne ka host-u preko SATA interfejsa, SSD-ovi unutar sebe mogu postići mnogo veće brzine od 500MB/s; te i brisanje (upis) traje kratko.
"The peak random write performance on an SSD is driven by plenty of free blocks after the SSD is completely garbage collected, secure erased, 100% TRIMed, or newly installed." (isti link od gore)
 
Poslednja izmena:
SE na starijim diskovima (ili vecini desktop) moze da potraje, ali dobar deo laptop diskova, kao i SSD-ova ima enkripciju i na njima je trenutna.

Da je brzina pisanja NAND-a tako brza da moze ceo SSD da se erase-uje za jedan sekund ili nesto slicno, ne bi bilo potrebe za TRIM-om. TRIM je tu da ne bi moralo da se ceka na Erase cycle.

Kako objasnjavam da su odmah bolje brzine? Tako sto od kad pustis SE do trenutka kada budes mogao da pises na taj disk, SSD moze lagano mnogo vise blokova da Erase-uje nego sto ti mozes da upises :) A on pocinje od pocetka da ih brise - i od pocetka da upisuje odmah.
Erase cycle jeste spor da moze da se uradi za ceo SSD u nekoliko sekundi - ali je ipak mnogo brzi od pisanja.

Sto se brzine tice, zaboravljas da nije SATA limit za pisanje - NAND/kontroler su. Za sada MLC SSDovi (osim FusionIo Drive-a) nisu presli SATA 6Gbps brzine za pisanje.
TRIM je naravno brzi od upisa, ali opet - ne toliko brzi da moze u sekundama ceo SSD da predje.
 
A sad na sam pocetak, da se neki novajlija ne pogubi, neko nek napise fino laicki (i strucno) sta je trim...
Prilicilo bi temi.
 
Nije baš trenutan SE, ja to nisam rekao!!
Kada sam mučio ovaj HyperX 3K od 240GB puneći ga do vrha, odmah posle je SE potrajao jedno 2-3 minuta. I odmah posle sam ga celog napunio (dakle pisanje) i imao je punu fabričku brzinu, a pre toga je bio blagi patos.
Doduše vidim da moram da ponovim i objasnim: SE nije isto što i TRIM, SE ništa ne piše tj. briše niti markira, on samo pusti visoku voltažu na sav NAND i oslobodi ga svakog upamćenog napona i time ga briše. Dok TRIM mora stvarno da briše normalnim putem. Tako da SE nema ama baš nikave veze sa brzinom upisa, ni onom internom (bar ne u tom smislu). A nema ni TRIM, bar nikako sa brzinom upisa iz OS-a, već samo sa internom brzinom komunikacije!

Za pisanje/čitanje podataka koji dolaze od OS-a da, spor je, ali interno je spor tipa GC: mora da markira, premesti, obriše i nešto vrati, pa upiše (bez TRIM-a); za takoreći jednu operaciju i to kad odluči! Tu TRIM pomaže i kao što kažeš skraćuje Erase cycle (ali i dalje kad GC odluči); što je lepo objašnjeno u mom linku... A naročito za SF kome nije sam TRIM tj. GC spor, već činjenica da mu treba sto godina da se konačno odluči uraditi GC i posle TRIM komande (zašto zna samo SF, ali glavni razlog je da smanje write amplification...)

Ali sama interna brzina može mnogo brže da ide, tada se kontroler sam zabavlja bez OS-a!
ONFI 2.0 brzina je 200 MB/s pa kontroleri sada imaju 8 kanala te 8x200= 1600 MB/s maksimalne interne brzine!!! To nikako nije sporo, a sada ima već i bržeg 3.0 NAND-a 400MB/s. Te računaj vreme brisanja (za TRIM) za npr. SSD od 240Gb i prostom matematikom dobiješ brzinu brisanja celog SSD-a = 2.5min! Za ceo SSD!! Ovo je naravno idealno, kada GC ima TRIM i ne mora da premesti usput neki fajl, a ovde o tome i govorimo.

Pa sada si i sam napisao da je unutrašnja komunikacija (tipa Erase cycle) mnogo brža od pisanja iz OS-a; a ja te tome pokušavam celo vreme ubediti!! :d I time si upravo priznao da TRIM može biti veoma brz! :d
 
Nije baš trenutan SE, ja to nisam rekao!!
Ne kazem i da jesi, ali ja kazem da jeste :) Jer kada sam probao SE bio je maltene trenutan. Ocigledno se razlikuje od diska od diska, to nismo ni sumnjali.



Pa sada si i sam napisao da je unutrašnja komunikacija (tipa Erase cycle) mnogo brža od pisanja iz OS-a; a ja te tome pokušavam celo vreme ubediti!! :d I time si upravo priznao da TRIM može biti veoma brz! :d
Rekao sam da je brza od seq. pisanja, jer pisanje zahtev i erase i write. Ali ne i da je toliko brza da moze za koji sekund koliko SE traje na nekim SSD-ovima.
 
Pa i meni kad disk nije totalno uprljan/patosiran nekompresibilnim podacima gde TRIM i GC nisu imali ni šansu da nešto urade u SF SSD-u, traje nekoliko sekundi! A u navesdenom mi je trajalo oko 2min. I to sam već napisao.

Pa ako ne TRIM-uješ ceo SSD već manju normalnu količinu podataka, izračunaj sam; može za koji sekund i te kako! ;)
 
Ma da.... ali kako biti siguran? :D Ja vidim da je NULL cell - ali to mi nije dovoljan dokaz.
 
"Zaviri" elektronskim mikroskopom u NAND!? :d

P.S.
Evo upravo sam probao onu metodu što sam stavio link (da TRIM radi kod mene u RAID-u; zato što imam Z77, OROM i IRST serije 11.xx - konkretno 11.5). ALI ja sam proverio odmah (5-10 sekundi?) nakon brisanja iz kante i fajl je i dalje bio tu! Zatim sam zatvorio HxD editor i sačekao još 20-30 sekundi, opet otvorio, tražio ponovo isti offset, i nema fajla!! :D
Dakle SF diskovi nisu instant brzine za TRIM i posle im treba malo vremena da zaista odrade putem GC brisanje, što je u ovom slučaju ekstra! Pošto time definitivno dokazujem da ovo jeste metoda za proveru TRIM-a; da li kao prvo uopšte radi, i koliko brzo GC posle komade odradi brisanje!! ,)
 
Poslednja izmena:
Da postoji negde lepo "random NAND block Erase speed", postigao bih nesto :D
 
Ne kazem i da jesi, ali ja kazem da jeste :) Jer kada sam probao SE bio je maltene trenutan. Ocigledno se razlikuje od diska od diska, to nismo ni sumnjali.
Ako mogu da se nadovezem na ovu pricu - razlikuje se od diska do diska, naravno... ali se razlikuje i od samog stepena zaprljanosti SSD-a. Izgleda :D

Konkretno, na HyperX-u 3K sam radio secure erase u nekoliko (desetina :d) navrata - putem HDD Erase v4.0 programa, BTW - i brzina samog procesa je prilicno varirala... najkrace je bilo bukvalno sekund :d, kada je disk bio maltene prazan, tek jedan test uradjen na njemu... pa onda po 20-30 sekundi, kada je vec bio malo "zaprljan"... da bi najduze sto sam video bilo 57 sekundi - kada sam ga vec prethodno izmaltretirao za sve pare :D

Inace, imam i rezultate direktnog poredjenja tog 3K i moje C300-tke, u identicnom stadijumu popunjenosti (ali ne i zaprljanosti, ocito :p)... odradjeno je kloniranje celokupne particije sa C300 na 3K, pa je preneto nekih ~114 giga (ostade tek ~5 giga slobodno na C300 :d)... tako da su uslovi, sto se popunjenosti tice, bili identicni ;)
Elem, C300 je SE operaciju odradio za 21. sekundu... dok je 3K-u za isti postupak bilo potrebno okruglo 50 sekundi.
 
Eto još jedna potvrda, hvala CAR-e! :)

Za ovo drugo, razlika u SE je možda i zbog duplog kapaciteta? TRIM je sigurno brži na C300 (zbog agresivnijeg GC-a), ali SE bi trebao da je približne brzine. No HyperX je duplo veći i verovatno je bio zaprljan i iznad ~114GB, te je duže potrajao SE...?
 
Eto još jedna potvrda, hvala CAR-e! :)
Nema na cemu, bilo mi je zadovoljstvo :p

I mene je bas interesovala razlika izmedju ova dva SSD-a, pa sam ih poredio u svemu sto mi je palo na pamet... a SE operacija je bila jedno od toga ;)
A ovo me je bas iznenadilo...
Za ovo drugo, razlika u SE je možda i zbog duplog kapaciteta? TRIM je sigurno brži na C300 (zbog agresivnijeg GC-a), ali SE bi trebao da je približne brzine. No HyperX je duplo veći i verovatno je bio zaprljan i iznad ~114GB, te je duže potrajao SE...?
E da, vi's to sam totalno smetnuo sa uma... ne znam kako mi je promakao taj detalj :)

To za velicinu stoji, 119GB vs. 224GB... nije bas duplo veci 3K, ali tu je negde :)
Ali, sto se zaprljanosti tice, bili su na apsolutno identicnom nivou - na oba je najpre odradjen secure erase, pa onda kloniranje sa jednog na drugi. Najpre sa C300 na 3K... odradio testove... pa potom samo taj isti image vrnuo nazad sa 3K na C300, te ponovo odradio iste testove ;)
Tacnije, kada pominjem zaprljanost - mislim pre svega na zauzece u gigabajtima :)

114 vs. 114, a slike sistema su, kako rekoh, legle na oba SSD-u dok su bili u fabrickom stanju. Nije bilo "stroke" pre toga, a vala ni posle :p
 
Vrh Dno