Permalänk
Medlem

SSD "Kvalité"?

Vet inte hur man ska beskriva det... Men sitter inne i Discord där vi pratar om diverse SSDs. Det blev en diskussion om det är bra att en SSD inte är fylld mer än runt 80-90% utav sitt utrymme och att den presterar exakt lika bra 99% full som om den vore 10% full.

Min fråga är då, hur är det egentligen? Försämras kvalitén eller prestandan ju mer man trycker in i en SSD?

EDIT: Om det gör det, på vilket sätt och varför?

Permalänk
Medlem

Kan inte riktigt tänka mig att det blir sämre. Det för att datan inte läses in mekaniskt som i en mekanisk hårddisk. Mekaniska hårddiskar måste ju leta över hela disken med en arm för att läsa datan.

Visa signatur

AMD R5 1600 3.2 GHz | Gigabyte AX370 Gaming K3 | Corsair Vengeance LP 2x8GB 3200MHz CL16 | Sapphire RX580 Nitro+ 8GB | Phanteks Eclipse P400S | 1x Samsung 970 EVO 500GB 1x WD 500GB | Windows 11 Pro

Permalänk
Medlem

Det beror lite på fall till fall, men ja du kan ibland tjäna en hel del* på att partitionera disken i en del du använder och en opartitionerad del. Tanken är då att den opartitionerade delen används av disken för att bl.a. effektivisera genom att bättre kunna flytta runt data etc. Vill du läsa mer om det så är det bara att läsa runt om over-provisioning.

http://www.seagate.com/gb/en/tech-insights/ssd-over-provision...

*på nyare diskar det blir nog svårt att faktiskt märka skillnad vid användning i de flesta fall men det kan bli en betydlig skillnad i t.ex. benchmarks

Visa signatur

Intel Core i7-11700K / Asus ROG Strix Z590-F / Asus 1070 Dual OC / G.Skill Trident Z RGB 32GB (4x8) 3200MHz CL14 / Corsair RM750x / Samsung 980 PRO 1TB / Lian Li PC-O11 Dynamic EVO / custom loop 3x360 / Asus ROG Swift PG278Q / Ducky Shine 5 RGB MX Red / Sennheiser HD660S / FiiO E10K / Audio-Technica AT2020USB+

Permalänk
Inaktiv

Det beror helt och hållet på hur den specifika modellen är designad. En del fungerar bra trots att de är fyllda (förutsatt att ingenting mer försöker skrivas till den). Andra förlorar enormt mycket prestanda när man närmar sig max.

Permalänk
Medlem
Skrivet av oTiuZ:

Kan inte riktigt tänka mig att det blir sämre. Det för att datan inte läses in mekaniskt som i en mekanisk hårddisk. Mekaniska hårddiskar måste ju leta över hela disken med en arm för att läsa datan.

Tänker mig det också...

Skrivet av anon12433:

Det beror helt och hållet på hur den specifika modellen är designad. En del fungerar bra trots att de är fyllda (förutsatt att ingenting mer försöker skrivas till den). Andra förlorar enormt mycket prestanda när man närmar sig max.

Vet du varför vissa förlorar prestanda när det börjar fyllas upp? :s

Permalänk

@StickanN:

SSDer kan definitivt börja att prestera sämre när de börjar få ont om plats.
Vet inte om jag är den bästa på att förklara utan jag tar och citerar Howtogeeks förklaring: "When an SSD has a lot of free space, it has a lot of empty blocks. When you go to write a file, it writes that file’s data into the empty blocks.

When an SSD has little free space, it has a lot of partially filled blocks. When you go to write a file, it will have to read the partially filled block into its cache, modify the partially-filled block with the new data, and then write it back to the hard drive. This will need to happen with every block the file must be written to.

In other words, writing to an empty block is fairly quick, but writing to a partially-filled block involves reading the partially-filled block, modifying its value, and then writing it back. Repeat this many, many times for each file you write to the drive as the file will likely consume many blocks."

Detta gör både att det tar längre tid att skriva och att mängden skrivningar på SSDen ökar.
Inte alla SSDer blir lika påverkade av det till samma grad däremot utan tack vare mer overprovisioning (ledigt utrymme som användaren inte kommer åt) eller som bättre NAND/kontroller kan de hålla prestanda mer jämn.

