1 |
1
병렬 LU 분해 제공 방법을 실행하는 노드에 있어서,적어도 하나의 프로세서; 및상기 적어도 하나의 프로세서에 의해 실행가능한 적어도 하나의 명령어를 저장하는 메모리를 포함하고, 상기 적어도 하나의 명령어는 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,피분해 행렬의 적어도 일부에 대응하는 복수 개의 행렬 블록을 LU 분해를 실행할 복수 개의 프로세스에 분배하기 위한 매핑 정보를 나타내는 복수 개의 후보 행렬 블록 매핑을 생성하는 제 1 동작;상기 복수 개의 후보 행렬 블록 매핑 중에서 소정의 메모리 제한 조건을 만족하는 적어도 하나의 후보 행렬 블록 매핑을 기반으로 상기 피분해 행렬의 LU 분해 예상 성능을 예측하는 제 2 동작; 및상기 LU 분해 예상 성능을 기반으로 상기 메모리 제한 조건을 만족하는 적어도 하나의 후보 행렬 블록 매핑 중에서 상기 복수 개의 행렬 블록에 대한 최적 후보 행렬 블록 매핑을 결정하는 제 3 동작을 수행하도록 구성되는,노드
|
2 |
2
제 1 항에 있어서,각각의 행렬 블록은 상기 피분해 행렬을 소정의 크기의 블록 행 및 블록 열로 분할한 부분 행렬에 대응하는,노드
|
3 |
3
제 1 항에 있어서,상기 복수 개의 프로세스는 프로세스 그리드 상에 소정의 프로세스 행 및 프로세스 열로 배치되고,상기 매핑 정보는 상기 복수 개의 행렬 블록의 각 행렬 블록에 대한 상기 프로세스 그리드의 프로세스 행 정보 및 프로세스 열 정보를 포함하는,노드
|
4 |
4
제 1 항에 있어서,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금, 상기 제 1 동작을 실행하기 위하여,행 방향 및 열 방향 중 한 방향을 라운드-로빈 방식으로 고정하도록 구성되는,노드
|
5 |
5
제 4 항에 있어서,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금, 상기 제 1 동작을 실행하기 위하여,상기 행 방향 및 상기 열 방향 중 나머지 방향을 따라 상기 피분해 행렬의 아직 배정되지 않은 마지막 블록 행 또는 마지막 블록 열을 상기 복수 개의 행렬 블록으로 선택하도록 구성되는,노드
|
6 |
6
제 4 항에 있어서,상기 복수 개의 프로세스는 프로세스 그리드 상에 소정의 프로세스 행 및 프로세스 열로 배치되고,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금, 상기 제 1 동작을 실행하기 위하여,상기 복수 개의 행렬 블록을 상기 행 방향 및 상기 열 방향 중 나머지 방향을 따라 각 프로세스 행 또는 각 프로세스 열에 배정하여 상기 복수 개의 후보 행렬 블록 매핑을 생성하도록 구성되는,노드
|
7 |
7
제 1 항에 있어서,상기 제 2 동작은,상기 복수 개의 프로세스의 컴퓨팅 성능, 메모리 성능 및 통신 성능에 기반한 성능 예상 모델을 이용하여 상기 LU 분해 예상 성능을 예측하도록 구성되는,노드
|
8 |
8
제 1 항에 있어서,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,상기 피분해 행렬의 모든 행렬 블록을 분배할 때까지 상기 피분해 행렬의 나머지 복수 개의 행렬 블록 각각에 대하여 상기 제 1 동작 내지 상기 제 3 동작을 반복하는 제 4 동작을 수행하도록 구성되는,노드
|
9 |
9
제 8 항에 있어서,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,행 방향을 라운드-로빈 방식으로 고정하고, 열 방향을 따라 상기 제 1 동작 내지 상기 제 4 동작을 수행하여 열 방향 최적 후보 행렬 블록 매핑을 획득하고,상기 열 방향을 라운드-로빈 방식으로 고정하고, 상기 행 방향을 따라 상기 제 1 동작 내지 상기 제 4 동작을 수행하여 행 방향 최적 후보 행렬 블록 매핑을 획득하고,상기 열 방향 최적 후보 행렬 블록 매핑 및 상기 행 방향 최적 후보 행렬 블록 매핑에 의한 상기 피분해 행렬의 LU 분해 예측 성능을 기반으로 상기 피분해 행렬에 대한 최종 행렬 블록 매핑을 결정하도록 구성되는,노드
|
10 |
10
제 9 항에 있어서,상기 적어도 하나의 명령어는, 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,상기 최종 행렬 블록 매핑을 기반으로 상기 피분해 행렬을 상기 복수 개의 프로세스에 분배하도록 구성되는,노드
|
11 |
11
병렬 LU 분해 제공 방법에 있어서,피분해 행렬의 적어도 일부에 대응하는 복수 개의 행렬 블록을 LU 분해를 실행할 복수 개의 프로세스에 분배하기 위한 매핑 정보를 나타내는 복수 개의 후보 행렬 블록 매핑을 생성하는 제 1 동작을 수행하는 단계;상기 복수 개의 후보 행렬 블록 매핑 중에서 소정의 메모리 제한 조건을 만족하는 적어도 하나의 후보 행렬 블록 매핑을 기반으로 상기 피분해 행렬의 LU 분해 예상 성능을 예측하는 제 2 동작을 수행하는 단계;상기 LU 분해 예상 성능을 기반으로 상기 메모리 제한 조건을 만족하는 적어도 하나의 후보 행렬 블록 매핑 중에서 상기 복수 개의 행렬 블록에 대한 최적 후보 행렬 블록 매핑을 결정하는 제 3 동작을 수행하는 단계를 포함하는,병렬 LU 분해 제공 방법
|
12 |
12
제 11 항에 있어서,상기 제 1 동작을 수행하는 단계는,행 방향 및 열 방향 중 한 방향을 라운드-로빈 방식으로 고정하는 단계; 및상기 행 방향 및 상기 열 방향 중 나머지 방향을 따라 상기 피분해 행렬의 아직 배정되지 않은 마지막 블록 행 또는 마지막 블록 열을 상기 복수 개의 행렬 블록으로 선택하는 단계를 포함하는,병렬 LU 분해 제공 방법
|
13 |
13
제 12 항에 있어서,상기 복수 개의 프로세스는 프로세스 그리드 상에 소정의 프로세스 행 및 프로세스 열로 배치되고,상기 제 1 동작을 수행하는 단계는,상기 복수 개의 행렬 블록을 상기 행 방향 및 상기 열 방향 중 나머지 방향을 따라 각 프로세스 행 또는 각 프로세스 열에 배정하여 상기 복수 개의 후보 행렬 블록 매핑을 생성하는 단계를 더 포함하는,병렬 LU 분해 제공 방법
|
14 |
14
제 11 항에 있어서,상기 제 2 동작을 수행하는 단계는,상기 복수 개의 프로세스의 컴퓨팅 성능, 메모리 성능 및 통신 성능에 기반한 성능 예상 모델을 이용하여 상기 LU 분해 예상 성능을 예측하는 단계를 포함하는,병렬 LU 분해 제공 방법
|
15 |
15
제 11 항에 있어서,상기 피분해 행렬의 모든 행렬 블록을 분배할 때까지 상기 피분해 행렬의 나머지 복수 개의 행렬 블록 각각에 대하여 상기 제 1 동작을 수행하는 단계 내지 상기 제 3 동작을 수행하는 단계를 반복하는 제 4 동작을 수행하는 단계를 더 포함하는,병렬 LU 분해 제공 방법
|
16 |
16
제 15 항에 있어서,행 방향을 라운드-로빈 방식으로 고정하고, 열 방향을 따라 상기 제 1 동작을 수행하는 단계 내지 상기 제 4 동작을 수행하는 단계를 수행하여 열 방향 최적 후보 행렬 블록 매핑을 획득하는 단계;상기 열 방향을 라운드-로빈 방식으로 고정하고, 상기 행 방향을 따라 상기 제 1 동작을 수행하는 단계 내지 상기 제 4 동작을 수행하는 단계를 수행하여 행 방향 최적 후보 행렬 블록 매핑을 획득하는 단계; 및상기 열 방향 최적 후보 행렬 블록 매핑 및 상기 행 방향 최적 후보 행렬 블록 매핑에 의한 상기 피분해 행렬의 LU 분해 예측 성능을 기반으로 상기 피분해 행렬에 대한 최종 행렬 블록 매핑을 결정하는 단계를 포함하는,병렬 LU 분해 제공 방법
|
17 |
17
제 11 항에 따른 병렬 LU 분해 제공 방법을 프로세서에 의해 실행하도록 구성된 적어도 하나의 명령어를 포함하는 컴퓨터 프로그램을 저장한 컴퓨터 판독가능한 비 일시적 기록 매체
|