#1 Le 16/02/2007, à 15:08
- sensini
[Résolu][caml]augmenter la taille de la pile (stack overflow)
Bonjour tout le monde,
j'ai un petit problème de taille de mémoire en caml... J'aurai aimé augmenter la taille de la pile, mais je n'y arrive pas :
j'ai bien trouvé
$>OCAMLRUNPARAM="l=1G"
Mais ça ne résoud pas mon problème... (un echo $OCAMLRUNPARAM montre que la variable est bien à l=1G). Du coup, je me demande si je ne l'utilise pas mal?
Une fois que j'ai fixé cette variable, est-elle prise en compte uniquement avec ocamlrun ? ou je peux ausi lancer ocaml? ou alors ça change uniquement lors de la compilation avec ocamlc...?
Bref « À l'aide ! ! »
Dernière modification par sensini (Le 16/02/2007, à 16:06)
http://doc.ubuntu-fr.org/aptitude
http://bepo.fr
Pensez à chercher sur un moteur de recherche avant de demander http://google.fr/ ;)
Hors ligne
#2 Le 16/02/2007, à 16:03
- rico69
Re : [Résolu][caml]augmenter la taille de la pile (stack overflow)
Bonjour,
Ma réponse ne sera pas forcément pertinente en ce sens que je ne connais absolument pas le langage CAML ni le pourquoi de ton souhait d'augmenter la taille de la pile...
Cependant, vouloir augmenter la taille de la pile est à mon sens une erreur de conception. Si tu as un "stack overflow", c'est que tu dois avoir un bug du genre appel de procédure récursive en boucle infinie, ou un truc du genre...
Quelques ko doivent suffire pour une pile normalement...
Pentium IV 524 - 1 Go DDR2 - XP & Ubuntu 8.04
Hors ligne
#3 Le 16/02/2007, à 16:06
- sensini
Re : [Résolu][caml]augmenter la taille de la pile (stack overflow)
j'ai résolu mon problème... J'avais pas assez cherché u_u
en utilisant ocamlopt ça marche. Je ne sais pas pourquoi ça ne marche pas ocamlc/ocaml par contre...
Du coup hop, je me marque pour me souvenir :
$>OCAMLRUNPARAM="l=10G"
$>ocamlopt les_fichiers.ml -o mon_executable
et (presque) plus de problèmes
http://doc.ubuntu-fr.org/aptitude
http://bepo.fr
Pensez à chercher sur un moteur de recherche avant de demander http://google.fr/ ;)
Hors ligne
#4 Le 16/02/2007, à 16:12
- sensini
Re : [Résolu][caml]augmenter la taille de la pile (stack overflow)
Si tu as un "stack overflow", c'est que tu dois avoir un bug du genre appel de procédure récursive en boucle infinie, ou un truc du genre...
Malheureusement non...
Par contre j'ai quelque chose de non « tail recursive » , beaucoup de doublons que je ne sais(peux?) pas gérer, ... Je manipule des listes de String qui double de taille par appel récursif... Mes listes atteignent rapidement 10000 mots et je suis bien conscient qu'avec chaque mot je me traîne plein de doublons du coup, mais on fait avec les moyens du bord
http://doc.ubuntu-fr.org/aptitude
http://bepo.fr
Pensez à chercher sur un moteur de recherche avant de demander http://google.fr/ ;)
Hors ligne