@[/url]":2dwnoqye] Piu' che altro e' RAMdisk + Cache ad avere poco senso.
Cache su disco si fa quando si vuole liberare memoria, per qualsiasi altro motivo.
E noi rimettiamo la cache in memoria, cosi' non solo ci sarebbe convenuto dal principio usare la memoria direttamente, ma anzi cosi' trasferiamo la roba che abbiamo in memoria nel ramdisk nella memoria di esecuzione.
Ogni byte che useremo quindi nel RAM disk lo spostiamo, e perdiamo tempo, e poi addirittura ne avremo tripla copia.
Una nel ram disk, una nella system cache (che e' la cache di sistema dove vengono parcheggiate le pagine letta di disco per poterle usare piu' velocemente quando dovessere essere ri-richieste)
e una in memoria per poterla usare.
Amme... me pare...
Piuttosto cerca come fare per ingrandire la system cache, se proprio vuoi andare meno sul disco.
non sposto un cazzo, scive direttamente sulla ram, le cartelle sono spostate lī, compreso quelle per i files temporanei.Tom ci ha fatto dei bench di recente sul ramdisk, cercali.
Ecco, quando non capiscono una ceppa cominciano con le parolaccie per farsi piu' gonfi.
Quando abbiamo un file su hard disk, su una cartella qualsiasi, e lo leggiamo per poterlo usare, trasferiamo il contenuto del file, tutti i file, in memoria. Ma prima che arrivare nella memoria che veramente poi useremo finisce in una zona di memoria chiamata system cache, che abbiamo ancora oggi non perche' la memoria costa cara, ma perche' e' ovviamente piu' veloce di una lettura da disco.
Se la system cache e' piena i file li' parcheggiati che abbiamo usato meno o i piu' vecchi vengono fatti uscire, e il loro spazio viene utilizzato per l'immagine del file che abbiamo appena letto.
Quindi se il file dovesse essere riletto (o anche modificato) a breve, invece che andare a leggere sul disco accederemo sulla immagine nella system cache e andremo piu' veloci.
Dopodiche l'immagine del file viene anche trasferita in memoria, dove verra' veramente usata dal processo che l'ha richiesto.
Quindi, in condizioni normali, per ogni file la cui immagine stiamo usando in memoria, abbiamo TRE copie di questi byte.
Una e' l'originale, sul disco
Una e' la copia sulla system cache per permettere una enorme velocizzazione delle operazioni ripetute
Una e' la copia nella memoria del processo che usera' i dati di questo file.
Mettiamo che il mio programma debba leggere dei file dalla rete, che e' anche piu' lenta del disco, e io abbia scoperto che mediamente leggo ciascun file piu' volte. Come accade tipicamente con i browser, cosa faccio?
Inserisco un nuovo livello di cache dopo la system cache, apro una directory e scrivo i file che mi interessano di piu' li' sopra.
Quando questi file verranno acceduti nuovamente invece che andare a leggerli dalla rete il browser li leggera' direttamente dalla cartella locale, aumentando ovviamente le prestazioni.
Ciascuno di quei file, quando letto, finira' in system cache in memoria, e da li' poi finira' nella memoria user del processo browser che lo usera'.
Ha senso spostare la cache del browser dal disco ad un ramdisk?
No. Abbiamo gia' un system cache che gestisce i file, compresi quelli della cache del browser, in modo da avere li' quelli piu' utilizzati.
Se proprio devo fare una cosa furba posso lasciare la cache disco del browser dove deve stare, sul disco, e chiedere al sistema operativo di allocare piu' memoria per la system cache, tutta quella che avrei allocato per il mio ramdisk.
Con l'effetto che non duplichero' inutilmente in memoria i file che leggo, che avrei altrimenti SIA sulla system cache CHE sul ramdisk, e userei tutta la memoria della system cache per una sola copia per file.
L'unico effetto positivo del comunismo e' quello di far produrre doppio a Civilization
The above post is my PERSONAL OPINION and DOES NOT REPRESENT the official position of any company or entity, and does not derive either from official or internal data of any company I am dealing with.