# Xcode et encombrement de mémoire



## devin plompier (23 Mai 2012)

Bonjour.
Avant tout, je tiens à préciser que je suis un débutant tout neuf en Xcode et en C.
Suite à l'exécution de mon code en C, Xcode est très volumineux en mémoire (je ne lui en veux pas, d'autant plus que ma programmation aboutit souvent à l'allocation de mémoire en boucle...).
Cependant, je ne comprend pas pourquoi après l'interruption de l'exécution du programme, Xcode garde le même volume en mémoire. C'est assez dérangeant, et je suis souvent obligé de quitter des 2 ou 3 malheureuses application tournant en même temps, puis après ça de quitter Xcode lui-même pour le relancer après, et à grand coups de "purge" dans le terminal. J'arrive fréquemment à atteindre la barre des 10 Mo de libre, alors que ma machine compte 4 Go de RAM.

Existe-t-il un moyen de faire libérer cette place à Xcode ?

Merci.


----------



## ntx (23 Mai 2012)

Xcode (mais aussi d'autres IDE modernes comme par exemple Eclipse) sont monstrueusement consommateur en mémoire. Il faut arrêter de croire que seul le montage vidéo nécessite des bêtes de course. 

Pour ma part je suis passé de 2 à 6 Go de mémoire et depuis plus de problème. C'est de nouveau fluide. Toutefois, la majorité de mes ennuis arrivaient quand j'utilisais les instruments d'analyse de la consommation de la mémoire (un comble ).

Est-ce que tu es certain que ton application foireuse est bien tuée quand tu reviens sur Xcode ?


----------



## devin plompier (23 Mai 2012)

Oui, le programme (pour l'instant, je ne code que des commandes Terminal, et donc pas des applications proprement dites) est bien tué. En tout cas, le bouton "Stop" est bien appuyé.
Pour ce qui est de booster ma mémoire, ça va être dur, ma bécane est un MacBook Pro unibody. S'il existe un moyen de bidouiller dedans, je ne sais pas comment faire et cela doit être assez couteux...


----------



## Lio70 (24 Mai 2012)

Tu peux toi-meme remplacer les barrettes de RAM, ce n'est pas difficile. Je l'ai fait avec le mien. Par exemple, un MBP datant de la mi-2009 accepte jusqu'a 8 Gigas de RAM (2 barrettes de 4). Telecharge le manuel de ton MBP a partir du site d'Apple et suis la procedure:
http://support.apple.com/manuals/#portablecomputers


----------



## devin plompier (24 Mai 2012)

D'accord, merci. Mais le problème n'est pas là. 4 Go normalement suffisent à faire tourner Xcode. Mon frère, qui est autrement plus calé que moi en programmation, et qui dispose du même ordinateur que moi, peut l'utiliser sans problème, et sans ajout de mémoire.


----------



## tatouille (25 Mai 2012)

non 4go ne suffise pas a faire tourner xcode4 il n'a certainement pas xcode4


----------



## devin plompier (25 Mai 2012)

Il a bien Xcode 4, j'en suis sûr et certain.


----------



## tatouille (25 Mai 2012)

meilleur disk et proc, xcode4 ssd/8go core i7 et tu n'as pas de probleme, j'ai un vieux mini (2009) coreduo meme boosté en memoire xcode4 est trop lourd


----------



## Larme (25 Mai 2012)

Boarf, sur mon MBA 2011 11" i7 à 4Go de RAM, ça passe....
Mais je fais du dév' iOS et pas très gourmand...


----------



## devin plompier (25 Mai 2012)

Moi non plus c'est pas très gourmand. Comme je l'ai dit, je suis débutant, et je ne fait que des commandes terminal.


----------



## tatouille (25 Mai 2012)

bah utilises automake et passe a textwrangler ou vim et tu compiles depuis le term, 
l'ensemble des mes frameworks non pas de project xcode et compile avec autotools pour different target

ou si c'est une simple commande 

/Developer/usr/bin/gcc -[cflags] -c file1.c -o file1.o 
/Developer/usr/bin/gcc -[cflags] -c file2.c -o file2.o 
/Developer/usr/bin/gcc -[cflags] -c main.c -o main.o 
/Developer/usr/bin/gcc -[cflags] -[ldflags] *.o -o prog


----------



## devin plompier (25 Mai 2012)

Vous avez me trouver têtu, mais je suis décidé à faire fonctionner Xcode. D'autant que maintenant ça a l'air de bien marcher. Je sais qu'il est possible que ça marche bien, même pour des projets plus consistants, sur une bécane comme la mienne.


----------



## Mr.20 (28 Mai 2012)

Vous ne devriez pas avoir de problème avec 4Go de mémoire. Je fais tourner Xcode avec un macbook de 2009, 4Go de RAM. J'ai souvent Xcode, le simulateur iOS, Ecoute, Safari, Sparrow et le terminal qui tournent ensemble sans grand problème.
Dans votre code vous liberez pas la mémoire ? Ca change rien au fait qu'Xcode prend de la mémoire : celle allouée pour Xcode et celle pour votre programme sont différentes donc la fin du programme ne signifie pas la libération de mémoire d'Xcode.


----------



## devin plompier (28 Mai 2012)

Merci de votre réponse.
Je suis bien conscient que la disparition soudaine de mémoire est due à des erreurs de programmation de ma part, qui conduisent bien souvent à un nombre inimaginable d'allocations en mémoire, qui ne sont effectivement pas libérées, puisque mon algorithme collapse avant. Jusque là tout est de ma faute.
Ma question posait sur le fait que cette mémoire allouée n'est pas libérée à nouveau d'office après l'interruption brutale de mon programme.


----------



## Rez2a (30 Mai 2012)

Xcode est assez aléatoire dans ses performances, perso y a des fois où il compile et debug des gros projets sans sourciller, et des fois où lui faire ouvrir l'organizer va lui prendre 10 plombes.
Les plus gros freezes que j'ai apparaissent sur des projets assez lourds (plus qu'une appli terminal pour débutant en tout cas), et généralement je règle ça périodiquement en supprimant les dossiers des projets contenus dans ~/Library/Developer/Xcode/DerivedData (ça a surtout l'avantage de rétablir l'autocompletion qui a tendance à pas mal sauter, serait temps qu'ils règlent ça).


----------



## tatouille (31 Mai 2012)

tu peux le forcer a targeter $project/build comme avant quand il n'y avait pas un abruti en charge de xcode, ce qui est trois cent fois plus efficace que cette merde de derivideddatatamere


----------

