ArsLudica.org Forum

Effettua l'accesso o una nuova registrazione.

Inserisci il nome utente, la password e la durata della sessione.
Ricerca avanzata  

News:

Autore Topic: Memoria virtuale su Vista  (Letto 1553 volte)

lamb-O

  • Senior Staff
  • Hero Member
  • *****
  • Offline Offline
  • Post: 4.329
    • Mostra profilo
Memoria virtuale su Vista
« il: Settembre 21, 2008, 18:52:58 »

Non ho mai capito una stramazza impestata di come gestire la memoria virtuale e la memoria condivisa con la scheda video?

Più ce n'è meglio è? Va tolta? Ne va tanta? E ne va quanta?
Connesso

Id

  • Hero Member
  • *****
  • Offline Offline
  • Post: 929
  • [rend, slaughter, devour]
    • Mostra profilo
Re: Memoria virtuale su Vista
« Risposta #1 il: Settembre 22, 2008, 11:50:54 »

Non ho mai capito una stramazza impestata di come gestire la memoria virtuale e la memoria condivisa con la scheda video?

Più ce n'è meglio è? Va tolta? Ne va tanta? E ne va quanta?

Allora, facciamo ordine. Partiamo dai termini:
- memoria fisica (RAM): viene usata dai programmi per mantenere i dati temporanei. 
- memoria virtuale (parte RAM e parte HD): viene usata dai programmi per mantenere i dati temporanei.
- memoria video (scheda video): memoria presente sulla scheda video. La scheda video lavora meglio con la memoria video che con la RAM.
- memoria video condivisa: parte della RAM che viene usata come memoria video.

La premessa e': non so come funzioni in Vista.
Ma quella roba e' la stessa dalle prime schede video con memoria condivisa, che vuol dire su per giu' dieci anni fa, per cui non fa differenza.

Fondamentalmente, funziona cosi': tu vuoi avviare un gioco. Questo gioco richiede, diciamo "256 MB di RAM, e 64 MB di memoria video".
Hai altri programmi aperti, che consumano, per cosi' dire, un totale di 400 MB di RAM.
Infine, sulla macchina, come hardware, hai 512 MB di RAM e 32 MB di memoria video, ma ne hai altri 64 di memoria condivisa (non capita in realta' mai che una scheda video usi sia memoria propria che memoria condivisa, che sappia io, ma facciamo finta). Dell'HD non ci importa nulla - facciamo conto che c'e' spazio "quanto ce ne serve". 

Dicevamo: avvii questo gioco.
Hai 512 MB di memoria fisica, di cui 400 MB gia' occupati. Quindi ne hai liberi 112, ma te ne servono 256 per questo gioco.
Su una console non partirebbe, ma il PC usa il trucco della memoria virtuale: prende un po' di memoria (RAM) usata dagli altri programmi, e ne fa una "copia" sull'HD. Questo meccanismo (usare l'HD, molto piu' lento ma molto piu' capiente della RAM, come RAM di riserva, e' noto come "memoria virtuale". Piu' o meno).
In particolare, 112 MB di RAM sono liberi, te ne servono 256, quindi ne copia sull'HD circa 144 (e via di disco che frulla tre ore prima che partono le cose).
A questo punto, hai liberi 256 MB di RAM, e con questo requisito siamo a posto. Poi il gioco avra' bisogno anche di memoria video.
Comincia dai 32 MB della memoria video "sulla scheda video", perche' e' la piu' "rapida" da utilizzare, ma non gli bastano (ne vuole 64).
Gli altri 32 che mancano, li prende nuovamente in prestito dalla RAM, con il meccanismo della "memoria condivisa".
E' un po' piu' lenta da utilizzare della memoria video "propria", ma non c'e' alternativa.
Vengono nuovamente spostati 32 MB di RAM da "memoria fisica" ad HD, visto che e' piena; e poi questi 32 MB di RAM vengono utilizzati come memoria video "aggiuntiva". Vale la pena notare che certi giochi esigono un tot di memoria video "vera", non di memoria video condivisa.
A questo punto, i 64 MB di ram video e i 256 MB di RAM fisica sono stati trovati, per cui il gioco parte.

Cosi' abbiamo una struttura della memoria che ha la forma:
* HD:
  • 176 MB usati come sostituzione della RAM (estremamente lenta)
* RAM:
  • 224 MB usati per altri programmi
  • 256 MB usati come RAM per il gioco
  • 32 MB usati come "memoria video condivisa" (piu' lenta della memoria video)
* Video:
  • 32 MB usati, per il gioco (veloce)
Ricapitolando:
- Hard disk: e' lento, usato come "RAM aggiuntiva" dalla CPU tramite il meccanismo della memoria virtuale, ma molto meno costoso della RAM, e disponibile in quantita' molto piu' ampie.
- RAM: e' usata principalmente dalla CPU, ma puo' essere utilizzata anche dalla GPU come memoria condivisa, su alcune schede; e' veloce e bella, ma piu' costosa (al MB) rispetto al disco. Quando e' usata dalla CPU e' estremamente efficiente; quando e' usata dalla GPU e' meno efficiente della memoria video.
- memoria video: e' usata solo dalla GPU, ma per la grafica e' il tipo di memoria piu' performante.

La morale e': quando qcosa e' usato al posto di qualcos altro (HD al posto della RAM, RAM al posto di memoria video), di solito performa da cani.
E' vero anche che e' meglio avere RAM o memoria video che performa da cani, che non averne abbastanza e basta.
Tieni presente anche che PC gestira' automaticamente l'uso concreto della memoria video condivisa e della memoria virtuale; quello che puoi fare al limite e' dirgli *quanta* parte di HD e *quanta* parte di RAM usare al massimo come memoria virtuale e memoria video condivisa.
In generale, piu' ce n'e' e meglio e', con il solo limite del buonsenso (256 MB di "memoria video condivisa massima" su una macchina con 512 MB di RAM non e' una buona idea, per dire). Personalmente, non destinerei piu' di 1/4 della RAM come memoria video condivisa massima.

Se hai altri dubbi, chiedi pure
Connesso
Stand or fall, no middle ground at all - Faedalien (Unlimited SaGa)
 

Pagina creata in 0.019 secondi con 20 interrogazioni al database.