2013-01-21 2 views
0

저는 Math PhD에 대한 과학적 응용 프로그램을 C++로 작성했습니다.이 프로그램은 주로 BLAS 레벨 3 루틴을 기반으로합니다. 사용 된 행렬의 크기는 상당히 다양합니다. 이상적으로는 10000 이상이라는 매우 큰 행렬을 처리 할 수 ​​있기를 바랍니다. 지금까지 멀티 코어 스레드 인 Intel MKL을 8 코어에 맞게 확장했습니다. 내 알고리즘은 정확한 결과를 산출하지만 높은 전력이 사용되어 누적 된 오류로 인해 배정도 산술에서 매우 불안정합니다. 또한 대규모 슈퍼 컴퓨터 클러스터에 액세스 할 수 있고 알고리즘을 여러 노드에 쉽게 확장 할 수 있으므로 MPI를 사용하여 수백 개의 노드에서 응용 프로그램을 확장하고 싶습니다. 매트릭스 템플릿 라이브러리 (4)가 보인다 - 가 MTL4 :BLAS + Multiple Precision + MPI

내 목표는 템플릿 BLAS 라이브러리를 찾을 수 있습니다 :

다중 정밀 산술 지원을 는 멀티 스레딩을 지원, 는 가

내 결과 지금까지 MPI

지원 위의 모든 작업을 수행 할 수 있지만 오픈 소스 에디션은 하나의 코어에서만 실행되며 슈퍼 컴퓨팅 에디션은 상당히 비쌉니다.

Eigen - 멀티 코어를 지원하지 않는 것처럼 보입니까? MKL과 연결된 경우 멀티 코어 및 MPI를 지원합니까?

아르마딜로 - 위의 모든 작업을 수행합니까?

내가 크게, 당신의 행렬 문제에 따라

마리아

+0

MTL4가 귀하의 요구를 완벽하게 충족 시킨다는 확신이 들면 MTL4 판매처에 직접 문의하여 단일 무료 교육 라이센스를 요청하십시오. –

답변

0

어떤 통찰력과 권고

친절 감사

을 부탁드립니다의 Tpetra package of Trilinos는보고 가치가있을 수도 있습니다. 스칼라 유형에 템플릿이 적용되어 여러 정밀도 유형을 사용할 수 있습니다. 슈퍼 컴퓨터에서 대규모 응용 프로그램을 대상으로하므로 우수한 병렬 성능을 기대할 수 있습니다.

희망 하시겠습니까?

편집 : 무료입니다!