4. Come impostare la cache tile

Durante l'elaborazione e la manipolazione delle immagini, GIMP necessita di molta memoria. In generale è risaputo che, di memoria RAM, più ce n'è e meglio è, perciò GIMP cerca di ottimizzare il consumo di memoria, cercando nel contempo di mantenere il lavoro sulle immagini il più veloce e confortevole possibile per l'utente. Questa memoria dati, durante l'elaborazione, viene organizzata in blocchi bufferizzati di dati grafici, che possono risiedere nei due tipi principali di memoria: sul lento disco non rimuovibile o sulla veloce memoria RAM. GIMP usa preferibilmente la seconda ma, quando questa scarseggia, accede alla prima per i dati che non stanno in RAM. Questi blocchi di dati grafici sono comunemente chiamati "tile" e il sistema globalmente viene chiamato "cache tile".

Un valore basso per la cache tile significa che GIMP spedisce i dati su disco molto velocemente, non facendo praticamente uso della RAM disponibile e facendo lavorare il disco inutilmente. Un valore troppo alto per la cache tile, avrà come conseguenza che le altre applicazioni avranno meno risorse di sistema forzandole a fare un uso importante dell'area di scambio, che a sua volta aumenterà anche in questo caso molto l'uso del disco; alcune applicazioni potrebbero bloccarsi o funzionare male a causa della poca RAM disponibile.

Come fare per impostare la dimensione della cache tile in maniera appropriata? Ecco qualche trucco e alcuni suggerimenti che possono aiutare a decidere il valore numerico da assegnare:

Supponiamo di preferire l'ultima opzione e che si voglia ottenere un buon valore di partenza. Prima di tutto è necessario raccogliere qualche dato sul proprio computer. Questi riguardano principalmente la quantità di memoria RAM installata, la disponibilità di memoria di paginazione di sistema e il percorso usato per la paginazione di GIMP. Non è necessario fare dei test sui dischi, né controllarne la velocità di rotazione; basta capire quale disco (ndt: naturalmente se ce n'è più d'uno...) appare chiaramente più veloce o se sembrano tutti uguali. Nel caso è possibile agire sul percorso della cartella di scambio di gimp impostandola sul disco più veloce nella finestra delle preferenze di GIMP.

Il passo successivo da effettuare è vedere quante risorse si rendono necessarie per le altre applicazioni che si vogliono eseguire contemporaneamente a GIMP. È necessario avviare tutti insieme i propri strumenti e provare a lavorare con essi per un po', eccetto GIMP naturalmente, controllandone l'usabilità. È possibile usare applicazioni specifiche come free o top, a seconda del tipo di sistema operativo in uso e dell'ambiente di lavoro. I numeri che servono riguardano la memoria disponibile, inclusa la cache dei file. Gli Unix moderni mantengono libera solo una piccola area di memoria, in maniera da usare la memoria libera per grandi cache di file e di buffer. Il comando Linux free esegue il calcolo per voi: controllare la colonna con la dicitura «free», e la riga «-/+ buffers/cache». Tenere conto anche dello spazio libero nella memoria di paginazione (swap).

Ora è tempo di decisioni e di poca e semplice matematica. Il concetto di base è decidere se si vuole allocare tutta la cache tile in RAM o in RAM più lo spazio di paginazione del sistema operativo:

  1. Si cambia spesso applicazione? O piuttosto si lavora abitualmente per lunghi periodi solo con GIMP? Se ci si accorge di passare gran parte del tempo con GIMP, si può considerare come disponibile la quantità di memoria della RAM più quella della di paginazione; altrimenti è necessario compiere i passi seguenti (se non ci si sente sicuri, controllare i passi successivi). Se si è sicuri di passare spesso da un'applicazione all'altra, conteggiare solo la dimensione della memoria RAM libera e basta; nient'altro da controllare.

  2. Lo spazio di paginazione del sistema operativo risiede fisicamente sullo stesso disco dei file di scambio di GIMP? Se si, aggiungere RAM e swap, altrimenti andare al prossimo passo.

  3. Il disco su cui risiede il file di paginazione del sistema operativo è più veloce o della stessa velocità del disco che contiene i file di scambio di GIMP? Se è più lento, prendere solo la dimensione della memoria RAM libera; se è circa uguale o più veloce, aggiungere la RAM e lo spazio di scambio liberi.

  4. Ora abbiamo un numero, sia che sia solo della RAM libera o della RAM più lo spazio di scambio libero. Ridurlo un po' come misura cautelativa ed ecco la dimensione della cache tile, almeno per iniziare a lavorare.

Come si può vedere, l'operazione consiste solamente in un controllo delle risorse libere disponibili e nel valutare se lo spazio di paginazione del sistema operativo debba essere conteggiato oppure no evitando che tale conteggio comporti più problemi che benefici.

Ci sono alcune ragioni per le quali si può decidere di ritoccare ulteriormente questo valore. La principale potrebbe essere dovuta ad un cambiamento nelle abitudini di utilizzo del sistema o nella composizione hardware. Ciò significa che le assunzioni fatte nell'uso del computer o nelle sue prestazioni, non sono più valide. Questo può richiedere un altro ciclo di valutazione dei passi precedenti, che potrebbe portare alla stima di un valore simile o invece ad un valore completamente differente rispetto a quanto calcolato in precedenza.

Un'altra ragione per il cambiamento di questo valore può essere la valutazione di una performance troppo scarsa di GIMP, mentre passando ad altre applicazioni si nota invece un incremento di velocità: ciò significa che GIMP potrebbe usare più memoria senza rallentare troppo le altre applicazioni. D'altro canto, se si notano problemi con le altre applicazioni che scarseggiano di memoria, può aiutare lasciare che GIMP ne usi un po' di meno.

Se si decide di usare solo la RAM e GIMP dovesse girare lentamente, è possibile provare a incrementare di poco il valore, ma attenzione a non usare tutta la memoria di scambio. Se si esagera utilizzando sia RAM che la memoria di swap e si provocano problemi di mancanza di risorse, è quindi consigliabile diminuire la dimensione della memoria disponibile per GIMP.

Un altro trucco consiste nel mettere la memoria di scambio su un disco molto veloce, o su un disco differente da quello su cui risiede la gran parte dei nostri file. Sparpagliare il file di scambio del sistema operativo su più dischi è, in generale, un altro ottimo metodo per velocizzare le operazioni. E naturalmente si potrebbe anche comperare più RAM o smettere di usare molti programmi contemporaneamente: non pensiate di riuscire a lavorare velocemente sull'immagine di un poster con un computer con 16MB di RAM.

Controllare le richieste di memoria che hanno le proprie immagini. Più grandi sono le immagini e maggiore il numero di annullamenti, e più saranno necessarie risorse. Questo è un altro metodo per ottenere una quantificazione, ma è valido solo se si lavora sempre con immagini dello stesso tipo, per cui la stima non varia apprezzabilmente. È un metodo utile anche per sapere se si necessita di più RAM e/o spazio su disco.