KR101101992B1 - 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 - Google Patents
코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 Download PDFInfo
- Publication number
- KR101101992B1 KR101101992B1 KR1020100040861A KR20100040861A KR101101992B1 KR 101101992 B1 KR101101992 B1 KR 101101992B1 KR 1020100040861 A KR1020100040861 A KR 1020100040861A KR 20100040861 A KR20100040861 A KR 20100040861A KR 101101992 B1 KR101101992 B1 KR 101101992B1
- Authority
- KR
- South Korea
- Prior art keywords
- mapping
- data
- memory
- reuse
- application
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
- G06F9/4486—Formation of subprogram jump address
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
본 발명에 따르면, 지역 메모리의 구조를 인식하여 CGRA에 대한 애플리케이션 매핑을 수행함으로써, 전체 성능을 향상시킬 수 있고, 전력 효율을 증가시키며, 메모리 뱅크의 사용에 있어서 균형을 유지시킬 수 있다.
Description
도 2는 연산 요소를 상세히 설명한 블록도.
도 3은 EMS(edge-centric modulo scheduling) 알고리즘을 사용한 MiBench 및 SPEC 벤치마크의 중요한 루프 커널들의 tc 및 td간 비율을 도시한 도면.
도 4는 본 발명에 따른 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 장치를 나타낸 블록도.
도 5a는 연산 요소 어레이 및 연산 요소 어레이와 연결된 지역 메모리의 구조를 도시한 도면.
도 5b는 애플리케이션에 포함된 연산 루프를 데이터 흐름 그래프로서 표현한 것을 예시한 도면.
도 5c는 도 5b의 데이터 흐름 그래프로부터 추출된 데이터 재사용 그래프를 예시한 도면.
도 6a 및 도 6b는 종래의 모듈로 스케쥴러에 의해 매핑 결과가 생성되는 과정을 예시한 도면.
도 6c 및 도 6d는 본 발명에 따른 모듈로 스케쥴러에 의해 매핑 결과가 생성되는 과정을 예시하는 도면.
도 7a는 한 애플리케이션의 연산 루프에 대한 데이터 흐름 그래프를 예시한 도면.
도 7b 및 도 7c는 종래 방식에 따라 매핑 결과가 생성되는 과정을 예시한 도면.
도 7d 및 도 7e는 본 발명에 따라 매핑 결과가 생성되는 과정을 예시한 도면.
도 8a는 애플리케이션의 어느 한 루프 연산에 대한 데이터 흐름 그래프를 예시한 도면.
도 8b는 도 8a의 데이터 흐름 그래프를 CGRA의 연산 요소 어레이에 매핑한 매핑 결과를 예시한 도면.
도 9a 내지 도 9d는 도 8a의 데이터 흐름 그래프를 상이한 개수의 연산 요소 열과 메모리 뱅크 구성에 대하여 스케쥴링한 매핑 결과들을 나타낸 도면.
도 9e는 도 9a 내지 도 9e의 구성에 따른 결과값을 나타낸 표.
지역 메모리(130) 구성 메모리(140) 프로세서(150)
메인 메모리(160) 모듈로 스케쥴러(210) 성능 분석부(220)
매핑 최적화부(230) 재사용 기회비용 계산부(240) 균형 유지부(250)
전력 절감부(260)
Claims (6)
- 연산 요소들과 지역 메모리를 포함하는 코어스 그레인드 재구성 어레이에서의 애플리케이션에 대한 매핑을 최적화하는 방법으로서,
(a) 애플리케이션에 포함된 연산들을 각 연산 요소에 매핑하는 연산 매핑 및 어레이 변수들을 지역 메모리에 매핑하는 어레이 매핑을 포함하는 애플리케이션 매핑을 수행하여 제1 매핑 결과를 생성하는 단계;
(b) 상기 제1 매핑 결과에 대하여 데이터 전송 시간과 데이터 연산 시간을 계산하고, 상기 데이터 전송 시간과 상기 데이터 연산 시간을 비교하는 단계;
(c) 상기 데이터 전송 시간이 상기 데이터 연산 시간보다 큰 경우, 상기 애플리케이션에 포함된 연산들 중 메모리 연산 간의 데이터 의존성 및 재사용의 양을 근사화한 엣지 가중치로 표현한 데이터 재사용 그래프를 생성하고, 상기 각 메모리 연산이 각 연산 요소에 매핑되는 경우에 박탈되는 재사용 기회의 이점인 재사용 기회비용을 상기 데이터 재사용 그래프로부터 계산하는 단계; 및
(d) 상기 각 메모리 연산이 각 연산 요소에 매핑되는 경우의 라우팅 비용과 상기 재사용 기회비용을 합한 비용이 적어지도록 상기 애플리케이션 매핑을 재수행하여 제2 매핑 결과를 생성하는 단계를 포함하는, 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법. - 제1항에 있어서,
(e) 상기 데이터 전송 시간이 상기 데이터 연산 시간보다 작은 경우 상기 제1 매핑 결과를 최종 매핑 결과로서 결정하고, 상기 데이터 전송 시간이 상기 데이터 연산 시간보다 큰 경우 상기 제2 매핑 결과를 최종 매핑 결과로서 결정하는 단계를 더 포함하는, 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법. - 제1항에 있어서, 상기 (c) 단계는
(c1) 상기 애플리케이션에 포함된 연산들에 대하여 각 연산을 나타내는 연산 노드 및 상기 연산 노드 간의 의존성을 나타낸 엣지로 표현한 데이터 흐름 그래프를 생성하는 단계;
(c2) 상기 데이터 흐름 그래프로부터 메모리 연산 노드를 추출하고, 상기 추출된 메모리 연산 노드, 상기 메모리 연산 노드 간의 의존성을 나타낸 엣지, 및 상기 메모리 연산 노드 간의 데이터 재사용의 양을 근사화한 엣지 가중치로 표현한 상기 데이터 재사용 그래프를 생성하는 단계;
(c3) 상기 데이터 재사용 그래프로부터, 상기 각 메모리 연산이 각 연산 요소에 매핑되는 경우에 박탈될 수 있는 재사용 기회의 이점인 재사용 기회비용을 계산하는 단계를 더 포함하는, 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법. - 제1항에 있어서, 상기 (c) 단계는
상기 각 메모리 연산이 매핑될 각 연산 요소에 대하여 뱅크 균형 비용을 계산하는 단계를 더 포함하며,
상기 제2 매핑 결과는 상기 뱅크 균형 비용이 감소하도록 생성되는 것을 특징으로 하는, 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법. - 제1항에 있어서, 상기 (c) 단계는
매핑될 지역 메모리의 뱅크 개수 및 연산 요소의 어레이 개수에 따른 총소모 에너지를 계산하는 단계를 더 포함하며,
상기 제2 매핑 결과는 상기 총소모 에너지가 감소하도록 생성되는 것을 특징으로 하는, 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법. - 제1항 내지 제5항 중의 어느 한 항에 따른 방법을 수행하기 위한 프로그램 코드가 기록된 컴퓨터로 판독 가능한 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100040861A KR101101992B1 (ko) | 2010-04-30 | 2010-04-30 | 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100040861A KR101101992B1 (ko) | 2010-04-30 | 2010-04-30 | 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110121313A KR20110121313A (ko) | 2011-11-07 |
KR101101992B1 true KR101101992B1 (ko) | 2012-01-13 |
Family
ID=45392222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100040861A KR101101992B1 (ko) | 2010-04-30 | 2010-04-30 | 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101101992B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9535833B2 (en) | 2013-11-01 | 2017-01-03 | Samsung Electronics Co., Ltd. | Reconfigurable processor and method for optimizing configuration memory |
KR101752062B1 (ko) * | 2015-10-16 | 2017-07-03 | 성균관대학교산학협력단 | 범용 어플리케이션을 그래픽 프로세서에서 구동하기 위한 범용 어플리케이션 분석 장치 및 분석 방법 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101293701B1 (ko) * | 2012-02-23 | 2013-08-06 | 국립대학법인 울산과학기술대학교 산학협력단 | 코어스 그레인드 재구성 어레이에서의 중첩 루프문 수행 장치 및 그 방법 |
KR101293700B1 (ko) * | 2012-02-23 | 2013-08-06 | 국립대학법인 울산과학기술대학교 산학협력단 | 코어스 그레인드 재구성 구조를 위한 코드 생성 장치 및 그 코드 생성 방법 |
CN111930680B (zh) * | 2020-09-17 | 2021-02-23 | 北京清微智能科技有限公司 | 一种可重构阵列映射方法和装置 |
CN112631610B (zh) * | 2020-11-30 | 2022-04-26 | 上海交通大学 | 一种针对粗粒度可重构结构的数据重用消除访存冲突方法 |
CN113094030A (zh) * | 2021-02-09 | 2021-07-09 | 北京清微智能科技有限公司 | 一种可重构芯片的易编译方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100089350A (ko) * | 2009-02-03 | 2010-08-12 | 삼성전자주식회사 | 재구성 가능 어레이의 스케줄러, 스케줄링 방법 및 이를 이용한 컴퓨팅 장치 |
-
2010
- 2010-04-30 KR KR1020100040861A patent/KR101101992B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100089350A (ko) * | 2009-02-03 | 2010-08-12 | 삼성전자주식회사 | 재구성 가능 어레이의 스케줄러, 스케줄링 방법 및 이를 이용한 컴퓨팅 장치 |
Non-Patent Citations (3)
Title |
---|
G. Dimitroulakos et al., "Exploiting the Distributed Foreground Memory in Coarse Grain Reconfigurable Arrays for Reducing the Memory Bottleneck in DSP Applications", Proceedings of the 5th Internation |
G. Dimitroulakos et al., "Exploring the Design Space of an Optimized Compiler Approach for Mesh-like Coarse-Grained Reconfigurable Architectures", Proceedings of the 20th international conference on P |
H, Park et al. "Edge-Centric Modulo Scheduling for Coarse-Grained Reconfigurable Architectures", PACT'08, October 25-29 2008. |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9535833B2 (en) | 2013-11-01 | 2017-01-03 | Samsung Electronics Co., Ltd. | Reconfigurable processor and method for optimizing configuration memory |
US9697119B2 (en) | 2013-11-01 | 2017-07-04 | Samsung Electronics Co., Ltd. | Optimizing configuration memory by sequentially mapping the generated configuration data into fields having different sizes by determining regular encoding is not possible |
US9727460B2 (en) | 2013-11-01 | 2017-08-08 | Samsung Electronics Co., Ltd. | Selecting a memory mapping scheme by determining a number of functional units activated in each cycle of a loop based on analyzing parallelism of a loop |
US9734058B2 (en) | 2013-11-01 | 2017-08-15 | Samsung Electronics Co., Ltd. | Optimizing configuration memory by sequentially mapping the generated configuration data by determining regular encoding is possible and functional units are the same in adjacent cycles |
KR101752062B1 (ko) * | 2015-10-16 | 2017-07-03 | 성균관대학교산학협력단 | 범용 어플리케이션을 그래픽 프로세서에서 구동하기 위한 범용 어플리케이션 분석 장치 및 분석 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20110121313A (ko) | 2011-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mittal et al. | A survey of techniques for optimizing deep learning on GPUs | |
KR101101992B1 (ko) | 코어스 그레인드 재구성 어레이에서의 애플리케이션 매핑 최적화 방법 및 그 장치 | |
Li et al. | GPU-accelerated preconditioned iterative linear solvers | |
Kim et al. | High throughput data mapping for coarse-grained reconfigurable architectures | |
US20210357732A1 (en) | Neural network accelerator hardware-specific division of inference into groups of layers | |
Szustak et al. | Adaptation of MPDATA heterogeneous stencil computation to Intel Xeon Phi coprocessor | |
CN113139648A (zh) | 执行神经网络模型的pim架构的数据布局优化 | |
Amiri et al. | FPGA-based soft-core processors for image processing applications | |
D’Ambra et al. | A parallel generalized relaxation method for high-performance image segmentation on GPUs | |
Lin et al. | Gcn inference acceleration using high-level synthesis | |
Kim et al. | Memory-aware application mapping on coarse-grained reconfigurable arrays | |
Rojek et al. | Systematic adaptation of stencil‐based 3D MPDATA to GPU architectures | |
Brus et al. | Performance and scalability improvements for discontinuous Galerkin solutions to conservation laws on unstructured grids | |
Bernabé et al. | Auto-tuning techniques for linear algebra routines on hybrid platforms | |
KR101293700B1 (ko) | 코어스 그레인드 재구성 구조를 위한 코드 생성 장치 및 그 코드 생성 방법 | |
US20230289398A1 (en) | Efficient Matrix Multiply and Add with a Group of Warps | |
Ashworth et al. | First steps in porting the lfric weather and climate model to the fpgas of the euroexa architecture | |
Balogh et al. | Comparison of parallelisation approaches, languages, and compilers for unstructured mesh algorithms on GPUs | |
US20220413818A1 (en) | Method and apparatus for functional unit balancing at program compile time | |
KR20150051083A (ko) | 재구성 가능 프로세서, 재구성 가능 프로세서의 구성 메모리의 사용을 최적화하는 방법 및 장치 | |
Huchant et al. | Adaptive partitioning for iterated sequences of irregular OpenCL kernels | |
Aissa | GPU-accelerated CFD simulations for turbomachinery design optimization | |
Tithi et al. | Mapping stencils on coarse-grained reconfigurable spatial architecture | |
Xu et al. | Generalized GPU acceleration for applications employing finite-volume methods | |
Al-Mouhamed | Exploration of automatic optimization for CUDA programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20141216 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151006 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20161101 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20171124 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20181203 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20191203 Year of fee payment: 9 |