Fórum Root.cz
Hlavní témata => Hardware => Téma založeno: JardaP . 08. 01. 2014, 22:02:31
-
Dobry den.
Nevite nekdo, jestli lze nejakou utilitou vyresit TRIM na SSD disku ve Win XP? Potrebuji vymenit krachly disk v ThinkPadu X40. Nahradni mechanicky disk 1.8" je drahy, ma malou kapacitu a hlavne je siiiiiiiiilene pomaly - je to slabina tohoto ThinkPadu. SSD disk by z toho stroje udelal jeste celkem dobrou pilu, ale co s TRIMem? Ten stroj zarucene neutahne W 7 a a ani na to nema RAM. Linux tam dat nelze pro "zurivy odpor" uzivatele, i kdyz na tom jinak beha pomerne pekne.
Nekteri vyrobci dodavaji k diskum utilitu, kterou lze jaksi delat TRIM na Widlich, ktere to neumi, ale zrovna Kingspec, ktery asi jako jediny vyrabi disky v tomhle podivnem formatu pro X40, jaksi nic takoveho nenabizi.
Existuje nejake genericke reseni? Predstava by byla takova, ze se treba jednou tydne pusti utilitka, ktera proleze FS a sdeli disku, na kterych blocich lze udelat TRIM.
Diky.
-
Existuje nejake genericke reseni? Predstava by byla takova, ze se treba jednou tydne pusti utilitka, ktera proleze FS a sdeli disku, na kterych blocich lze udelat TRIM.
http://www.thessdreview.com/Forums/showthread.php?t=2647
-
Sakra, to je fofr. Takze majiteli zkusim napad s SSD diskem predhodit a kdyz se nebude prilis branit, zkusim to. Diky moc.
-
Forced-TRIM will fill up all available space and free it again.
This causes the SSD to TRIM all free space.
Space is allocated only; no actual writing is done. It will cause very little wear to your drive.
The program itself has no TRIM code.
It assumes that your Windows 7 TRIM is fully working.
Run with Administrator permission!
Koukám na správný program? Píšou tam něco o Win 7, žádná zmíňka o tom, že by v něčem pomohl u WinXP.
-
Sakra, to je fofr. Takze majiteli zkusim napad s SSD diskem predhodit a kdyz se nebude prilis branit, zkusim to. Diky moc.
Pokud by to bylo ještě aktuální, tak mi po instalaci SSD zbyl jeden 1,8" ZIF paralelní ATA Samsung 80 GB (4800RPM). Rád ho za lidový peníz udám.
-
Umi linux zatrimovat NTFS? pokud jo, tak udelat linuxovej bootloader tech XP, kterej provede TRIM
-
Sakra, to je fofr. Takze majiteli zkusim napad s SSD diskem predhodit a kdyz se nebude prilis branit, zkusim to. Diky moc.
Pokud by to bylo ještě aktuální, tak mi po instalaci SSD zbyl jeden 1,8" ZIF paralelní ATA Samsung 80 GB (4800RPM). Rád ho za lidový peníz udám.
Aktualni to je, ale prijde na to, jestli se da narvat do ThinkPadu x40. Tam je takovy dementni disk s konektorem na strane. Kdyztak napis na jarda7557 na centrum tecka cz.
-
Umi linux zatrimovat NTFS? pokud jo, tak udelat linuxovej bootloader tech XP, kterej provede TRIM
Zajimava myslenka, muzes to nejak upresnit?
-
no, udelat bootloader, co nabootuje winXP a ze by spustil ten linux ten trim, nez se bootnou ty XP, ktery ho neumej
-
Až na to, že z Linuxu není NTFS možné TRIMnout.
Správné řešení je obsadit pouze <80% místa a zbytek nechat nepřidělený, což v kombinaci s řadiči SandForce problém spolehlivě vyřeší.
-
A ještě to doplním, kdo chce SSD šetřit, může ten postup používat i s W7 a Linuxem, ze 128GB SSD je přístupných 120GB, z toho pártišna je přes 100GB, tedy těch 20+8 GB je věnováno na úkor spolehlivosti. SSD totiž rozděluje data do buněk bez ohledu na to, jestli přes ně je a nebo není natažená pártišna. Tenhle trik v kombinaci se SandForce řadičem zajistí optimální opotřebení disku.
Například ve Windows 7/8 se TRIM pouští právě 1x týdně a kolikrát se ani nespustí, jak jsem si všiml, teď jsem se koukal a poslední trim jel 30.1, pokud bude mít chuť, tak se spustí dnes znovu.
Pokud bys chtěl, aby měla dušička s XP klid, udělej to, přesně jak jsem řekl, vezmi SSD se SandForce chipsetem, 20% kapacity nech volné a 1x za pár měsíců udělej TRIM té XPčkové NTFKy na nějakých W7, já to dělám na starších NB s periodou 3-6 měsíců, nabootuju live W7 z Flashky a trimnu to.
-
ha, tusil jsem tam nejakej zadrhel
-
http://koitsu.wordpress.com/2013/02/12/how-intels-ssd-toolbox-optimizer-trim-feature-works/ ?
-
Až na to, že z Linuxu není NTFS možné TRIMnout.
Správné řešení je obsadit pouze <80% místa a zbytek nechat nepřidělený, což v kombinaci s řadiči SandForce problém spolehlivě vyřeší.
Takze SandForce radic zna NTFS? Nebo jak pozna, ktere sektory souboroveho systemu uz nejsou potreba a muze si je na disku interne smazat?
Neni to nahodou tak, ze operacni system musi umet trim a pak pomoci ata prikazu (nebo necim podobnym) rekne disku: adresa 123 az 456 na oddilu sda1 uz neobsahuje data, muzes si ji vymazat. A adresovani uz je vec radice.
Jinak prece radic nevi, co muze a co nemuze smazat.
-
Neni to nahodou tak, ze operacni system musi umet trim a pak pomoci ata prikazu (nebo necim podobnym) rekne disku: adresa 123 az 456 na oddilu sda1 uz neobsahuje data, muzes si ji vymazat. A adresovani uz je vec radice.
Jinak prece radic nevi, co muze a co nemuze smazat.
K tomu, aby tohle OS mohl říct, ale musí rozumět souborovému systému – aby věděl, které bloky jsou prázdné.
To, co dělá řadič, nijak nesouvisí s trimem. Řadič prostě jen přemapuje logické bloky na jiné fyzické. A pokud o nějakém logickém bloku má informaci, že je prázdný, při přemapování ho neřeší. To, že je prázdný, má o každém bloku poznamenané na začátku, pak při zápisu ten příznak shodí, a při trimu jej zase nahodí. Rozdíl je tedy v tom, že s trimem máte 20 % volného místa různě rozházené po logických blocích, někde z volného místa ukousnete a pak zase jiný blok pomocí trimu do volného místa vrátíte. Bez trimu a s ponecháním 20 % disku mimo jakýkoliv oddíl těch 20 % prázdných bloků udržujete pořád na stejných logických adresách.
-
nabootuju live W7 z Flashky a trimnu to.
Takže to jde trimnout z winpe? Že by se mohla udělat image s winpe, která by se dala vybrat ručně ve winbootloaderu a udělala by trim+následný reset a mašina by nabootovala do windows xp...
-
A teď ještě jednou i pro ty pomalejší prosím ;D
Jednotlivým částem tvého tvrzení rozumím, ale nevím, jestli opravdu má smysl udělat diskový oddílel menší, než je skutečná kapacita SSD. Mě se zdá, že to je dobé, jen když je disk ohrožený přeplněním.
Ale můžu potvrdit, že u sandforce říkali, že trim není potřeba, protože to má nějaké chytré vnitřní mechanismy.
http://forums.macrumors.com/showthread.php?t=1048536 (http://forums.macrumors.com/showthread.php?t=1048536)
-
Jednotlivým částem tvého tvrzení rozumím, ale nevím, jestli opravdu má smysl udělat diskový oddílel menší, než je skutečná kapacita SSD. Mě se zdá, že to je dobé, jen když je disk ohrožený přeplněním.
Aby bylo možné optimalizovat využití jednotlivých bloků, potřebuje nějaké volné místo. Např. když zjistí, že se do bloku A pořád zapisuje, po nějakém počtu zápisů se blok A přemapuje na jiný fyzický blok, který byl do té doby prázdný. A blok A se použije pro ten prázdný logický blok. Tohle přemapování dělá chytřejší řadič na pozadí, neví o něm ani OS. Je jasné, že aby tohle fungovalo, potřebuje disk vědět, které blogy jsou prázdné. (Šlo by to udělat i bez toho, ale to by byla potřeba složitější logika a nějaká paměť.)
Při použití příkazu trim se ten určitý počet prázdných bloků udržuje tak, že když operační systém přestane nějaký blok používat, trimem řekne řadiči disku, ať si daný blok označí jako volný. Řadič ho pak může využít pro výše uvedenou optimalizaci. Bez trimu budou postupně volné bloky řadiči mizet – operační systém do bloku zapíše, řadič si poznamená, že blok volný není. Operační systém pak blok uvolní, ale nedá o tom řadiči vědět, a pro řadič ten blok bude navždy obsazený. I když byste ten souborový systém nikdy nezaplnil celý, operační systém bude data zapisovat „náhodně“ v celém přiděleném oddílu, tedy i na konec, a postupně „umaže“ všechny bloky. Řadič pak nemůže provádět výše uvedenou optimalizaci, do některých bloků se zapisuje pořád a do jiných vůbec, a ty často zapisované pak odejdou dřív.
To „náhodné“ rozhazování po celém disku je samozřejmě optimalizace pro rotační disky. Souborový systém, který by při potřebě zapsat data do nového bloku použil první (od začátku disku) volný blok by trim při běžném provozu nepotřeboval, dělal by jej jen po defragmentaci, kdy by zapsané bloky z konce zapsané oblasti setřásl do volných bloků na začátku disku.
Pokud ponecháte na disku volnou část (nebude tam žádný oddíl), příslušné bloky se nikdy neoznačí jako zaplněné a není tedy potřeba volat trim, který by je zase označil jako čisté. Řadič tyhle bloky může používat pro výše uvedenou optimalizaci.
Chytřejší řadič by si mohl počítat počet zápisů do jednotlivých bloků, a kdyby zjistil, že se do A pořád zapisuje a z B jenom čte, mohl by je mezi sebou prohodit. Pak by trim také nepotřeboval.
-
Ehm, takže to funguje? Jinými slovy, je to tedy dobrý nápad to tak udělat?
-
Ehm, takže to funguje? Jinými slovy, je to tedy dobrý nápad to tak udělat?
Aha, jsem v zápalu boje zapomněl, na co odpovídám :-) Ano, mělo by to fungovat. Pokud nemůžete používat trim (ale řadič by ho uměl, takže dělá tento typ optimalizace) a nechcete, aby některé bloky odešly výrazně dřív, než jiné, je to podle mne dobrý nápad.
-
Finta s ponecháním části disku nealokované fungovat bude, svým způsobem. Lepší, než drátem do oka. Nicméně efektivitě řádného trimu se to rovnat nikdy nebude. Bez trimu řadič z principu nedokáže určit, zda data v jednou zapsané buňce jsou hodnotná-platná, nebo nikoli. Tudíž se k nim chová jako k hodnotným a v rámci wear levelingu bude jejich obsah stěhovat do jiné buňky i v případě, kdy je to nepotřebné, resp. zcela zbytečné. V důsledku toho klesá výkon (řadič i NAND má více zbytečné práce) a stoupá opotřebení (větší write-amplification), zároveň má řadič problém si udržovat souvislou oblast prázdných bloků, kterou za normálních okolností udržuje a je díky ní schopen poskytnout vyšší výkon při nárazovém zápisu středně velkého množství dat.
Obecně u moderních, korektně fungujících řadičů za normálních okolností nehrozí, že by buňky byly v dlouhodobém horizontu namáhány/opotřebovávány nerovnoměrně. Už SandForce-1200 v mém starém Vertexu2 měl mít ve specifikacích uvedeno, že zaručuje rozdíl v opotřebení nejméně a nejvíce používané buňky v řádu promile. Někde jsem to četl, neprověřoval, takže bez záruky.
Před operací rozdělení disku je doporučované, ba přímo nutné provést Secure Erase SSD. Tím se řadiči dá příkaz ke smazání všech buněk a zároveň je to pro něj informace, aby se všemi buňkami zacházel jako s prázdnými a rovnocenými (co se opotřebení týká).
Nevím jestli WinPE z Win8 dokáže provést trim. Pokud nemá integrován nástroj pro defrag/optimalizaci (alespoň CLI), tak spíše ne. S Windows 8 To Go toto nepředstavuje problém. Ovšem jsi-li zaseklý na XP, pak Windows 8 asi k dispozici nemáš, natož edici Enterprise s To Go funkcí...
Ve stručnosti: zahoď ty XPčka...
-
Tudíž se k nim chová jako k hodnotným a v rámci wear levelingu bude jejich obsah stěhovat do jiné buňky i v případě, kdy je to nepotřebné, resp. zcela zbytečné.
To ten řadič fakt stěhuje všechny bloky náhodně po disku, aby každý blok pobyl chvilku v každé buňce, nebo stěhuje jenom ty, do kterých se víc zapisovalo? V prvním případě by ten disk po nějaké době odešel, i kdyby se na něj vůbec nezapisovalo…
Jinak podle mne je ponechat 20 % místa bez oddílu, zbytek úplně zaplněný a nepoužívání trimu ekvivalentní oddílu přes celý disk zaplněnému z 80 % a s trimem. V obou případech bude mít řadič 20 % bloků, o kterých bude vědět, že jsou prázdné. Pokud by ten 80% oddíl nebyl zcela zaplněn, je samozřejmě toho volného místa „škoda“, protože bez trimu o něm řadič nebude vědět.
-
Jednoduchy priklad - vezmete kartu z fotaku, na ktere je FAT32 plnou fotek a vsechny ja smazte. Spravce souboru ukaze +-100% volneho mista. Staci ale pouzit nastroj typu undelete (jako mel MS-DOS) a s velikou pravdepodobnosti vsechny fotky obnovite.
Operacni system si pouze ve FAT tabulce (u jinych souborovych systemu se to jmenuje jinak) oznaci, ze na adrese x az y, kde lezel puvodni soubor nic neni. Ale data fyzicky z disku nesmaze. Je to logicke, plotnove disky byly pomale a pokud by operacni system vzdy poctive data smazal, vykon by klesl o desitky procent. Navic plotnovemu disku bylo jedno, jestli pri zapisu zapisuje na "cisty" sektor, nebo prepisuje nejaka data.
SSD pracuje uplne jinak: pokud je blok (asi vzdy 512kB) prazdny, normalne se bit zapise. Pokud prazdny neni, musi se pul megovy blok nacist do diskove cache, zmenit jeden bit a cely pul megovy blok zapsat zpet na disk (pak jeste pozor na zarovnani diskoveho oddilu). Ohromne zpomaleni.
Proto existuje prikaz TRIM (soucast standardu ATA - ATA8-ACS2). Operacni system si ve FAT tabulce smaze odkazy na data v danych adresach a zavola TRIM. Tim rekne disku: ja (OS) jsem si smazal soubor lezici na adrese x az y, data co tam zbyly uz tedy nejsou potreba. SSD disk si takto oznacene misto muze smazat (nebo interne oznacit jako prazdne, to nevim) a priste se k nemu chovat jako k volnemu.
Vzdyt je to tak jednoduche...
Pravidlo volnych 20% samozrejme plati, ale s TRIM uplne nesouvisi. Pokud disk zpanite z 99,9%, nemuze radic pouzivat svou "logiku" pri zapisu a prepisu. Pokud je dost volneho mista, nove zapisovana data muze radic okamzite zapisovat do volnych pul megovych sektoru. Pokud ma ale hodne malo mista, bude muset (asi) dopisovat do ne uplne plnych pul megovych sektoru.
Je to jako u modernich FS (NTFS, ext3), ty take mezi daty pri zapisu narozdil od FAT delaji mezery pro pozdejsi zvetseni souboru bez nutnosti prerovnani.
Takze 20% urcite volnych nechte a take pouzijte TRIM. Pro pohodli at nemusite nic hlidat je vyhodne nechat cca 20% kapacity disku bez oddilu, narozdil od plotnoveho disku uz si SSD nehraje na fyzicke umisteni oddilu po sobe.
Mozne reseni co me napada:
Podle wikipedia ma Linux podporu TRIMu na FAT (http://en.wikipedia.org/wiki/Trim_%28computing%29#Operating_system_support). Takze by mozna slo udelat na disku dva oddily, jeden maly ext4 (asi do 1GB na Linux) a zbytek disku (bez 20%) FAT32 a na ten dat Windows XP.
Pri bootovani by se nejdriv spustil Linux a pomoci prikazu "fstrim /oddil/fat32/s/windlema" by spustil TRIM, hned pote by nejak nebootoval Windows XP.
Fragmentace na FAT32 by pak vlastne nemusela vadit. Pokud by nebyl uptime Widli v radech tydnu a neprovadeli se velke zapisy/prepisy dat mezi restarty PC, myslim, ze vykon by nemusel byt spatny...
-
Trim neříká řadiči, že smazal data od pozice x do pozice y. Trim označuje za prázdné jednotlivé bloky. Takže když chcete mít na disku 20 % volných bloků, máte dvě možnosti:
- Udělat oddíl přes celý disk, udržovat jej naplněný jen na 80 % a používat trim. Bude se zapisovat do všech logických bloků, ale budou se také mazat a díky trimu označovat za volné, takže průběžně budete mít zhruba 20 % bloků volných – přičemž z pohledu OS budou náhodně rozházené po disku.
- Udělat oddíl přes 80 % kapacity disku, zbytek nechat bez oddílů a nic do toho místa nezapisovat. Zapisovat se bude do 80 % logických bloků, zbytek logických bloků bude trvale prázdný. Z pohledu OS budou ty volné bloky pořád na stejném místě. Proto není potřeba na ně volat trim, protože ty bloky stále zůstávají označené jako prázdné.
Výhoda prvního řešení je samozřejmě v tom, že počet volných bloků závisí na volné kapacitě disku. Když disk zaplníte jen z 50 %, bude zbylých 50 % volných a řadič se při rozvažování může víc odvázat. Řešení s ponecháním prázdného místa mimo oddíly tohle neumí, tam to rozdělení je pevně dané. Ale pokud nemůžete použít trim, je to použitelné řešení. Když bez trimu uděláte oddíl přes celý disk, budou za chvíli všechny bloky označené jako zaplněné a zablokujete tím funkci rozvažování řadiče.
-
Pánové, nejblíže je tu asi pan Jirsák, možná si to cucá odněkud z prstu, ale má přibližně pravdu.
Ostatní tu předvádí jen bezduché a přesto namyšlené žvanění, že se v nějakém případě pletu nevylučuji, ty žvásty mě totiž nebaví číst.
Já na rozdíl od Vás nežvaním, nekecám, necucám si z prstu a především nejsem líný si přečíst, jak je to ve skutečnosti:
http://www.thessdreview.com/daily-news/latest-buzz/garbage-collection-and-trim-in-ssds-explained-an-ssd-primer/
Až si to přečtete, pochopíte, proč právě SandForce (Agility 3/Vertex 3) a 20% vyhrazeného místa vyřeší absenci TRIMu.
Přestaňte žvanit a začněte číst.
Nejsem namyšlený, jen mě obtěžuje, když někdo raději otravuje ostatní vymýšlením dlouhých pohádek o tom, jak by to mohlo být, než aby si přečetl, tak to ve skutečnosti je.
Jestliže je tráva zelená, protože obsahuje chlorofil nebo co, proč si to nepřečíst? Proč raději místo sbírání relevantních informací a odkazováním se na reálné zdroje si cucáte z prstu?
Aha, protože Trollování je evidentně větší zábava.
Jasně, seru na chlorofil, můžou za to žáby, které po té trávě lezou a obarvují jí!
Atd...
Kultovní hláška praví: RTFM YOU RETARD!