330
Le logiciel R - Maˆ ıtriser le langage
tifier l’origine de probl` emes relatifs ` a la m´ emoire. La lecture des pages qui
pr´ ec` edent constitue donc notre premi` ere recommandation. Nous donnons cidessous quelques conseils suppl´ ementaires.
Vous pourriez par exemple calculer la taille (approximative) d’une matrice
avant sa cr´ eation. Puisqu’un nombre r´ eel occupe 8 octets, alors une matrice de
r´ eels de taille n × p occupera 8 np octets. Si vous devez travailler avec des matrices de tr` es grande taille, l’utilisation d’un processeur 64 bits vous permettra
d’allouer des blocs de m´ emoire de grande taille. Comparativement, un processeur 32 bits ne permettra g´ en´ eralement pas de d´ epasser 2 gigabytes. Si vous
n’ˆ etes pas capable de cr´ eer un objet de grande taille, pensez `
a effacer (au moyen
de la fonction rm()) les autres gros objets inutiles (la fonction object.size()
vous renseignera sur la taille de ces objets) et ` a lib´ erer la m´ emoire en utilisant
la fonction gc(). Vous pouvez ´ egalement envisager de fermer certains logiciels
tournant sur votre ordinateur afin de lib´ erer de la m´ emoire, et en dernier ressort
d’acheter de la m´ emoire physique suppl´ ementaire.
Linux
Le logiciel ksysguard permet de visualiser en temps r´ eel l’utilisation de
la m´ emoire consomm´ ee par R, ainsi que par les autres processus tournant
sur le syst` eme.
Une autre option pourrait consister `
a couper votre matrice en plusieurs sousmatrices et ` a trouver un moyen d’effectuer votre analyse sur celles-ci avant de
combiner les r´ esultats obtenus.
Astuce
Les packages bigmemory, ff et RevoScaleR pourraient vous ˆ etre utiles.
Sous Windows, les fonctions memory.size() et memory.limit() permettent
d’afficher certaines informations sur l’utilisation de la m´ emoire. Il peut aussi
ˆ etre utile de consulter l’aide en ligne : help("Memory-limits").
Remarque
Il est possible, dans le futur, que ces probl` emes trouvant leur origine dans la conception de R soient r´ esolus. Le lecteur int´ eress´ e pourra
par exemple consulter le document http://www.divms.uiowa.edu/~luke/
talks/uiowa11.pdf.
Le logiciel R - Maˆ ıtriser le langage
tifier l’origine de probl` emes relatifs ` a la m´ emoire. La lecture des pages qui
pr´ ec` edent constitue donc notre premi` ere recommandation. Nous donnons cidessous quelques conseils suppl´ ementaires.
Vous pourriez par exemple calculer la taille (approximative) d’une matrice
avant sa cr´ eation. Puisqu’un nombre r´ eel occupe 8 octets, alors une matrice de
r´ eels de taille n × p occupera 8 np octets. Si vous devez travailler avec des matrices de tr` es grande taille, l’utilisation d’un processeur 64 bits vous permettra
d’allouer des blocs de m´ emoire de grande taille. Comparativement, un processeur 32 bits ne permettra g´ en´ eralement pas de d´ epasser 2 gigabytes. Si vous
n’ˆ etes pas capable de cr´ eer un objet de grande taille, pensez `
a effacer (au moyen
de la fonction rm()) les autres gros objets inutiles (la fonction object.size()
vous renseignera sur la taille de ces objets) et ` a lib´ erer la m´ emoire en utilisant
la fonction gc(). Vous pouvez ´ egalement envisager de fermer certains logiciels
tournant sur votre ordinateur afin de lib´ erer de la m´ emoire, et en dernier ressort
d’acheter de la m´ emoire physique suppl´ ementaire.
Linux
Le logiciel ksysguard permet de visualiser en temps r´ eel l’utilisation de
la m´ emoire consomm´ ee par R, ainsi que par les autres processus tournant
sur le syst` eme.
Une autre option pourrait consister `
a couper votre matrice en plusieurs sousmatrices et ` a trouver un moyen d’effectuer votre analyse sur celles-ci avant de
combiner les r´ esultats obtenus.
Astuce
Les packages bigmemory, ff et RevoScaleR pourraient vous ˆ etre utiles.
Sous Windows, les fonctions memory.size() et memory.limit() permettent
d’afficher certaines informations sur l’utilisation de la m´ emoire. Il peut aussi
ˆ etre utile de consulter l’aide en ligne : help("Memory-limits").
Remarque
Il est possible, dans le futur, que ces probl` emes trouvant leur origine dans la conception de R soient r´ esolus. Le lecteur int´ eress´ e pourra
par exemple consulter le document http://www.divms.uiowa.edu/~luke/
talks/uiowa11.pdf.
