이기종 멀티 스케일 방법 (HMM)을 사용하여 멀티 스케일 문제를 해결하고 있습니다. 기본적으로 내 특정 절차는 다음과 같은 반복 프로세스를 사용합니다.
- 많은 로컬 매트릭스 시스템을 해결하십시오.
- 로컬 시스템의 솔루션에서 관심 가치를 계산하십시오.
- 지역 "관심 가치"에서 글로벌 매트릭스 시스템을 조립
- 글로벌 매트릭스 시스템 해결
- 글로벌 매트릭스 시스템의 솔루션을 사용하여 새로운 로컬 매트릭스 시스템을 형성하십시오.
수렴 기준이 충족 될 때까지 반복하십시오.
여러 로컬 (독립적) 선형 방정식 시스템이 있고 여러 시스템이 로컬 RAM 메모리에 들어갈 수 있으므로 여러 "로컬"시스템을 각 프로세서에로드하고 각 시스템을 순차적으로 해결하는 것이 가장 좋습니다 ( 이 게시 된 질문 참조 ).
내 질문은 글로벌 매트릭스 시스템을 조립하고 해결하는 최상의 전략에 관한 것입니다. 필자의 경우 글로벌 매트릭스 시스템은 프로세서의 RAM 메모리에 완전히 들어갈 수있을 정도로 작습니다. 또한 로컬 및 전역 행렬은 반복간에 크기가 변경되지 않습니다. 따라서 가능한 세 가지 전략 중 하나를 예상합니다.
- "관심 가치"를 단일 프로세서에 모으고 글로벌 매트릭스 시스템을 하나의 프로세서에 순차적으로 조립 / 해결하십시오.
- 관심있는 값을 모든 프로세서에 복사하고 모든 프로세서에서 동일한 전역 매트릭스 시스템을 순차적으로 조립 / 해결하십시오.
- 각 프로세서가 전역 행렬의 연속 블록을 생성하는 데 필요한 "관심 가치"를 가지고 있다고 가정하면 전역 행렬의 파티션을 로컬로 조립 한 다음 병렬로 함께 해결할 수 있습니다.
각 방법에 대한 몇 가지 장점 / 단점을 볼 수 있습니다. 방법 1에서는 해결 단계에서 통신이 필요하지 않지만 루트 프로세서와의 통신은 병목 현상 (특히 규모)이 될 수 있습니다. 방법 2는 제 1 방법보다 글로벌 매트릭스를 조립하기 위해 더 많은 프로세서 간 통신을 요구할 수 있지만, 해결 단계 또는 후속하는 로컬 매트릭스 조립 단계에서 통신이 필요하지 않다. 방법 3은 로컬 또는 글로벌 매트릭스의 어셈블리를 위해 프로세서 간 통신이 필요하지 않지만 해결 단계에서 필요합니다.