Sedan finns det en del SSDer som har en SLC-cache som är dynamisk (alltså storleken på SLC-cachen beror på mängden fritt utrymme) vilket också kan göra att prestanda sjunker eftersom att den minskar. (SLC-cachen alltså)
Till exempel MX200 (250GB 2.5" och 250-500GB mSATA), flera SSDer med Intel/Microns 3D NAND och även 960 EVO.

Och här kan du se hur en MX300 (som har en dynamisk SLC-cache) presterar när den är tom och när den är nästan full:

Här har du också en 840 (en SSD med TLC NAND och helt utan en SLC-cache) testad när den är nästan full.

Vet inte riktigt hur den skulle prestera på alla punkter om den var tom men den skulle åtminstone ha sekventiella skrivhastigheter över 300MB/s vilket betyder att det är en minskning på över 80%.

Permalänk
Medlem

Jag märker ingen direkt skillnad trots min är 90 procent full saknar ahci på modekort går lika snabbt som den var ny.

Tror att köper man en bra vettig ssd typ 850 evo eller gärna pro så spelar det nog ingen roll.

Jag pro modellen i bärbara samt en intel 320 i stationära båda är som sakt nästan knök fulla!

Visa signatur

Fractal r4 5volt. Amd 965 3.4 ghz Noctua DH 14 Asus M4N68T LE
Ssd diskar Samsung 850pro/intel 730 /320 Crucial m4 /8 tb mx500
Nätagg Corsair vx 450 = Seasonic m12d

Permalänk
Medlem

@StickanN:
De gamla styrchippen fick dippar på att fylla tomma cluster på full SSD förut, jag tror det är borta nu.

Visa signatur

Homer Simpson: "Internet! Is that thing still around?"

Continuously updating

Permalänk
Medlem
Visa signatur

Homer Simpson: "Internet! Is that thing still around?"

Continuously updating

Permalänk
Medlem

Livslängden bör påverkas negativt om disken är extremt full då wear leveling fungerar bättre om det finns mer ledigt utrymme. Allra helst på budget diskar som har generellt sett har mindre extra nand avsatt till just det ändamålet.

Permalänk

@StickanN:

Man kan också se att hur full den är påverkar prestanda i Anandtechs (under AnandTech Storage Bench - Heavy/Light) och Hardwarecanucks recensioner.

Exempel:

Permalänk
Medlem

Nu diskuterade ingen RAM-cache förvisso...

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem
Skrivet av KalBumling:

Livslängden bör påverkas negativt om disken är extremt full då wear leveling fungerar bättre om det finns mer ledigt utrymme. Allra helst på budget diskar som har generellt sett har mindre extra nand avsatt till just det ändamålet.

Jag allokerar runt 60-75% på mina SSD, resten låter jag vara opartionerat. Kanske overkill. Har ett gäng Nvme och ett gäng SATA i Samsungs PRO serier (960 och 850)

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem
Skrivet av StickanN:

Vet inte hur man ska beskriva det... Men sitter inne i Discord där vi pratar om diverse SSDs. Det blev en diskussion om det är bra att en SSD inte är fylld mer än runt 80-90% utav sitt utrymme och att den presterar exakt lika bra 99% full som om den vore 10% full.

Min fråga är då, hur är det egentligen? Försämras kvalitén eller prestandan ju mer man trycker in i en SSD?

EDIT: Om det gör det, på vilket sätt och varför?

Skrivet av StickanN:

Vet du varför vissa förlorar prestanda när det börjar fyllas upp? :s

Till att börja med så ja, det stämmer att en SSD blir långsammare när den blir mer full. För att förstå det, måste du tänka på hur SSD lagrar sin data.

Varning för vägg av text här nu, men jag hoppas det förklarar det så du förstår.

Låt oss visuellt använda flera rum, och flyttlådor. Varje rum har en dörr och varje rum har plats för många flyttlådor. På dörren till varje rum är en lista med adresser och vilken "LBA-adress" som varje plats för lådorna representerar.

Vi börjar med äldre teknik, sk SLC NAND, där en bit lagras i varje cell. Så ditt rum har flyttlådor stående på golvet längs med alla väggar. Vi säger att du har 8 olika rum, alla har vars en dörr in och du kan komma åt alla lådor enkelt, med direkt väg till allt.

När du tömmer disken, tar vi ut alla lådor, så rummen är helt tomma. Sen börjar du fylla med filer vilket hamnar i dessa lådor. Spelar ingen roll vad du lägger i lådorna, eller om du fyller dem eller inte, så tar de lika mycket plats, dvs en låda. Listan på dörren fylls i för att visa att just "den lådan" innehåller data från den LBA adressen.

Problemet kommer när du ska ta bort saker... för vad som sker i datorn är att man stryker LBA adressen. Men ingen går in i rummet och tömmer något, utan det ligger kvar. Detta görs för det är så HDD fungerar, och datorer gjordes inte för detta.

Du kan tänka dig att efter ett tag blir typ alla platser i rummet fyllda med lådor, men inte alla ha något du vill spara. Men varje gång du ska lagra något, måste du först ta fram den lådan med gammalt innehåll och tömma den i soporna, sen sätta tillbaka lådan, och sen fylla med data. Detta tar tid.. vilket sänker prestandan.

Så man uppfann TRIM som är ett sätt för disken att veta att LBA adressen nu är tom, något som inte gått att göra tidigare. Detta gör att du nu kan ha en vaktmästare som tittar på listan på dörren, ser att där är några platser som är lediga, och kan gå in och tömma lådorna så platsen är tom när du behöver spara ny data.

Vips så har vi fått upp prestandan igen till nyskick.

Nu kommer vi dock till nästa generation teknik, kallad MLC. I denna så börjar vi stapla lådor, samt vi sätter dem i grupper av flera lådor (pga tekniken som MLC begränsar kan man inte längre direkt hantera en låda i taget.

Så nu börjar vi med samma 8 rum... samma lådor, men vi staplar dem, och sätter dem i grupper med tex 8st platser x 2 på höjd = 16 lådor. Detta kallar vi ett block. I övrigt så är det samma.

Du skriver din data och det lagras på höjd i dessa lådor... och nu kommer problemet med TRIM och städning. Städaren kan bara tömma hela "block"... inte induviduella lådor. Så om du har en fil, på en LBA adress i ett block som används, kan inte hela den ytan tömmas. Utan du har en massa "extra utrymme" som bara står där.

Det du kan göra är att ta lådan med data du ska spara, och flytta den till ett nytt block, och sen tömma hela det gamla blocket, och exakt det gör din SSD. Men när du börjar fylla disken, behövs mer och mer av denna överblivna plats. Så det blir en hel del omflyttande, vilket sliter på SSDn.

När du når en punk så hinner helt enkelt inte vaktmästaren runt och sortera om allt, utan du hamnar i en "det är fullt" nivå, även om du tekniskt sett har ledig plats kvar. Då måste du ta ut alla lådor som ska sparas ur flera blocks... tömma allt skit sen sätta tillbaka allt. Och vi är tillbaka på sämre prestanda igen.

Detta är i enkelhet vad som sker (det är mer komplicerat) när du fyller din disk och varför du tappar prestanda på en SSD när den är full.

Så hur fixar vi detta? Finns flera knep. Ena är att ordna snabbare NAND, så att vaktmästaren hinner jobba och rotera runt, men detta minskar inte slitaget. Och det kommer tillfällen även det inte räcker. Vad vi istället kan göra är att göra rummen större, och helt enkelt inte visa allt utrymme till dig.

Och detta görs på dagens SSDer, ofta med ca 7% OP på klient diskar (enterprise har mer). Och du kan själv göra det också, genom att lämna en del av SSDn icke partionerad... så har den mer chans att sprida ut din data. Nu har vaktmästaren enklare att hitta tomt utrymme, och du har plats att spara data utan att vänta på tömning, så win-win.

Problemet? Kostnaden... du betalar trots allt för en större disk du inte kan använda. Men det är uppoffringen man får göra på ett eller annat sätt för att få kontroll på slitaget och på prestandan.

Sen kommer nästa problem... vi tittade på MLC, och faktiskt teknik från typ 2012. Idag har vi TLC, dvs vi stapar lådorna högre... med 3 lådor. Blocken är även större så du har nu kanske 40 i ett block x3 höjd (som ex, det beror på NAND konstruktion). Detta gör ju att det blir mer och mer känsligt för när den blir full.

Det är tom så illa att när du närmar dig 35% använt så kan tekniskt sett all golvyta vara borta... och alla block fulla nog för att behöva tömmas. Tänk dig då hur illa det blir när du närmar dig 75% full... 90% full, 99% full. Katastrof.

Samtidigt vill tillverkarna tjäna mer, så de tom har börjat plocka bort OP utrymmet som du fick innan, vilket kan döda prestandan ännu mer.

Så ja... det beror mycket på SSDn, kvalitén på dens design och hur mycket marginal den har, men generellt sett... fyll den inte.

Vad de också börjat göra för att göra SSDer billigare är att minska antal rum, och bara göra dem större. Så färre kanaler mellan kontroller och NAND, det som förr var 8, är idag 4/6. Detta gör ju att när när man lastar in/ut ur ett rum, kan inget annat ske samtidigt, vilket begränsar prestandan, speciellt om man måste städa hela tiden.

Dold text

Ang slitage på disken kan du titta här, det visar hur mycket slitaget ökar när man fyller en disk med data. Write Amplication Factor är hur mycket extra jobb du och vaktmästaren har för att rotera runt dessa block och lådor, för att kunna skriva all data. Så skriver du 1GB... sliter disken kanske 4-5GB mer på detta.

Skrivet av pompa_kumla:

Jag märker ingen direkt skillnad trots min är 90 procent full saknar ahci på modekort går lika snabbt som den var ny.

Saknar du AHCI, saknar du TRIM och då kör du redan på långsam nivå. RAID med TRIM finns också som alternativ, men utan TRIM stöd, så är din disk redan illa utsatt och slits fortare.

Skrivet av pompa_kumla:

Tror att köper man en bra vettig ssd typ 850 evo eller gärna pro så spelar det nog ingen roll.

Jag pro modellen i bärbara samt en intel 320 i stationära båda är som sakt nästan knök fulla!

850 EVO kan tydligen då en skyhög WAf om den blir för full den med. Den har dock snabbt nog NAND för att "hinna med"... ja. Men det minskar inte slitaget. Det du gör kortar livslängden på SSDn med typ 75% eller värre.

Skrivet av Lengab:

@StickanN:
De gamla styrchippen fick dippar på att fylla tomma cluster på full SSD förut, jag tror det är borta nu.

Tvärt om tyvärr. Kontrollerna har blivit bättre bara, och många TLC diskar har SLC cache för att "hantera det"... men det är flera gånger värre idag än typ 2010-2012 när MLC var ungt. NANDet har beroende på tillverkare blivit bättre fram till typ 2012... sen efter det har man bara försämrat SSDer på alla sätt, för att kunna sälja dem billigare och billigare, till en allt mer girig marknad.

Idag är det så illa att OEM i billiga laptops kan göra så pass dåliga SSDer att de håller 1 år, sen är de utslitna. De bryr sig inte... 1 års garanti.

Permalänk
Medlem
Skrivet av Paddanx:

Till att börja med så ja, det stämmer att en SSD blir långsammare när den blir mer full. För att förstå det, måste du tänka på hur SSD lagrar sin data.

Varning för vägg av text här nu, men jag hoppas det förklarar det så du förstår.

Låt oss visuellt använda flera rum, och flyttlådor. Varje rum har en dörr och varje rum har plats för många flyttlådor. På dörren till varje rum är en lista med adresser och vilken "LBA-adress" som varje plats för lådorna representerar.

Vi börjar med äldre teknik, sk SLC NAND, där en bit lagras i varje cell. Så ditt rum har flyttlådor stående på golvet längs med alla väggar. Vi säger att du har 8 olika rum, alla har vars en dörr in och du kan komma åt alla lådor enkelt, med direkt väg till allt.

När du tömmer disken, tar vi ut alla lådor, så rummen är helt tomma. Sen börjar du fylla med filer vilket hamnar i dessa lådor. Spelar ingen roll vad du lägger i lådorna, eller om du fyller dem eller inte, så tar de lika mycket plats, dvs en låda. Listan på dörren fylls i för att visa att just "den lådan" innehåller data från den LBA adressen.

Problemet kommer när du ska ta bort saker... för vad som sker i datorn är att man stryker LBA adressen. Men ingen går in i rummet och tömmer något, utan det ligger kvar. Detta görs för det är så HDD fungerar, och datorer gjordes inte för detta.

Du kan tänka dig att efter ett tag blir typ alla platser i rummet fyllda med lådor, men inte alla ha något du vill spara. Men varje gång du ska lagra något, måste du först ta fram den lådan med gammalt innehåll och tömma den i soporna, sen sätta tillbaka lådan, och sen fylla med data. Detta tar tid.. vilket sänker prestandan.

Så man uppfann TRIM som är ett sätt för disken att veta att LBA adressen nu är tom, något som inte gått att göra tidigare. Detta gör att du nu kan ha en vaktmästare som tittar på listan på dörren, ser att där är några platser som är lediga, och kan gå in och tömma lådorna så platsen är tom när du behöver spara ny data.

Vips så har vi fått upp prestandan igen till nyskick.

Nu kommer vi dock till nästa generation teknik, kallad MLC. I denna så börjar vi stapla lådor, samt vi sätter dem i grupper av flera lådor (pga tekniken som MLC begränsar kan man inte längre direkt hantera en låda i taget.

Så nu börjar vi med samma 8 rum... samma lådor, men vi staplar dem, och sätter dem i grupper med tex 8st platser x 2 på höjd = 16 lådor. Detta kallar vi ett block. I övrigt så är det samma.

Du skriver din data och det lagras på höjd i dessa lådor... och nu kommer problemet med TRIM och städning. Städaren kan bara tömma hela "block"... inte induviduella lådor. Så om du har en fil, på en LBA adress i ett block som används, kan inte hela den ytan tömmas. Utan du har en massa "extra utrymme" som bara står där.

Det du kan göra är att ta lådan med data du ska spara, och flytta den till ett nytt block, och sen tömma hela det gamla blocket, och exakt det gör din SSD. Men när du börjar fylla disken, behövs mer och mer av denna överblivna plats. Så det blir en hel del omflyttande, vilket sliter på SSDn.

När du når en punk så hinner helt enkelt inte vaktmästaren runt och sortera om allt, utan du hamnar i en "det är fullt" nivå, även om du tekniskt sett har ledig plats kvar. Då måste du ta ut alla lådor som ska sparas ur flera blocks... tömma allt skit sen sätta tillbaka allt. Och vi är tillbaka på sämre prestanda igen.

Detta är i enkelhet vad som sker (det är mer komplicerat) när du fyller din disk och varför du tappar prestanda på en SSD när den är full.

Så hur fixar vi detta? Finns flera knep. Ena är att ordna snabbare NAND, så att vaktmästaren hinner jobba och rotera runt, men detta minskar inte slitaget. Och det kommer tillfällen även det inte räcker. Vad vi istället kan göra är att göra rummen större, och helt enkelt inte visa allt utrymme till dig.

Och detta görs på dagens SSDer, ofta med ca 7% OP på klient diskar (enterprise har mer). Och du kan själv göra det också, genom att lämna en del av SSDn icke partionerad... så har den mer chans att sprida ut din data. Nu har vaktmästaren enklare att hitta tomt utrymme, och du har plats att spara data utan att vänta på tömning, så win-win.

Problemet? Kostnaden... du betalar trots allt för en större disk du inte kan använda. Men det är uppoffringen man får göra på ett eller annat sätt för att få kontroll på slitaget och på prestandan.

Sen kommer nästa problem... vi tittade på MLC, och faktiskt teknik från typ 2012. Idag har vi TLC, dvs vi stapar lådorna högre... med 3 lådor. Blocken är även större så du har nu kanske 40 i ett block x3 höjd (som ex, det beror på NAND konstruktion). Detta gör ju att det blir mer och mer känsligt för när den blir full.

Det är tom så illa att när du närmar dig 35% använt så kan tekniskt sett all golvyta vara borta... och alla block fulla nog för att behöva tömmas. Tänk dig då hur illa det blir när du närmar dig 75% full... 90% full, 99% full. Katastrof.

Samtidigt vill tillverkarna tjäna mer, så de tom har börjat plocka bort OP utrymmet som du fick innan, vilket kan döda prestandan ännu mer.

Så ja... det beror mycket på SSDn, kvalitén på dens design och hur mycket marginal den har, men generellt sett... fyll den inte.

Vad de också börjat göra för att göra SSDer billigare är att minska antal rum, och bara göra dem större. Så färre kanaler mellan kontroller och NAND, det som förr var 8, är idag 4/6. Detta gör ju att när när man lastar in/ut ur ett rum, kan inget annat ske samtidigt, vilket begränsar prestandan, speciellt om man måste städa hela tiden.

Dold text

Ang slitage på disken kan du titta här, det visar hur mycket slitaget ökar när man fyller en disk med data. Write Amplication Factor är hur mycket extra jobb du och vaktmästaren har för att rotera runt dessa block och lådor, för att kunna skriva all data. Så skriver du 1GB... sliter disken kanske 4-5GB mer på detta.

Saknar du AHCI, saknar du TRIM och då kör du redan på långsam nivå. RAID med TRIM finns också som alternativ, men utan TRIM stöd, så är din disk redan illa utsatt och slits fortare.

850 EVO kan tydligen då en skyhög WAf om den blir för full den med. Den har dock snabbt nog NAND för att "hinna med"... ja. Men det minskar inte slitaget. Det du gör kortar livslängden på SSDn med typ 75% eller värre.

Tvärt om tyvärr. Kontrollerna har blivit bättre bara, och många TLC diskar har SLC cache för att "hantera det"... men det är flera gånger värre idag än typ 2010-2012 när MLC var ungt. NANDet har beroende på tillverkare blivit bättre fram till typ 2012... sen efter det har man bara försämrat SSDer på alla sätt, för att kunna sälja dem billigare och billigare, till en allt mer girig marknad.

Idag är det så illa att OEM i billiga laptops kan göra så pass dåliga SSDer att de håller 1 år, sen är de utslitna. De bryr sig inte... 1 års garanti.

Jo jag är medveten om det men hastigheten har inte blivit sämre för mig trots samma installation i 3 -4 år nu.
Givetvis skulle jag ha ahci på om jag haft modekort som stödjer det men så blev inte fallet då jag passade på å köpa modekort för 99 eller 199kr på magasinet när dem reade ut samt Corsair vx 450 för 299kr. Så blev ett par reserv modekort och nätagg till båda burkarna.

Visa signatur

Fractal r4 5volt. Amd 965 3.4 ghz Noctua DH 14 Asus M4N68T LE
Ssd diskar Samsung 850pro/intel 730 /320 Crucial m4 /8 tb mx500
Nätagg Corsair vx 450 = Seasonic m12d

Permalänk
Medlem
Skrivet av pompa_kumla:

Jo jag är medveten om det men hastigheten har inte blivit sämre för mig trots samma installation i 3 -4 år nu.
Givetvis skulle jag ha ahci på om jag haft modekort som stödjer det men så blev inte fallet då jag passade på å köpa modekort för 99 eller 199kr på magasinet när dem reade ut samt Corsair vx 450 för 299kr. Så blev ett par reserv modekort och nätagg till båda burkarna.

Det man kan göra är samma knep man fick göra innan TRIM... dvs extra OP (lämna opartitionerat utrymme). Gjorde detta själv med tidigare MLC + SLC som inte hade fått TRIM än (har tom en disk i laptop bredvid mid med OCZ Core (1) som har samma problem).

Gammal disk ja... men 128GB är lite synd att slänga. Sen att den kostade typ 5kkr som ny är väl också en del av saken. De var tider det... när SSD knappt kunde överprestera HDDs

Men är du nöjd.. så ok. Du tappar en hel del prestanda + ökad slitage dock, men är du med på det så, varför ska jag klaga

Permalänk
Medlem

Jag kör s.k. Over Provisioning på alla mina SSD iaf. enl. Samsung's rekommendationer.

Visa signatur

“Problems that remain persistently insoluble should always be suspected as questions asked in the wrong way.” ― Alan W. Watts

Permalänk
Permalänk
Skrivet av Paddanx:

Till att börja med så ja, det stämmer att en SSD blir långsammare när den blir mer full. För att förstå det, måste du tänka på hur SSD lagrar sin data.

Varning för vägg av text här nu, men jag hoppas det förklarar det så du förstår.

Låt oss visuellt använda flera rum, och flyttlådor. Varje rum har en dörr och varje rum har plats för många flyttlådor. På dörren till varje rum är en lista med adresser och vilken "LBA-adress" som varje plats för lådorna representerar.

Vi börjar med äldre teknik, sk SLC NAND, där en bit lagras i varje cell. Så ditt rum har flyttlådor stående på golvet längs med alla väggar. Vi säger att du har 8 olika rum, alla har vars en dörr in och du kan komma åt alla lådor enkelt, med direkt väg till allt.

När du tömmer disken, tar vi ut alla lådor, så rummen är helt tomma. Sen börjar du fylla med filer vilket hamnar i dessa lådor. Spelar ingen roll vad du lägger i lådorna, eller om du fyller dem eller inte, så tar de lika mycket plats, dvs en låda. Listan på dörren fylls i för att visa att just "den lådan" innehåller data från den LBA adressen.

Problemet kommer när du ska ta bort saker... för vad som sker i datorn är att man stryker LBA adressen. Men ingen går in i rummet och tömmer något, utan det ligger kvar. Detta görs för det är så HDD fungerar, och datorer gjordes inte för detta.

Du kan tänka dig att efter ett tag blir typ alla platser i rummet fyllda med lådor, men inte alla ha något du vill spara. Men varje gång du ska lagra något, måste du först ta fram den lådan med gammalt innehåll och tömma den i soporna, sen sätta tillbaka lådan, och sen fylla med data. Detta tar tid.. vilket sänker prestandan.

Så man uppfann TRIM som är ett sätt för disken att veta att LBA adressen nu är tom, något som inte gått att göra tidigare. Detta gör att du nu kan ha en vaktmästare som tittar på listan på dörren, ser att där är några platser som är lediga, och kan gå in och tömma lådorna så platsen är tom när du behöver spara ny data.

Vips så har vi fått upp prestandan igen till nyskick.

Nu kommer vi dock till nästa generation teknik, kallad MLC. I denna så börjar vi stapla lådor, samt vi sätter dem i grupper av flera lådor (pga tekniken som MLC begränsar kan man inte längre direkt hantera en låda i taget.

Så nu börjar vi med samma 8 rum... samma lådor, men vi staplar dem, och sätter dem i grupper med tex 8st platser x 2 på höjd = 16 lådor. Detta kallar vi ett block. I övrigt så är det samma.

Du skriver din data och det lagras på höjd i dessa lådor... och nu kommer problemet med TRIM och städning. Städaren kan bara tömma hela "block"... inte induviduella lådor. Så om du har en fil, på en LBA adress i ett block som används, kan inte hela den ytan tömmas. Utan du har en massa "extra utrymme" som bara står där.

Det du kan göra är att ta lådan med data du ska spara, och flytta den till ett nytt block, och sen tömma hela det gamla blocket, och exakt det gör din SSD. Men när du börjar fylla disken, behövs mer och mer av denna överblivna plats. Så det blir en hel del omflyttande, vilket sliter på SSDn.

När du når en punk så hinner helt enkelt inte vaktmästaren runt och sortera om allt, utan du hamnar i en "det är fullt" nivå, även om du tekniskt sett har ledig plats kvar. Då måste du ta ut alla lådor som ska sparas ur flera blocks... tömma allt skit sen sätta tillbaka allt. Och vi är tillbaka på sämre prestanda igen.

Detta är i enkelhet vad som sker (det är mer komplicerat) när du fyller din disk och varför du tappar prestanda på en SSD när den är full.

Så hur fixar vi detta? Finns flera knep. Ena är att ordna snabbare NAND, så att vaktmästaren hinner jobba och rotera runt, men detta minskar inte slitaget. Och det kommer tillfällen även det inte räcker. Vad vi istället kan göra är att göra rummen större, och helt enkelt inte visa allt utrymme till dig.

Och detta görs på dagens SSDer, ofta med ca 7% OP på klient diskar (enterprise har mer). Och du kan själv göra det också, genom att lämna en del av SSDn icke partionerad... så har den mer chans att sprida ut din data. Nu har vaktmästaren enklare att hitta tomt utrymme, och du har plats att spara data utan att vänta på tömning, så win-win.

Problemet? Kostnaden... du betalar trots allt för en större disk du inte kan använda. Men det är uppoffringen man får göra på ett eller annat sätt för att få kontroll på slitaget och på prestandan.

Sen kommer nästa problem... vi tittade på MLC, och faktiskt teknik från typ 2012. Idag har vi TLC, dvs vi stapar lådorna högre... med 3 lådor. Blocken är även större så du har nu kanske 40 i ett block x3 höjd (som ex, det beror på NAND konstruktion). Detta gör ju att det blir mer och mer känsligt för när den blir full.

Det är tom så illa att när du närmar dig 35% använt så kan tekniskt sett all golvyta vara borta... och alla block fulla nog för att behöva tömmas. Tänk dig då hur illa det blir när du närmar dig 75% full... 90% full, 99% full. Katastrof.

Samtidigt vill tillverkarna tjäna mer, så de tom har börjat plocka bort OP utrymmet som du fick innan, vilket kan döda prestandan ännu mer.

Så ja... det beror mycket på SSDn, kvalitén på dens design och hur mycket marginal den har, men generellt sett... fyll den inte.

Vad de också börjat göra för att göra SSDer billigare är att minska antal rum, och bara göra dem större. Så färre kanaler mellan kontroller och NAND, det som förr var 8, är idag 4/6. Detta gör ju att när när man lastar in/ut ur ett rum, kan inget annat ske samtidigt, vilket begränsar prestandan, speciellt om man måste städa hela tiden.

Dold text

Bra förklaring om varför SSDer presterar sämre när de börjar få ont om ledigt utrymme.

Angående om att tillverkarna gärna vill ta bort OP, tänker du på (även om det kan finnas fler) Patriot Spark då?
Kommer ihåg att den i en recensionen inte klarade av att genomföra ett test just för att den saknade OP.

Skrivet av Paddanx:

850 EVO kan tydligen då en skyhög WAf om den blir för full den med. Den har dock snabbt nog NAND för att "hinna med"... ja. Men det minskar inte slitaget. Det du gör kortar livslängden på SSDn med typ 75% eller värre.

Om det du pratar om är det jag tror det är (och jag känner mig hyfsat säker på det) är det dock under specifika förhållanden som det uppkommit (och sedan är det ju såklart flera olika SSDer som haft problem med det).

Permalänk
Medlem
Skrivet av Paddanx:

Det man kan göra är samma knep man fick göra innan TRIM... dvs extra OP (lämna opartitionerat utrymme). Gjorde detta själv med tidigare MLC + SLC som inte hade fått TRIM än (har tom en disk i laptop bredvid mid med OCZ Core (1) som har samma problem).

Gammal disk ja... men 128GB är lite synd att slänga. Sen att den kostade typ 5kkr som ny är väl också en del av saken. De var tider det... när SSD knappt kunde överprestera HDDs

Men är du nöjd.. så ok. Du tappar en hel del prestanda + ökad slitage dock, men är du med på det så, varför ska jag klaga

Tar till mig det blir säkert så när jag är tvungen att formatera om:)

Visa signatur

Fractal r4 5volt. Amd 965 3.4 ghz Noctua DH 14 Asus M4N68T LE
Ssd diskar Samsung 850pro/intel 730 /320 Crucial m4 /8 tb mx500
Nätagg Corsair vx 450 = Seasonic m12d

Permalänk
Medlem
Skrivet av Glaring_Mistake:

Bra förklaring om varför SSDer presterar sämre när de börjar få ont om ledigt utrymme.

Angående om att tillverkarna gärna vill ta bort OP, tänker du på (även om det kan finnas fler) Patriot Spark då?
Kommer ihåg att den i en recensionen inte klarade av att genomföra ett test just för att den saknade OP.

Tackar.

Det var en av dem, men även om du tittar på hur mycket OP som lämnas ledigt nu på en del diskar vs förr. Titta på MX300 och lite andra diskar med dynamisk SLC cache. Denna kommer att använda all denna OP, och blir då beroende på att det finns ledigt utrymme. Det syns väldigt tydligt i hur otroligt långsam MX300 kan bli när den blir full.

Och nu när SSDers DRAM börjar försvinna (för att använda system RAM istället) så tror jag att de kommer göra allt för att minska "slöseriet"... Ligger i $$$, och det är vad tillverkare tittar på.

Skrivet av Glaring_Mistake:

Om det du pratar om är det jag tror det är (och jag känner mig hyfsat säker på det) är det dock under specifika förhållanden som det uppkommit (och sedan är det ju såklart flera olika SSDer som haft problem med det).

Normalt, ja, men det var faktiskt passande i denna sits då han saknar TRIM och AHCI, vilket gör att det riskerar bli "samma fenomen" som i ditt test med USB och ingen TRIM. Kanske inte 8x som du peaka i... men 3-4X är inte alls omöjligt vilket kan bli så illa som 75% av livslängden som bara "försvinner".

Detta då disken aldrig kan "fixa sig" när den väl blivit "skitig". Du kan se länken med OP givet ovan för att se just exakt denna faktorn bara som "bas nivå" och detta på MLC disk... Han kan ju ta bort hälften av alla filer, och disken tror fortfarande att den är 100% full, då alla LBA adresser har med stor sannolikhet skrivits till en gång på 3-4 år.

Utan extra OP så är det enda "lediga utrymmet" på den disken de få % OP den har som roteras runt. Därför skulle en användare gjord OP (opartitionerat utrymme) vara enda hållbara lösningen för att hålla slitaget under kontroll och även så lite som 10-15% bör göra väldigt stor skillnad.

Har man dock TRIM, är detta en helt annan sak, då även om du fyller disken 90%, har du 10% + OP % "ledigt" för disken.

Permalänk
Skrivet av Paddanx:

Normalt, ja, men det var faktiskt passande i denna sits då han saknar TRIM och AHCI, vilket gör att det riskerar bli "samma fenomen" som i ditt test med USB och ingen TRIM. Kanske inte 8x som du peaka i... men 3-4X är inte alls omöjligt vilket kan bli så illa som 75% av livslängden som bara "försvinner".

Ja, om han saknar TRIM och AHCI är det definitivt risk att det blir som det (råkade) bli i mitt test.
Då är det nog bra om man har lite OP för att hindra WA från att bli allt för hög.

Permalänk
Medlem

Det beror också på hur disken används. Är det en systemdisk där det förekommer både mycket skrivningar och läsningar så är det bra att ha lite extra utrymme ledigt. Men är det en SSD som du nästan bara läser ifrån (t.ex. ett Steam bibliotek) spelar det ingen större roll för varken prestandan eller livslängden.

Sedan är det skillnad på recensioner där de använder extremt tunga test (i princip tortyr), och vanligt dagligt användande. I verkligheten sitter du oftast inte och skriver data konstant till SSD:n utan du sparar nån fil då och då, Windows skriver kanske lite i någon loggfil ibland o.s.v. Då hinner oftast SLC och RAM cachen inte fyllas, och den over-provisioning som finns inbyggd i SSD:n räcker till.

Med tanke på hur dyr SSD-lagring är just nu så är mina rätt välfyllda. Man vill ju utnyttja den lagring man har betalat dyra pengar för. Priserna kommer hinna gå ner innan livslängden blir en faktor vid normal användning.

Visa signatur

Ryzen 7 3800X, Asus Prime X370 Pro, 32 GB LPX 3600, Gainward RTX 3060 Ti Ghost, 7 TB SSD + 4 TB HDD

Permalänk
Rekordmedlem

Det beror på hur ssdn används.
En ssd kommer framförallt att tappa skrivhastighet när den börjar bli full för den kan råka ut för att inte ha lediga block att skriva till så att den tvingas göra skräphantering innan den kan skriva.
Läshastigheten påverkas däremot inte såvida man inte försöker läsa och skriva "samtidigt"
Så en ssd som tex innehåller operativsystemet kommer att lida av att vara nästan full men en som bara används för att läsa från kommer inte att påverkas särskilt mycket.
Trim är den standardfunktion som togs fram för att städa disken när den inte används och finns det inte tid för det att få jobba så tvingar man ssdn att utföra blockrensningen mitt i skrivningen av en fil om det inte finns plats nog att skriva filen utan att behöva rensa delvis fyllda block.

Visa signatur

R5 5600G, Asus ROG STRIX X470-F Gaming, WD SN850X 2TB, Seasonic Focus+ Gold 650W, Aerocool Graphite v3, Tittar på en Acer ET430Kbmiippx 43" 4K. Lyssnar på Behringer DCX2496, Truth B3031A, Truth B2092A. Har också oscilloskop, mätmikrofon och colorimeter.

Permalänk
Medlem
Skrivet av Pepsin:

Det beror också på hur disken används. Är det en systemdisk där det förekommer både mycket skrivningar och läsningar så är det bra att ha lite extra utrymme ledigt. Men är det en SSD som du nästan bara läser ifrån (t.ex. ett Steam bibliotek) spelar det ingen större roll för varken prestandan eller livslängden.

Sedan är det skillnad på recensioner där de använder extremt tunga test (i princip tortyr), och vanligt dagligt användande. I verkligheten sitter du oftast inte och skriver data konstant till SSD:n utan du sparar nån fil då och då, Windows skriver kanske lite i någon loggfil ibland o.s.v. Då hinner oftast SLC och RAM cachen inte fyllas, och den over-provisioning som finns inbyggd i SSD:n räcker till.

Med tanke på hur dyr SSD-lagring är just nu så är mina rätt välfyllda. Man vill ju utnyttja den lagring man har betalat dyra pengar för. Priserna kommer hinna gå ner innan livslängden blir en faktor vid normal användning.

Jag håller med din logik, utom på en punkt, vilket är "dyra priser och livslängden du då oroar dig för". SSD köper du för att få prestanda, inte lagring. Lagring är en HDD till för... Så prestanda och värde för pengarna måste ses ur lite mer kritisk synpunkt.

Och en 500GB SSD kommer inte bli gammal på 5+ år... helt ärligt. För dig, kanske ja, men inte i ren allmänhet. Finns alltid nytta för någon med 256-512GB SSD, och det enda som kommer ta över det är om större diskar blir så pass billiga att du har råd att "slänga" denna. Dvs... 1TB SSD behöver typ kosta vad <200GB gör idag, vilket inte kommer ske på länge.

Lägger man till det i en sak jag läste i en artikel om nästa gen diskar från Toshiba, så ser man att OEM verkligen inte vill ha större, även om tillverkarna kan det.
"The 512Gb TLC could easily enable capacities above 1TB, but the OEM market currently isn't interested."

Därför säger jag så här... på din nu dyra investering, är det inte vettigt att offra kanske 5% av utrymmet, för att få kanske 50%+ mer livslängd och mer prestanda, speciellt om du har en enklare budget disk som kanske inte har 2k P/E cykler?

Så när du säger: "Jag vill använda min dyra SSD" och sen inte ens kunna offra så lite utrymme (25GB på 500GB), för så mycket mer livslängd så du får mer värde ur din investering förstår jag inte. Tycker det känns lite dumsnålt.

På en mindre, tex 120GB SSD håller jag dock med... där är det inte mycket poäng att hålla den vid liv, då 512GB bör vara mer prisvärda snart nog.