2010-08-13 16 views
1

Je travaille dans l'informatique scientifique et le développement d'une application basée sur petsc pour un système multi-cpu. À des fins de débogage, je veux installer ce logiciel sur mon propre ordinateur, qui est un système dual-core exécutant Ubuntu (Karmic Koala).Quel PETSc et MPI pour Ubuntu sur un système dual-core

Mais je ne sais pas quelles ressources utiliser. Il existe des paquets debian, ainsi que des sources-archives sur le web. Je sais qu'il y a différents problèmes lors de la compilation et de la liaison de ces paquets, donc ce problème est ce que je veux éviter le plus! Je ne me soucie pas de la performance (au moins pas trop), car je vais utiliser ce logiciel uniquement pour le débogage, d'où la facilité d'utilisation est le plus important pour moi.

Quelqu'un peut-il donner des conseils?

Répondre

2

Utilisez des packages natifs (c'est-à-dire Ubuntu) lorsqu'ils existent et que vous n'avez aucune raison spécifique de faire autrement.

1

Essayez CentOS. Il est basé sur Red Hat Linux et est gratuit. Nous développons un progiciel scientifique et trouvons l'environnement pratique pour le débogage et le développement.

+0

Je ne pense pas que changer d'OS est nécessaire pour travailler sur PETSc ... – ccook

1

Utilisez Open MPI ou MPICH2 (soit à partir du gestionnaire de paquets), je préfère quelque peu le premier. Si vous êtes sûr que le code de ce projet tiers est solide, alors vous pouvez utiliser le paquetage Ubuntu, mais s'il utilise massivement PETSc et que vous envisagez de déboguer cette bibliothèque, alors vous devriez créer votre propre PETSc en mode debug (la version packagée est optimisée uniquement)

PETSc fait beaucoup de contrôle d'intégrité uniquement en mode débogage, y compris

  • Déposer pour détecter les erreurs factionnaires de mémoire client.
  • Vérification que les ensembles d'index sont triés ou disjoints, ou une permutation.
  • Suivi de la pile pour imprimer une trace de pile correcte (file:line function()) en cas d'erreur ou de signal (comme SEGV).
  • Enregistrement de la mémoire afin qu'elle puisse imprimer un instantané de la pile d'allocation pour la fuite de la mémoire dans un résumé lorsque le programme se termine (similaire à valgrind, mais 1000 fois plus rapide).

Cela vous fera gagner beaucoup de temps si vous déboguez du code client. Construire PETSc ces jours-ci est très simple, mais si vous avez des problèmes, demandez à [email protected] (pas besoin de vous abonner) ou la liste à [email protected]