1 |
1
메모리 및 복수의 코어들을 포함하는 데이터 처리 장치; 및상기 메모리의 크기 및 상기 복수의 코어들의 개수를 기반으로 복수의 파라미터들을 최적화하도록 구성된 파라미터 제어기를 포함하고,상기 데이터 처리 장치는:상기 메모리에 저장된 입력 데이터를 복수의 데이터 블록들로 분할하고;상기 복수의 코어들에 대응하는 격자 구조를 기반으로 상기 복수의 데이터 블록들을 상기 복수의 코어들로 각각 할당하고;상기 복수의 코어들을 사용하여, 상기 복수의 데이터 블록들에 대한 연산을 수행하여 출력 데이터를 출력하도록 구성되고,상기 메모리에 저장된 입력 데이터의 크기는 상기 복수의 파라미터들 중 제1 파라미터에 대응하고, 상기 복수의 데이터 블록들 각각의 크기는 상기 복수의 파라미터들 중 제2 파라미터에 대응하고, 상기 복수의 코어들에 대한 상기 격자 구조는 상기 복수의 파라미터들 중 제3 파라미터에 대응하고,상기 파라미터 제어기는:상기 메모리의 크기를 기반으로 상기 제1 파라미터를 자동으로 최적화하고;미리 정해진 값을 기반으로 상기 제2 파라미터를 자동으로 최적화하고;상기 복수의 코어들의 개수를 기반으로 상기 제3 파라미터를 자동으로 최적하도록 구성된 컴퓨팅 시스템
|
2 |
2
제 1 항에 있어서,상기 입력 데이터는 HPL(High Performance Linpack) 벤치마크를 위한 데이터이고, 상기 출력 데이터는 상기 HPL 벤치마크의 결과를 가리키는 컴퓨팅 시스템
|
3 |
3
제 1 항에 있어서,상기 미리 정해진 값은 128의 배수인 컴퓨팅 시스템
|
4 |
4
제 1 항에 있어서,상기 제3 파라미터는 상기 격자 구조의 가로 길이 및 세로 길이에 대한 정보를 포함하고,상기 복수의 코어들의 개수가 완전제곱수인 경우, 상기 가로 길이 및 상기 세로 길이가 동일하도록 상기 제3 파라미터가 최적화되고,상기 복수의 코어들의 개수가 완전제곱수가 아닌 경우, 상기 가로 길이가 상기 세로 길이보다 작도록 상기 제3 파라미터가 최적화되는 컴퓨팅 시스템
|
5 |
5
제 1 항에 있어서,상기 파라미터 제어기는:상기 메모리의 크기를 기반으로 상기 제1 파라미터를 결정하도록 구성된 제1 파라미터 결정부;상기 미리 정해진 값을 기반으로 상기 제2 파라미터를 결정하도록 구성된 제2 파라미터 결정부;상기 복수의 코어들의 개수를 기반으로 상기 제3 파라미터를 결정하도록 구성된 제3 파리미터 결정부; 및상기 제1 내지 제3 파라미터 결정부들의 출력들을 기반으로, 상기 제1 내지 제3 파라미터들의 최적화된 값들을 상기 데이터 처리 장치로 제공하도록 구성된 최적 파라미터 설정부를 포함하는 컴퓨팅 시스템
|
6 |
6
제 1 항에 있어서,복수의 튜너들을 포함하는 라이브러리를 더 포함하고,상기 데이터 처리 장치는 상기 라이브러리를 사용하여, 상기 복수의 데이터 블록들에 대한 상기 연산을 수행하도록 구성되는 컴퓨팅 시스템
|
7 |
7
제 6 항에 있어서,상기 파라미터 제어기는, 상기 메모리의 크기 및 상기 복수의 코어들의 개수를 기반으로, 상기 복수의 튜너들 각각에 대한 파라미터들을 최적화하도록 구성되고,상기 라이브러리는 상기 복수의 튜너들 각각에 대하여 최적화된 파라미터들을 기반으로 라이브러리 파일을 생성하도록 구성된 컴퓨팅 시스템
|
8 |
8
제 6 항에 있어서,상기 라이브러리는 CLBlast 라이브러리인 컴퓨팅 시스템
|
9 |
9
제 6 항에 있어서,상기 데이터 처리 장치는 상기 라이브러리를 사용하여, 신경망 연산을 수행하도록 더 구성된 컴퓨팅 시스템
|
10 |
10
제 10 항에 있어서,상기 신경망 연산은 복수의 레이어들을 통해 수행되고,상기 파라미터 제어기는, 상기 메모리의 크기 및 상기 복수의 코어들의 개수를 기반으로, 상기 복수의 레이어들 각각에 대응하는 파라미터들을 최적화하도록 더 구성된 컴퓨팅 시스템
|
11 |
11
제 1 항에 있어서,상기 복수의 레이어들 각각에 대응하는 파라미터들은 상기 복수의 레이어들 각각으로 입력되는 입력 데이터의 크기, 상기 복수의 레이어들 각각에서 사용되는 커널의 크기에 대한 정보를 포함하는 컴퓨팅 시스템
|
12 |
12
제 1 항에 있어서,상기 메모리에 저장된 입력 데이터를 상기 복수의 데이터 블록들로 분할하는 것, 및 상기 복수의 코어들에 대응하는 상기 격자 구조를 기반으로 상기 복수의 데이터 블록들을 상기 복수의 코어들로 각각 할당하는 것은 2차원 블록-순환 행렬 분산 기법을 기반으로 수행되는 컴퓨팅 시스템
|
13 |
13
메모리 및 복수의 코어들을 포함하고, HPL(High Performance Linpack) 벤치마크를 수행하도록 구성된 컴퓨팅 시스템의 동작 방법에 있어서,상기 메모리의 크기 및 상기 복수의 코어들의 개수에 대한 하드웨어 정보를 수집하는 단계;상기 하드웨어 정보를 기반으로 제1 내지 제3 파라미터들을 최적화하는 단계; 및 상기 최적화된 제1 내지 제3 파라미터들을 기반으로 상기 HPL 벤치마크를 수행하는 단계를 포함하고, 상기 제1 파라미터는 상기 메모리의 크기를 기반으로 자동으로 최적화되고, 상기 제2 파라미터는 미리 정해진 값을 기반으로 자동으로 최적화되고, 상기 제3 파라미터는 상기 복수의 코어들의 개수를 기반으로 자동으로 최적화되는 동작 방법
|
14 |
14
제 13 항에 있어서,상기 HPL 벤치마크를 수행하는 단계는:입력 데이터를 복수의 데이터 블록들로 분할하는 단계;상기 복수의 코어들에 대응하는 격자 구조를 기반으로 상기 복수의 데이터 블록들을 상기 복수의 코어들로 각각 할당하는 단계; 및상기 복수의 코어들을 통해 상기 복수의 데이터 블록들에 대한 연산을 수행하는 단계를 포함하고,상기 입력 데이터의 크기는 상기 제1 파라미터에 대응하고,상기 복수의 데이터 블록들 각각의 크기는 상기 제2 파라미터에 대응하고,상기 격자 구조의 크기는 상기 제3 파라미터에 대응하는 동작 방법
|
15 |
15
제 14 항에 있어서,상기 미리 정해진 값은 128의 배수인 동작 방법
|
16 |
16
제 14 항에 있어서,상기 제3 파라미터는 상기 격자 구조의 가로 길이 및 세로 길이에 대한 정보를 포함하고,상기 복수의 코어들의 개수가 완전제곱수인 경우, 상기 가로 길이 및 상기 세로 길이가 동일하도록 상기 제3 파라미터가 최적화되고,상기 복수의 코어들의 개수가 완전제곱수가 아닌 경우, 상기 가로 길이가 상기 세로 길이보다 작도록 상기 제3 파라미터가 최적화되는 동작 방법
|