On Thu, 2013-02-21 at 08:44 +0200, Dan Borlovan wrote: > > On 02/21/2013 08:16 AM, Mircea Mitu wrote: > > Ca nu merge Trim pe raid 1, 4, 5, 6, 10 > > Numarul de scrieri pe ssd intr-unul din raidurile astea se mareste > > semnificativ => scade durata de viata si performanta > > > Hmmm. Din cite stiu ssd-urile din ultimii ani au > > - gc intern care ar trebui sa mai compenseze lipsa de trim > - wear leveling ca sa un te stresezi ca-ti crapa un block in care scrii
Ai dreptate in ce spui, dar mecanismele de mai sus functioneaza pe baza unui map de blocuri folosite/nefolosite (ca sa stie firmwareul pe unde poate sau nu plimba date). Lista de blocuri unused este initial tot discul vazut de OS PLUS o sectiune de obicei consistenta de blocuri vizibile doar pentru firmware si invizibile pt OS. Pe masura ce tu scrii in sectiunea publica, sectoarele scrise sint eliminate din lista de unused si nu mai sint folosite pentru wear leveling, raminind cu cele publice inca nescrise si cele private rezervate. Pe masura ce umpli discul si numarul de blocuri libere scade (chiar daca tu intre timp la nivel logic, in fs ai sters tot pr0nul pe care il stocasei acolo). TRIM te ajuta sa pasezi catre firmware blocurile care pot fi readaugate in map-ul de unused. Sint sigur ca stiai asta, da' am vrut sa subliniez ca mecanismele mentionate de tine sint fix atit de eficiente pe cit loc de manevra au acele mecanisme, iar trim-ul ajuta foarte mult la pastrarea unui loc de manevra cit mai mare. Ca workaround (care in principiu ar putea fi folosit si la unele raid, inclusiv hardware) ar fi sa folosesti din start doar o parte din disc pentru ca partea nefolosita sa ramina in permanent in lista de blocuri unused a firmwareului in adaos fata de blocurile rezervate, private. Poti sa faci asta ori alocind o partitie mai mica decit discul pe un OS care nu stie trim sau (posibil in unele controllere) sa faci volumele raid din mai putin decit capacitatea nominala a discurilor din array. Unele controllere au un feature sa foloseasca doar o parte din disc. Cu linux md este si mai simplu, compui arrayul din partitii si ai grija ca partitiile sa fie mai mici. _______________________________________________ RLUG mailing list [email protected] http://lists.lug.ro/mailman/listinfo/rlug
