Ještě jsem si vzpomněl, že jakousi kompresi paměti kdysi dělal i QEMM. To, co se mělo odswapovat, tak se komprimovalo, takže swapování mělo být rychlejší (zapisuje se méně dat). Ale jestli to reálně fungovalo těžko říct, každopádně časem to asi celé nějak zaniklo.https://en.wikipedia.org/wiki/QEMM
Už tady byla kdysi komprese místa na disku. Průběžně utilitou pod OS. Samozřejmě režie zpomalovala. HW de/šifrování bude rychlejší, pořád to bude zpomalení, ne urychlení.Vždy funguje jen skutečná rychlost a skutečný objem.
U disků to používají třeba Sony a Microsoft u svých herních konzolí. Ale tam je místo utility také specializovaný dekompresní blok, který má cca. zdvojnásobit propustnost.Kdyby komprese nefugovala, tak se nepoužívá - třeba nekomprimované video by bylo výzva pro nejednu internetovou přípojku a HDD by byly při vyšším rozlišení prakticky nepoužitelné.
SSD maji dneska tak chytre firmwary, ze kompresi vyuzivaji bezne. Zkuste si zapsat same nuly, i nektere HDD ukaze zazracna cisla 🙂
To mozna resi file system. Existuji i ridke soubory, kde jsou data jenom nekde. Tvari se jako 10GB soubor, ale zabirat muze par MB, protoze se zapsalo jenom neco malo na par mist.
myslis sparse files (fsutil sparse... )? ano, ale jejich pouziti je trosku specificke - prepoklada, ze VIS, ze soubor je aspon zkraje ridky. Pouzivaji je typicky torrent klienti - das stahovat ISO sve oblibene distribuce, coz je par GB, ktere ovsem nema smysl alokovat hned; lepsi je alokace "as you go" pomoci sparse files, i kdyz vysledkem je casto brutalne fragmentovany soubor.MP
jo, to. Je to specifické, hodí se to jenom na něco...
Když nad tím tak přemýšlím tak si říkám jaké následky to bude mít ve stavu "zaplněné" paměti. Myslím si, že reálně zaplněná paměť bude záviset na datech, která budou v paměti. Jenže to je dost nebezpečné. Dejme tomu, že nějaká aplikace bude chtít 4GB paměti. Vzhledem k datům zabere reálně v paměti jen 1GB. Super ušetřili jsme 3GB paměti. Pak ostatní aplikace obsadí taky nějakou paměť, až se dostaneme do stavu, že je třeba volný jen poslední 1GB. Jenže pak se v aplikaci co chtěla 4GB vymění data a už nepůjdou tak dobře zkomprimovat, aby se vešli do 1GB, ale reálně bude potřeba obsadit 3GB, tj 2GB navíc. Ovšem ouha, reálně je volný jen 1GB. Co s tím? OutOfMemory? Když to vezmu do extrému, tak v současném stavu si aplikace obsadí 1 Byte paměti a ví že si tam může uložit hodnoty 0-255. Jenže v novém stavu jí tam půjdou uložit hodnoty 0, 1, 2, 4, ... ale při pokusu o uložení hodnoty 3 dostane chybu OutOfMemory. Tohle je něco na co není připravená žádná současná aplikace a bude to způsobovat zcela nové a značně nepředvídatelné chyby.
Nedostanete žádnou chybu. Prostě není paměť tak to půjde do swapu.
Kdy jste naposledy na PC nebo v mobilu videl out of memory?
S tim se clovek bezne potka malokdy, kdyz driv zasahne OOM killer 🙂 A widle se ve vychozim nastaveni uswapuji k smrti driv, nez pamet dojde. To spis dojde misto na disku, pak ale umrou taky.
Já jsem swapování často vypínal, Windows fungují tak blbě, že swapují pořád, i když je hromada paměti volná. Asi aby byla rezerva, kdyby chtěl někdo náhodou alokovat třeba 8GB paměti najednou...
S tim dnesni operacni systemy jiz bezne pracuji, vizte balooning ve virtualizaci.
Šidit a lakovat. Každá režie i komprese něco stojí. Můžou se snažit jak chtějí, ale kapacitu prostě nenahradí, stejně tak nenahradí 4.2 V8 kozím dechem 1.0 DesetTurbo.
To ne, ale "kozim dechem" 3.0 JednoTurbo ho mohou snadno prekonat. (Az na ten zvuk..)
Stejne tak komprese vyzene propustnost. Ale zvysi latence. A u pameti to bude desne moc znat.
Znat to bude urcite. Jedina otazka je, jak moc. Na to zatim nezname odpoved.Jsem docela zvedavy, s cim prijdou (v praxi, papir snese vsechno).
Názor byl 1× upraven, naposled 14. 9. 2021 22:37
Zaujimalo by ma, ci vysledna kapacita RAM bude variabilna podla toho, ake data tam su (podla rozdielu surovej a skomprimovanej velkosti). Napriklad pri ZIP niektore subory znizia svoju velkost minimalne, zatial co ine brutalne.
Pamatovy modul uz nebude "8GB RAM" ale "up to 8GB RAM" 😀
Dost pravděpodobně ano. Přeci jen jsou data, která jdou zkomprimovat lépe a jiná co jdou hůře až vůbec. Ikdyž jak nad tím tak přemýšlím tak v ramce asi budou většinou data co jdou zkomprimovat dobře. Komprimovaná data jsou na disku, ale když je aplikace načte, tak si je dekomprimuje a do paměti si je uloží v dekomprimované podobě, aby se s nimi dobře manipulovalo.
Jak kdy, databázové bloky jsou v paměti zkomprimované, pak se jich tam vejde víc. dekomprimují se až když jsou potřeba. Ta trocha CPU navíc se vyplatí.
Ale pak je adresace de facto nelinearni. Sekvencni pristup je OK, random acess na tom bude hure. Takze jako vse: je to uzitecna vlastnost (koneckoncu moderni OS pouzivaji kompresi RAM uz davno, je to lepsi, nez swapovani), ale ne vselek. MP
No kdo ví, jak to bude, u komprese je taky problém v tom, že pokud se změní něco uprostřed, tak to může další data posunout. Pokud to není celé nějaká blbost, tak za tím musí být nějaká funkcionalita, co to bude řešit. U souborů se to řeší rozdělením na bloky, které mohou být kdekoliv na disku, ale se stávající pamětí tohle fungovat nebude aniž by se upravilo i to, co ji používá... Pokud tam není rovnou nějaký další řadič a nefunguje to podobně jako třeba SSD, které to taky různě přemapovává.
Vzhledem k tomu, ze v dobe, kdy by to melo realne prijit na trh, bude doufam kazda slusna pamet sifrovana, tak asi nijak.
Potvrďte prosím přezdívku, kterou jsme náhodně vygenerovali, nebo si zvolte jinou. Zajistí, že váš profil bude unikátní.
Tato přezdívka je už obsazená, zvolte prosím jinou.