commit:2008:07_04
Table of Contents
Commit 2008-07-04
- google sparsehash
Modifs
- Compilation / installation des google SparsesHash
- Les Sparsehash de google est une lib qui propose deux implémentations efficaces des hash maps & sets : la
dense_hash_map
optimisée pour une vitesse d'accès maxmale & lasparse_hash_map
optimisée pour une utilisation mémoire minimale. - version installée
sparsehash-1.1.zip
- Compilation Linux : ce qui marche pour les hashmaps gcc, c'est “tr1/unordered_map” et pas “ext/has_map”
⇒ une fois fait le ./configure effectué, il faut modifier le fichier “sparsehash-1.1/include/google/sparsehash/sparseconfig.h” comme suit :
/* the location of <hash_fun.h>/<stl_hash_fun.h> */ /* #define HASH_FUN_H <ext/hash_fun.h> */ /* the namespace of hash_map/hash_set */ /* #define HASH_NAMESPACE __gnu_cxx */ #define HASH_NAMESPACE std::tr1 #define HASH_MAP<tr1/unordered_map> #define HASH_SET<tr1/unordered_set> #define HASH_FUN_H <tr1/functional>
- Compilation Windows : Si l'on prend les sources tel quel, les includes sont foireux ⇒ copier “src/windows/google/sparsehash/sparseconfig.h” → “src/google/sparsehash/sparseconfig.h” et supprimer l'arborescence windows …
- utilisation google SparsesHash
- Dans les classes
Locinv
&DofSet
Futur Works
Tests
Projet
- Récupere le nouveau package de libs (LibsVs2005-080704.rar)(ou bien juste rajouter le module Google-sparsehash-080704.rar pour ne pas retransferer 200 Mb) ⇒ ftp …
- Pour ceux qui compilent leurs propres projet, il faut ajouter au AdditionalIncludeDirectory le répertoire des sparsehash aux projets suivants :
$(METAFORLIBS_VS2005)\Google\sparsehash\src
mtFEM / _mtFEM mtFEMBase / _mtFEMBase mtElements / _mtElements mtAle / _mtAle IntelSig / _IntelSig
- Ajouter dans le meta_config.h :
#define _WITH_GOOGLE_SPARSEHASH_
- Linux : Done (+ suppression du profile spirou au bénéfice du profile Linux (vu qu'on n'a plus qu'1 seule machine linux32)
- sparsehash installées dans /opt/sparsehash-1.1
ToDo list
Fichiers ajoutés/supprimés
A R oo_meta/profiles/spirou/
— Luc PAPELEUX 2008/07/04
commit/2008/07_04.txt · Last modified: 2016/03/30 15:23 by 127.0.0.1