2012-10-16 19 views
6

Ho letto che c'è un limite all'assegnazione di memoria massima a circa il 60% della memoria del dispositivo, e questi possono essere modificati modificando le variabili di ambiente GPU_MAX_HEAP_SIZE e GPU_MAX_ALLOC_SIZE per GPU.Allocazione di memoria massima su CPU openCL

Mi chiedo se l'SDK di AMD abbia qualcosa di simile per la CPU se voglio aumentare il limite di allocazione della memoria?

Per il mio attuale configurazione, si restituisce il seguente:

CL_DEVICE_MAX_MEM_ALLOC_SIZE = 2973.37MB

CL_DEVI_CEGLOBAL_MEM_SIZE = 11893.5MB

Grazie.

+1

Attualmente è il 25% predefinito. Apparentemente, CPU_MAX_HEAP_SIZE è "non supportato affatto", il che è certamente un po 'strano ... se si utilizza una CPU Intel, si potrebbe provare l'SDK Intel OpenCL che ha la capacità di farlo, iirc. – Thomas

risposta

2

Sono stato in grado di modificare questo sul mio sistema. Non so se questo metodo fosse possibile quando inizialmente hai fatto la domanda.

impostare la variabile di ambiente 'CPU_MAX_ALLOC_PERCENT' sulla percentuale di memoria totale che si desidera essere in grado di allocare per un singolo buffer globale. Ho memoria di sistema da 8 GB, e dopo aver impostato CPU_MAX_ALLOC_PERCENT a 80, clinfo segnala i seguenti:

Max memory allocation:       6871207116 

successo! 6.399GB

Puoi anche utilizzare GPU_MAX_ALLOC_PERCENT allo stesso modo per i tuoi dispositivi GPU.