|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Acme Store
Messaggi: 702
|
Ram e applicazioni
ho installati 3gb di ram, se vado su "proprietà di sistema" sono correttamente viste da xp, ed anche da cpu-z, mentre corel draw12 e photoshop cs me ne danno come disponibili solo 2gb. Qualcuno saprebbe dirmi come mai?
asus p5ld2 - p4 4ghz - xp pro sp2 build 2600 ciao e grazie
__________________
The "infrasciamato" experience |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
Ogni processo e' limitato su windows ad avere solo 2GB di memoria virtuale disponibile per l'utente, e 2GB di memoria virtuale per il kernel. Per alzare questo quantitativo occorre settare il parametro /3G nel file option.ini Si parla comunque di memoria virtuale, non di memoria fisica, indipendentemente dalla memoria fisica che hai installato sulla macchina.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Acme Store
Messaggi: 702
|
qualcosa nn mi è chiaro...
la ram è o no memoria fisica? Ne ho installato 1gb in più così da poterne assegnare di più a photoshop e corel, che normalmente sono aperti contemporaneamente. Ma allora la dicitura "ram disponibile" nelle impostazioni dei suddetti sw a quale ram si riferisce?
__________________
The "infrasciamato" experience |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
La mia percezione del problema e' che loro si riferiscano alla memoria virtuale. Se cosi' non fosse (e non posso saperlo, non avendoli) cancella tutto e scusa. Ma se cosi e', se metti il parametro /3G di cui sopra, quei 2 programmi (processi?) potranno instanziare fino a 3GB di memoria virtuale a testa. Il che sollecitera' il sistema operativo a mantenerne quanta piu' possibile in memoria fisica, al limite tenerci solo quello dei due programmi che stai usando in quel momento (Es: Corel) Quindi non e' che non stai usando il 3GB che hai messo, lo stai gia' usando comunque, ma non tutti e 3 i GB sono in questo momento per Corel. Se vuoi aiutare Corel "secondo me" (ovvero se e' vero che il parametro di cui sopra e' la memoria virtuale allocabile dal programma in questione) devi abilitare il /3G Poi resta che non potra' restarci solo Corel in memoria fisica ovviamente, perche' parte deve essere lasciata al sistema operativo (kernel), parte alla cache e parte ad altri programmi, come i servizi piu' usati, che sono sempre attivi e quindi molto probabilmente sempre in memoria.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. Ultima modifica di gugoXX : 29-02-2008 alle 17:34. |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Acme Store
Messaggi: 702
|
grazie intanto per la pazienza.
Chiaro che il kernel si tiene parte della ram, ma già al momento dell'avvio, visto che, quando avevo 2gb, le apps na avevano disponibili qualcosa in meno, corrispondente a quella che usa xp (credo). Ho sempre assegnato circa il 60% a photoshop e il 30 a corel, sono le uniche 2 app "grosse" attive in contemporanea, e nn ho mai avuto problemi. Quando corel ha cominciato a dare segni di "directory temp piena" o "impossibie salvare, memoria insufficiente" ho aggiunto 1gb, pensando che se lo spartissero in percentuale le 2 app, invece continuano ad averne disponibili solo 2gb e nn ho risolto il problema... I dischi di swap per le 2 app e sono chiaramente diversi. eventualmente com'è il discorso del \3g in option.ini? ciao
__________________
The "infrasciamato" experience |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Figurati. siamo qui per diletto e non per lavoro. se rispondo e' perche' mi va. e ora guardacaso mi va
I programmi/processi richiedono a Windows un quantitativo di memoria. Ma richiedono sempre memoria virtuale, non richiedono memoria fisica. La gestione della memoria fisica e' demandata al sistema operativo. E' lui che decide quali sono le pagine virtuali che devono risiedere di volta in volta nella memoria fisica. Come dicevo, ciascun processo sotto Win32 non puo' nativamente vedersi allocato piu' di 2GB di memoria virtuale. Ne consegue che non andra' mai a beneficiare di qualunque quantitativo di memoria tu metti sulla macchina. Sotto Win32bit Server p.es. potresti avere per alcune versioni anche fino a 64GB di RAM, ma un singolo processo, potendo vedersi allocata al massimo 2GB di RAM virtuale, potra' alla meglio occupare 2GB di memoria fisica, qualora tutte le sue pagine venissero caricate in RAM. Se photoshop e Corel sono due applicazioni classiche, monoprocesso, sottostanno alla stessa regola. Non potranno chiedere mai piu' di 2GB di memoria virtuale a windows, e quindi mai piu' di 2GB della loro memoria risiedera' sulla memoria fisica. tutto cio' a meno che tu non abiliti il parametro /3G, che serve appunto per indicare a Windows che abbiamo qualche processo ciccione (es Corel) che puo' chiedere fino a 3GB, e che quindi sara' autorizzato a darglielo. In quel caso quindi potrebbe capitare che tutta la memoria da 3GB allocata per Corel vada a finire in memoria fisica, sempre che tu abbia almeno 3GB di memoria fisica (qualcosa in piu' per Kernel e SystemCache e altri programmi, come dicevamo prima) Abilitare /3G significa che Corel puo' chiedere fino a 3GB di memoria virtuale. Cio' significa che Corel con questo parametro dovrebbe poter chiedere 3GB anche se tu avessi 1 solo GB di memoria fisica, ma magari 4GB di swap file. La memoria virtuale serve appunto a questo, ovvero a poter allocare e utilizzare in maniera trasparente (o quasi, a parte la lentezza) quantitativi di memoria che non si hanno a disposizione fisicamente sulla macchina, chiedendo temporaneamente aiuto ai dischi. Prova a metterlo, guarda se cambia quel numero e tireremo le conclusioni. Sicuramente male non fa. apri il file boot.ini (non option.ini, scusa la confusione) sito sulla root dell'hard disk, e sulla riga dell'installazione corrente (una sola se hai un solo windows) edita e aggiungi semplicemente /3G Qualcosa tipo questo: Codice:
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP full 3GB setting" /3GB /fastdetect /NoExecute=OptIn
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. Ultima modifica di gugoXX : 29-02-2008 alle 18:04. |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Acme Store
Messaggi: 702
|
mmm allora, se ho capito bene, se io avessi 4gb di ram, e corel e photoshop ne avessero assegnate il 100% (in quanto ne vedono sempre 2gb) questo significa che i 4gb verrebbero ripartiti ed utilizzati tutti e 4 dalle 2 apps?
__________________
The "infrasciamato" experience |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
Ricorda nei calcoli che c'e' sempre una base di memoria fisica dedicata al Kernel, una parte alla system cache e una parte alle altre applicazioni di sistema sempre presenti come i servizi fondamentali, che per il fatto di essere usati sempre molto improbabilmente usciranno dalla memoria fisica per andare sul file di scambio (alcuni proprio non escono mai) E sempre fatto salvo il fatto che i (es) 3.1GB fisici allocabili dal tuo sistema siano utilizzati in quel momento da Windows al 100%, senza che lui stia tenendo un po' di RAM libera per future possibili esigenze. Insomma, non sarai mai sicuro che un'applicazione sia completamente in memoria fisica. Dipende da molti fattori, principalmente l'uso che viene fatta di ciascuna pagina di memoria virtuale (da 4KB, 2MB o 4MB, a seconda dell'installazione). Le pagine che non vengono usate per troppo tempo vengono scaricate su disco.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Acme Store
Messaggi: 702
|
in definitiva nn è in pratica molto producente avere più di 2 gb di ram allora... parlando di xp pro. A meno che di nn variare questo max con l'aggiunta di 3g?
A proposito, in pratica mi basta aggiungere 3G/ prima di fasdetect? Non c'è pericolo che dopo nn si riavvia più win? Mettendo 4G funziona lo stesso? Nel senso che abilita 4 gb? ciao e grazie
__________________
The "infrasciamato" experience |
|
|
|
|
|
#10 | ||
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
3G e' il limite di memoria per processo, ma niente limita Windows ad avere piu' processi contemporaneamente. Se apri il task manager vedrai quanti processi hai ora sulla macchina. Io ne avro' una trentina. Ciascuno di questi e' limitato a 2GB. Ne basterebbero 2 ciccioni da 2GB neppure completamente caricati in RAM per usare tutta la memoria fisica montata. Quote:
Si' devi metterlo sulla linea, va bene prima di /FASTDETECT 4G non esiste. Se stai progettando un software che prevede di dover usare piu' di 3GB di memoria, considera l'opportunita' di fare un software multiprocesso (Es: SqlServer), dove ciascuno dei tuoi processi saranno limitati a 2GB (o 3GB se l'utente ha messo sto parametro), e ne potrai avere quanti ne vuoi. Quello che intendo dire e' che "forse" Corel non l'abbia fatto, e che quindi questo parametro puo' aiutarlo.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:26.




















