동적 온도 제어 기술은 마이크로프로세서 내부 특정 유닛의 온도가 크게 올라가는 열섬 문제를 해결하기 위해 널리 사용되는 기법으로 냉각 비용을 감소시키고 칩의 신뢰성을 높인다는 장점이 있지만, 기법 적용으로 인해 성능이 저하되는 단점이 있다. 본 논문에서는 부동소수점 응용 프로그램 수행 시 발열 문제를 해결하기 위해 적용되는 동적 온도 제어 기술로 인한 성능 저하를 최소화하기 위하여 듀얼 부동소수점 가산기 구조를 제안하고자 한다. 부동소수점 응용 프로그램을 수행할 때, 가장 많이 활성화되는 유닛 중 하나인 부동소수점 가산기를 두 개로 중복시켜서 접근을 분산시키는 기법을 통해 열섬 문제를 해결하고자 한다. 또한 상호 인접한 유닛 간의 열 전달로 인해 온도가 상승하는 문제를 해결하기 위하여, 열 진달 지연 공간을 마이크로프로세서 내에 배치시키는 방법을 제안한다 제안 기법들의 적용 결과, 동적 온도 관리 기술을 사용하는 환경에서 마이크로프로세서의 최고 온도가 평균 $5.3^{\circ}C$ 최대 $10.8^{\circ}C$ 낮아지면서 발열로 인한 칩의 안정성 저하 문제를 완화시킬 수 있다. 또한 동적 온도 관리 기술이 적용되는 시간을 크게 줄임으로써 프로세서의 성능은 평균 1.41배(최대 1.90배) 향상된다.
동적 온도 제어 기술은 마이크로프로세서 내부 특정 유닛의 온도가 크게 올라가는 열섬 문제를 해결하기 위해 널리 사용되는 기법으로 냉각 비용을 감소시키고 칩의 신뢰성을 높인다는 장점이 있지만, 기법 적용으로 인해 성능이 저하되는 단점이 있다. 본 논문에서는 부동소수점 응용 프로그램 수행 시 발열 문제를 해결하기 위해 적용되는 동적 온도 제어 기술로 인한 성능 저하를 최소화하기 위하여 듀얼 부동소수점 가산기 구조를 제안하고자 한다. 부동소수점 응용 프로그램을 수행할 때, 가장 많이 활성화되는 유닛 중 하나인 부동소수점 가산기를 두 개로 중복시켜서 접근을 분산시키는 기법을 통해 열섬 문제를 해결하고자 한다. 또한 상호 인접한 유닛 간의 열 전달로 인해 온도가 상승하는 문제를 해결하기 위하여, 열 진달 지연 공간을 마이크로프로세서 내에 배치시키는 방법을 제안한다 제안 기법들의 적용 결과, 동적 온도 관리 기술을 사용하는 환경에서 마이크로프로세서의 최고 온도가 평균 $5.3^{\circ}C$ 최대 $10.8^{\circ}C$ 낮아지면서 발열로 인한 칩의 안정성 저하 문제를 완화시킬 수 있다. 또한 동적 온도 관리 기술이 적용되는 시간을 크게 줄임으로써 프로세서의 성능은 평균 1.41배(최대 1.90배) 향상된다.
Dynamic Thermal Management (DTM) technique is generally used for reducing the peak temperature (hotspot) in the microprocessors. Despite the advantages of lower cooling cost and improved stability, the DTM technique inevitably suffers from performance loss. This paper proposes the DualFloating-Point...
Dynamic Thermal Management (DTM) technique is generally used for reducing the peak temperature (hotspot) in the microprocessors. Despite the advantages of lower cooling cost and improved stability, the DTM technique inevitably suffers from performance loss. This paper proposes the DualFloating-Point Adders Architecture to minimize the performance loss due to thermal problem when the floating-point applications are executed. During running floating-point applications, only one of two floating-point adders is used selectively in the proposed architecture, leading to reduced peak temperature in the processor. We also propose a new floorplan technique, which creates Space for Heat Transfer Delay in the processor for solving the thermal problem due to heat transfer between adjacent hot units. As a result, the peak temperature drops by $5.3^{\circ}C$ on the average (maximum $10.8^{\circ}C$ for the processor where the DTM is adopted, consequently giving a solution to the thermal problem. Moreover, the processor performance is improved by 41% on the average by reducing the stall time due to the DTM.
Dynamic Thermal Management (DTM) technique is generally used for reducing the peak temperature (hotspot) in the microprocessors. Despite the advantages of lower cooling cost and improved stability, the DTM technique inevitably suffers from performance loss. This paper proposes the DualFloating-Point Adders Architecture to minimize the performance loss due to thermal problem when the floating-point applications are executed. During running floating-point applications, only one of two floating-point adders is used selectively in the proposed architecture, leading to reduced peak temperature in the processor. We also propose a new floorplan technique, which creates Space for Heat Transfer Delay in the processor for solving the thermal problem due to heat transfer between adjacent hot units. As a result, the peak temperature drops by $5.3^{\circ}C$ on the average (maximum $10.8^{\circ}C$ for the processor where the DTM is adopted, consequently giving a solution to the thermal problem. Moreover, the processor performance is improved by 41% on the average by reducing the stall time due to the DTM.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
264/AVC 등 비디오 디코딩 분야에서 동적 온도 제어에 따라 동영상 프레임을 제어하는 기법에 대한 연구가 있지만⑸, 동영상 재생이라는 제한된 분야에만 적용 가능한 기법이다. 따라서 본 논문에서는 이와 같은 상황을 바탕으로 부동소수점 응용 프로그램을 수행하는 경우 마이크로프로세서 내부 온도를 효과적으로 제어 하기 위한 기법을 제안하고자 한다.
부동소수점 응용 프로그램은 정수형 응용 프로그램과는 다르게 연산기의 발열이 심한 편이기 때문에, 부동소수점 연산 유닛을 중복 배치하여 접근을 분산시킴으로써 온도 상승을 지연시키는 기법을 제안하고자 한다. 또한 모의 실험을 통해 확인된 온도가 높은 유닛으로부터의 열 전달로 인해 인접한 유닛의 온도가 함께 상승하는 문제를 해결하기 위하여 열 전달 지연 공간을 배치하는 방법 또한 제안한다
특히 성능 저하에 민감한 부동소수점 응용 프로그램에서는 온도 저하를 위한 성능 감소 현상은 치명적이라고 할 수 있다. 본 논문에서는 마이크로프로세서의 추가적인 성능 저하 없이 부동소수점 가산기에서의 온도 상승을 최소화하기 위하여 부동소수점가산기를 두 개로 분산하여 연산을 이관하는 듀얼 부동소수점 가산기 구조(dual floating-point adder unit architecture)를 제안하고자 한다.
본 논문에서는 부동소수점 응용 프로그램 수행 시 마이크로프로세서의 성능 저하를 줄이면서 발열에 대한 안정성을 높이는 방법으로 듀얼 부동소수점 가산기 구조와 열 전달 지연 공간을 이용한 기능 유닛 배치 방법을 제안하였다. 기존에는 저온도 마이크로프로세서 설계를 위해 정수 레지스터의 열섬 현상을 해결하기 위한 연구가 대부분이었으나, 이러한 해결 방법은 부동소수점응용 프로그램을 수행하는 경우에서는 큰 효과를 볼 수 없었다.
본 논문에서는 부동소수점 응용 프로그램을 수행할 때의 발열 문제와 이로 인한 성능 저하 문제를 해결하기 위하여 듀얼 부동소수점 가산기 구조를 제안한다. 부동소수점 응용 프로그램은 정수형 응용 프로그램과는 다르게 연산기의 발열이 심한 편이기 때문에, 부동소수점 연산 유닛을 중복 배치하여 접근을 분산시킴으로써 온도 상승을 지연시키는 기법을 제안하고자 한다.
그러므로 온도가 낮은 유닛이라도 온도가 높은 유닛에 인접해 있으면, 활성화 빈도와는 관계 없이' 온도가 상승하면서 발열 안정성과 마이크로프로세서의 성능에 큰 영향을 줄 수 있다. 본 논문에서는 열 전달로 인한 유닛의 온도 상승 문제를 해결하기 위하여, 인접한 두 유닛 사이에 열 전달 지연 공간(Space for Heat Transfer Delay)을 마이크로프로세서 코어(core) 내부에 추가로 배치하는 정적인 온도 제어 방법 또한 제안하고자 한다.
결국은 부동소수점 가산기의 발열 문제로 인하여 마이크로프로세서의 안정성 및 성능 저하 문제가 발생할 수 있다. 본 논문에서는 이와 같은 문제를 해결하기 위하여 부동소수점 가산기(FPAdd)를 열섬 가능 인자로 선택하고, 유닛의 발열에 대한 안정성 향상과 동적 온도 관리로 인한 성능 저하를 최소화 하는 기술을 제안하고자 한다.
부동소수점 응용 프로그램은 정수형 응용 프로그램과는 다르게 연산기의 발열이 심한 편이기 때문에, 부동소수점 연산 유닛을 중복 배치하여 접근을 분산시킴으로써 온도 상승을 지연시키는 기법을 제안하고자 한다. 또한 모의 실험을 통해 확인된 온도가 높은 유닛으로부터의 열 전달로 인해 인접한 유닛의 온도가 함께 상승하는 문제를 해결하기 위하여 열 전달 지연 공간을 배치하는 방법 또한 제안한다
가설 설정
* 증가 면적과 증가 비율은 Ev6 코어 배치가 기준임.
만약 레지스터와 가산기 사이가 멀어지면 데이터 전송 경로는 더욱 복잡해지는 문제가 발생한다. 따라서 제안하는 구조에서 부동소수점 레지스터와 부동소수점 가산기는 상호 인접해야 한다.
도구를 사용하였다. 모의 실험을 위한 목표 프로세서는 0.13um 공정의 3GHz 슈퍼스칼라 Alpha 21264 프로세서로 가정하였고, 특성은 [9]에서와 동일하게 설정하였다. 모의 실험은 Wattch[13], HotSpot[14] 프로그램을 하나로 통합하여 수행하였다.
제안 방법
모의 실험은 Wattch[13], HotSpot[14] 프로그램을 하나로 통합하여 수행하였다. Wattch 실험 도구는 사이클 단위로 마이크로프로세서의 성능과 내부 유닛들의 전력 소비를 계산하고, HotSpote 각 유닛의 전력 데이터를 이용하여 마이크로프로세서의 온도 분포를 예측한다 유닛의 배치(floorplan)는 AlphaEV6(21264) 의 코어를 참조하여서 유닛의 영역과 순서를 먼저 설정한 후, hotfloorplan[6]을 이용하여 설계하였다.
즉, 동적 온도 관리의 개입 시간과 마이크로프로세서의 성능은 반비례한다. 동적 온도 관리 기법의 적용이 성능에 미치는 영향을 상세하게 분석하기 위하여, 모의 실험을 통해 프로그램의 수행 시간을 비교하였다. 그림 7은 긴급 단계 온도에 따른 부동소수점 벤치마크의 실행 시간을 보여준다.
13um 공정의 3GHz 슈퍼스칼라 Alpha 21264 프로세서로 가정하였고, 특성은 [9]에서와 동일하게 설정하였다. 모의 실험은 Wattch[13], HotSpot[14] 프로그램을 하나로 통합하여 수행하였다. Wattch 실험 도구는 사이클 단위로 마이크로프로세서의 성능과 내부 유닛들의 전력 소비를 계산하고, HotSpote 각 유닛의 전력 데이터를 이용하여 마이크로프로세서의 온도 분포를 예측한다 유닛의 배치(floorplan)는 AlphaEV6(21264) 의 코어를 참조하여서 유닛의 영역과 순서를 먼저 설정한 후, hotfloorplan[6]을 이용하여 설계하였다.
긴급 단계에서는 온도를 급격하게 낮춤으로써 칩의 온도가 최대 한계를 넘지 않도록 조절한다’ 이러한 2단계 정책은 고성능 프로세서에서 성능 손실을 적게 하면서 온도를 조절하는데 도움이 된다. 본 연구에서는 [4]와 같이 동적 온도제어의 구동 단계 온도를 긴급 단계 온도보다 2.0℃ 낮게 설정하고 실험을 수행하였다.
본 장에서는 모의 실험 도구를 이용하여 동적 온도제어 환경에서 듀얼 부동소수점 가산기 구조와 열 전달지연 공간을 배치하는 경우에 대해, 칩의 온도 변화를 살펴봄으로써 발열에 대한 안정성과 온도 상승으로 인한 성능 저하 정도를 평가한다.
따른다. 정밀한 모의 실험결과를 얻기 위하여 [4] 와 같이 모든 유닛이 60.0℃ 에서 시작하도록 온도를 설정하고, 3억 개의 명령어를 프로세서의 예열(warmup) 기간으로 설정한다. 예열 기간이 끝나면, HotSpot 이 출력하는 안정 상태 온도steady state temperature) 로 프로세서의 초기 온도를 설정한다.
제안된 부동소수점 응용 프로그램을 위한 저온도 마이크로프로세서 설계 기법의 효율성을 분석하기 위하여본 논문에서는 마이크로프로세서 구조에 따른 성능, 전력 소비 및 온도 변화를'사이클 단위로 측정할 수 모의실험 도구를 사용하였다. 모의 실험을 위한 목표 프로세서는 0.
성능/효과
또한 열 전달 지연 공간을 레지스터 주변에 추가로 배치하여 인접한 기능 유닛의 열 전달로 인해 발생하는 온도 상승 문제를 완화하였다. 그 결과 마이크로프로세서의 최고 온도는 더욱 낮아졌으며, 이를 통해 동적 온도 제어의 개입으로 인한 성능 저하를 크게 완화하였다. 따라서 제안하는 기법들을 적용하면 부동소수점응용 프로그램을 주로 수행하는 고성능 DSP나 멀티미디어 시스템에서 동작하는 마이크로프로세서의 안정성과 성능 향상에 도움을 줄 수 있을 것으로 기대된다.
특이한 사항으로 제안 기법을 적용한 결과 목표로 하였던 부동소수점 레지스터뿐만 아니라 정수 레지스터 역시 온도가 낮아진 것을 볼 수 있다. 대신 보조 부동소수점 가산기가 추가되면서 데이터 읽기 접근 비율이 증가하여, 데이터 캐시(Dcache)와 적재/저장 큐(LdStQ) 기능 유닛의 온도는 증가한다. 하지만 전체 기능 유닛의 최고 온도보뎌는 낮기 때문에 발열 현상으로 인한 칩의 안정성에는 큰 영향을 미치지 않는다.
이는 곧 부동소수점 연산량이 많은 경우에는 부동소수점 연산기에 대한 접근 비율이 높아서 해당 유닛에 대한 냉각 효과가 저조하다는 것을 의미한다. 따라서 정수형 응용 프로그램을 실행할 때에는 정수 레지스터의 온도만 제어하여도 충분한 냉각 효과를 볼 수 있지만, 부동소수점 응용 프로그램을 실행할 때에는 부동소수점 레지스터와 부동소수점 가산기 역시 집중적인 온도 제어가 필요하다는 사실을 확인할 수 있다.
3℃ 순서로 온도가 높은 것을 볼 수 있다. 또한 swim과 mgrid에서는 부동소수점 연산 유닛인 FPReg(82.6℃와 FPAdd(92.6℃가 정수 레지스터 (IntReg)보다 온도가 더 높은 것을 확인할 수 있다. 이는 곧 부동소수점 연산량이 많은 경우에는 부동소수점 연산기에 대한 접근 비율이 높아서 해당 유닛에 대한 냉각 효과가 저조하다는 것을 의미한다.
본 논문에서는 듀얼 부동소수점 가산기 구조를 이용하여 부동소수점 응용 프로그램을 수행하는 경우 마이크로프로세서의 열섬 현상을 성능 저하 없이 완화하였으며, 동적 온도 관리에 의한 성능 감소를 최소화하였다. 또한 열 전달 지연 공간을 레지스터 주변에 추가로 배치하여 인접한 기능 유닛의 열 전달로 인해 발생하는 온도 상승 문제를 완화하였다. 그 결과 마이크로프로세서의 최고 온도는 더욱 낮아졌으며, 이를 통해 동적 온도 제어의 개입으로 인한 성능 저하를 크게 완화하였다.
모의 실험결과를 보면 극히 일부 부동소수점 벤치마크를 제외하고는 듀얼 부동소수점 가산기 구조(Ev6.fpadd2)와 열 전달 지연 공간(Ev6.fpadd2s)를 함께 적용하면 부동소수점 응용 프로그램에서 마이크로프로세서 내부의 최고 온도가 가장 효과적으로 낮아진다는 것을 확인할 수 있다. 이를 통해 본 논문에서 제안한 동적 온도제어 방법과 정적 온도 제어 방법을 함께 사용한다면, 칩의 발열 안정성에 영향을 미치는 최고 온도를 낮추는데 매우 효과적이라는 것을 확인할 수 있다.
본 논문에서 제안한 방법은 비록 작은 수치이지만 칩의 면적이 0.77%에서 2.40%까지 증가하는 단점이 있다. 따라서 동적 온도 관리에 따른 성능 저하가 다소 증가하더라도 칩의 면적이 증가하지 않는 방법에 대한 연구가 추후 필요하다.
기존에는 저온도 마이크로프로세서 설계를 위해 정수 레지스터의 열섬 현상을 해결하기 위한 연구가 대부분이었으나, 이러한 해결 방법은 부동소수점응용 프로그램을 수행하는 경우에서는 큰 효과를 볼 수 없었다. 본 논문에서는 듀얼 부동소수점 가산기 구조를 이용하여 부동소수점 응용 프로그램을 수행하는 경우 마이크로프로세서의 열섬 현상을 성능 저하 없이 완화하였으며, 동적 온도 관리에 의한 성능 감소를 최소화하였다. 또한 열 전달 지연 공간을 레지스터 주변에 추가로 배치하여 인접한 기능 유닛의 열 전달로 인해 발생하는 온도 상승 문제를 완화하였다.
6과 같다. 실험 결과, 본 논문에서 제안하는 기법인 Ev6.fpadd2와 Ev6.fpadd2s 가 기존의 Ev6 보다 유닛의 최고 온도가 하강한 것을 확인할 수 있다. 듀얼 부동소수점 가산기를 적용하는 경우 대부분의 벤치마크에서 유닛의 최고 온도가 하강하지만, 그림 6의 (a)에서 mgrid(Ev6.
fpadd2s)를 함께 적용하면 부동소수점 응용 프로그램에서 마이크로프로세서 내부의 최고 온도가 가장 효과적으로 낮아진다는 것을 확인할 수 있다. 이를 통해 본 논문에서 제안한 동적 온도제어 방법과 정적 온도 제어 방법을 함께 사용한다면, 칩의 발열 안정성에 영향을 미치는 최고 온도를 낮추는데 매우 효과적이라는 것을 확인할 수 있다.
마지막으로 부동소수점 가산기 선택기 (FPAdd selector)는 실제 부동소수점 연산을 수행한 부동소수점 가산기의 출력 값을 MUX를 통하여 부동소수점 레지스터에 저장한다. 제안하는 구조에서는 활성화할 유닛을 선택하는 과정에서 발생하는 지연 현상이 나타나지 않으므로 성능 저하 현상이 발생하지 않는다는 장점이 있다.
열 전달 지연 공간을 추가로 배치한 구조인 그림 5의 (c)를 살펴보면, 부동소수점 레지스터(FPReg)와 정수 레지스터(IntReg)에 대해 서로 인접한 기능 유닛 사이에 열 전달 지연 공간(SHTD)을 배치한 결과, 모든 레지스터의 온도가 낮아진 것을 확인할 수 있다. 특이한 사항으로 제안 기법을 적용한 결과 목표로 하였던 부동소수점 레지스터뿐만 아니라 정수 레지스터 역시 온도가 낮아진 것을 볼 수 있다. 대신 보조 부동소수점 가산기가 추가되면서 데이터 읽기 접근 비율이 증가하여, 데이터 캐시(Dcache)와 적재/저장 큐(LdStQ) 기능 유닛의 온도는 증가한다.
fpadd2s에 대한 성능 결과를 정리하여 나타낸다. 표 3 에서 긴급 단계 온도가 85℃일 때, Ev6.fpadd2 배치를 적용하면 성능이 최대 1.62배(평균 1.25배) 상승하고, Ev6.fpadd2s 배치를 적용하면 성능이 최대 L90배(평균 1.41 배) 향상된 것을 볼 수 있다. 다만, Ev6.
후속연구
40%까지 증가하는 단점이 있다. 따라서 동적 온도 관리에 따른 성능 저하가 다소 증가하더라도 칩의 면적이 증가하지 않는 방법에 대한 연구가 추후 필요하다. 또한 열 전달 지연 공간의 배치는 칩의 면적을 증가시키는 커다란 원인이기에 가장 효율적인 공간 배치 방법에 대한 추가 연구가 필요하다.
그 결과 마이크로프로세서의 최고 온도는 더욱 낮아졌으며, 이를 통해 동적 온도 제어의 개입으로 인한 성능 저하를 크게 완화하였다. 따라서 제안하는 기법들을 적용하면 부동소수점응용 프로그램을 주로 수행하는 고성능 DSP나 멀티미디어 시스템에서 동작하는 마이크로프로세서의 안정성과 성능 향상에 도움을 줄 수 있을 것으로 기대된다.
따라서 동적 온도 관리에 따른 성능 저하가 다소 증가하더라도 칩의 면적이 증가하지 않는 방법에 대한 연구가 추후 필요하다. 또한 열 전달 지연 공간의 배치는 칩의 면적을 증가시키는 커다란 원인이기에 가장 효율적인 공간 배치 방법에 대한 추가 연구가 필요하다.
참고문헌 (14)
R. Mahajan, "Thermal management of CPUs: A perspective on trends, needs and opportunities," in Proceeding of the 8th International Workshop on THERMal INvestigations of ICs and Systems, 2002.
V. Narayanan and Y. Xie, "Reliability concerns in embedded system designs," COMPUTER, vol.39, pp.118-120, 2006.
D. Brooks and M. Martonosi, "Dynamic thermal management for high-performance microprocessors," in Proceedings of the 27th International Symposium on Computer Architecture, pp.83-94, 2000.
J. S. Choi, J. H. Kong, E. Y. Chung and S. W. Chung, "A Dual Integer Register File Structure for Temperature-Aware Microprocessor," Journal of KIISE: Compter System and Theory, vol.35, no.12, pp.540-551, 2008. (in Korean)
I. Yeo and E. J. Kim, "Hybrid dynamic thermal management based on statistical characteristics of multimedia applications," in Proceeding of the thirteenth intermational symposium on Low power electronics and design (ISLPED), pp.321-326, 2008.
K. Sankaranarayanan, S. Velusamy, M. Stan, and K. Skadron," A case for thermal-aware floorplanning at the microarchitectural level," Journal of Instruction-Level Parallelism, vol.7, pp.1-16, 2005.
S. Chung and K. Skadron, "Using On-Chip Event Counters For High-Resolution, Real-Time Temperature Measurement," Thermal and Thermomechanical Phenomena in Electronics Systems, pp.114-120, 2006.
H. Seongmoo, K. Barr, and K. Asanovic, "Reducing power density through activity migration," in Proceeding of the 2003 International Symposium on Low Power Electronics and Design, pp.217-222, 2003.
K. Skadron, M. Stan, K. Sandaranarayanan, W. Huang, S. Velusamy, and D. Tarjan, "Temperatureaware microarchitecture: Modeling and implementation," ACM Transactions on Architecture and Code Optimization (TACO), vol.1, pp.94-125, 2004.
K. Patel, W. Lee, and M. Pedram, "Active bank switching for temperature control of the register file in a microprocessor," in Proceedings of the 17th great lakes symposium on Great lakes symposium on VLSI, 2007, pp.231-234.
SIA, "Technology Roadmap for Semiconductors," 2005.
D. Brooks, V. Tiwari, and M. Martonosi, "Wattch: a framework for architectural-level power analysis and optimizations," in Computer Architecture, 2000. Proceedings of the 27th International Symposium on 2000, pp.83-94.
Hotspot Tool Set v3.1, http://lava.cs.virginia.edu/HotSpot/
※ AI-Helper는 부적절한 답변을 할 수 있습니다.