哪个PETSc和MPI适用于Ubuntu的双核系统

时间:2010-08-13 19:30:13

标签: ubuntu mpi scientific-computing

我正在从事科学计算,并为多CPU系统开发基于petsc的应用程序。

出于调试目的,我想在我自己的电脑上安装这个软件,这是一个运行Ubuntu(Karmic Koala)的双核系统。

但我不知道要使用哪些资源。网上有debian软件包和源代码存档。我知道在编译和链接这些软件包时存在各种问题,因此我最想避免的是这个问题!

我不关心性能(至少不是太多),因为我只会将此软件用于调试,因此可用性对我来说是最重要的。

有人可以提供建议吗?

3 个答案:

答案 0 :(得分:2)

使用原生(即Ubuntu)软件包时,如果没有任何具体原因,请执行此操作。

答案 1 :(得分:1)

试试CentOS。它基于Red Hat Linux并且是免费的。我们开发了一个科学的软件包,找到了便于调试和开发的环境。

答案 2 :(得分:1)

使用Open MPI或MPICH2(从包管理器获取),我有点喜欢前者。如果你确定这个第三方项目的代码是坚如磐石的,那么你可以使用Ubuntu包,但是如果它大量使用PETSc并且你打算调试那个库,那么你应该在调试模式下构建自己的PETSc (打包版本仅进行了优化)。

PETSc仅在调试模式下进行大量完整性检查,包括

  • 放置标记以检测客户端内存错误。
  • 检查索引集是排序还是不相交,还是排列。
  • 跟踪堆栈,以便它可以在错误或信号(如SEGV)上打印正确的堆栈跟踪(file:line function())。
  • 记录内存,以便在程序退出时可以在摘要中打印泄漏内存的分配堆栈快照(类似于valgrind,但速度提高1000倍)。

如果您正在调试客户端代码,这将节省大量时间。如今建造PETSc非常简单,但如果您遇到问题,请向petsc-usein@mcs.anl.gov询问petsc-maint@mcs.anl.gov(无需订阅)或列表。