A vue de nez, ça monte le fichier sous forme d’arbre en mémoire. Donc ça peut 
prendre beaucoup de mémoire si le fichier est gros (le stockage ne doit pas en 
plus être optimisé pour être compact). Tout ça pour dire qu’à part recoder 
pyosm pour utiliser un cache disque (pas regardé le code pour savoir la 
meilleure façon de faire) ou ajouter de la RAM dans ta machine (je pense en 
même temps que 3Go c’est déjà bien), il n’y a pas vraiment d’autres solution.
Il est peut-être temps de te monter un postgresql et d’utiliser osm2pgsql en 
premier ?

Yann

Le 28 avr. 2010 à 22:04, Rodolphe Quiedeville a écrit :

> Salut,
> 
> Sur mon laptop tout de même équipé de 3G de RAM et un peu de swap je
> n'arrive plus à parser des les fichiers genre bretagne.osm, j'ai
> systématiquement un MemoryError
> 
> Traceback (most recent call last):
>  File "/usr/lib/python2.5/xml/sax/expatreader.py", line 301, in
> start_element
>    self._cont_handler.startElement(name, AttributesImpl(attrs))
>  File "/home/rodo/doc/osm/olap/pyosm.py", line 85, in startElement
>    self.curr_way.nodes.append(NodePlaceHolder(id=attrs['ref']))
>  File "/home/rodo/doc/osm/olap/pyosm.py", line 33, in __init__
>    self.id = id
> MemoryError
> 
> Je suis en Debian/Squeeze et la version de python
> 
> Python 2.5.5 (r255:77872, Apr 21 2010, 08:44:16)
> [GCC 4.4.3] on linux2
> 
> C'est un peu une bouée que je jette à la mer ici, mais si vous aviez des
> idées de pistes ou chercher.
> 
> Merci à tous
> 
> _______________________________________________
> Talk-fr mailing list
> Talk-fr@openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-fr
> 


_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à