KR20160042618A - 이동 단말기 및 그 제어방법 - Google Patents

이동 단말기 및 그 제어방법 Download PDF

Info

Publication number
KR20160042618A
KR20160042618A KR1020140136767A KR20140136767A KR20160042618A KR 20160042618 A KR20160042618 A KR 20160042618A KR 1020140136767 A KR1020140136767 A KR 1020140136767A KR 20140136767 A KR20140136767 A KR 20140136767A KR 20160042618 A KR20160042618 A KR 20160042618A
Authority
KR
South Korea
Prior art keywords
frequency
core
load
cores
determining
Prior art date
Application number
KR1020140136767A
Other languages
English (en)
Inventor
최재규
나영숙
김태윤
이아녕
김정훈
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020140136767A priority Critical patent/KR20160042618A/ko
Publication of KR20160042618A publication Critical patent/KR20160042618A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Power Sources (AREA)

Abstract

본 발명은 멀티 코어 프로세서를 구비하는 이동 단말기의 제어방법에 관한 것으로, 상기 멀티 코어 프로세서의 각 코어에 할당된 로드(load)를 계산하는 단계; 상기 계산된 코어별 로드 정보를 기반으로 각 코어에 필요한 클락 주파수를 계산하는 단계; 상기 계산된 코어별 클락 주파수 정보를 이용하여 각 코어간 로드 불균형 정도를 계산하는 단계; 및 상기 계산된 각 코어간 로드 불균형 정도를 기반으로 상기 멀티 코어 프로세서의 타겟 주파수를 결정하는 단계를 포함한다.

Description

이동 단말기 및 그 제어방법{MOBILE TERMINAL AND METHOD FOR CONTROLLING THE SAME}
본 발명은 멀티 코어 프로세서를 구비하는 이동 단말기 및 그 제어방법에 관한 것으로, 더욱 상세하게는 멀티 코어 프로세서의 클락 주파수를 조절하여 소모 전류 및 발열을 최소화할 수 있는 이동 단말기 및 그 제어방법에 관한 것이다.
단말기는 이동 가능 여부에 따라 이동 단말기(mobile/portable terminal) 및 고정 단말기(stationary terminal)로 나뉠 수 있다. 다시 이동 단말기는 사용자의 직접 휴대 가능 여부에 따라 휴대(형) 단말기(handheld terminal) 및 거치형 단말기(vehicle mounted terminal)로 나뉠 수 있다.
이동 단말기의 기능은 다양화 되고 있다. 예를 들면, 데이터와 음성통신, 카메라를 통한 사진촬영 및 비디오 촬영, 음성녹음, 스피커 시스템을 통한 음악파일 재생 그리고 디스플레이부에 이미지나 비디오를 출력하는 기능이 있다. 일부 단말기는 전자게임 플레이 기능이 추가되거나, 멀티미디어 플레이어 기능을 수행한다. 특히 최근의 이동 단말기는 방송과 비디오나 텔레비전 프로그램과 같은 시각적 컨텐츠를 제공하는 멀티캐스트 신호를 수신할 수 있다.
이와 같은 단말기(terminal)는 그 기능이 다양화됨에 따라 예를 들어, 사진이나 동영상의 촬영, 음악이나 동영상 파일의 재생, 게임, 방송의 수신 등의 복합적인 기능들을 갖춘 멀티미디어 기기(Multimedia player) 형태로 구현되고 있다. 이러한 멀티미디어 기기의 형태로 구현된 이동 단말기에는, 복잡한 기능을 구현하기 위해 하드웨어나 소프트웨어적 측면에서 새로운 시도들이 다양하게 적용되고 있다.
한편, 최근의 이동 단말기들은 고성능을 요구하는 다양한 애플리케이션들을 지원하기 위해 멀티 코어 프로세서(multi-core processor)를 탑재하고 있다. 여기서, 멀티 코어 프로세서란 두 개 이상의 프로세싱 코어(processing core)를 탑재하여 만든 프로세서를 지칭한다.
단일 코어 프로세서에서의 성능 개선은 동작 클락 속도를 빠르게 하는 방식으로 이루어졌으나 속도가 빨라지면 전력 소모가 커지고 발열이 많아 동작 클락으로 성능을 개선하는 데에는 한계가 있다.
단일 코어 프로세서의 대안으로 제시된 멀티 코어 프로세서는 여러 개의 프로세싱 코어가 탑재되기 때문에 개별 프로세싱 코어가 보다 낮은 클락 주파수에서 작동할 수 있고, 소모되는 전력을 여러 프로세싱 코어에 분산시키는 장점이 있다. 즉, 멀티 코어 프로세서는 중앙 처리 장치(CPU)가 2개 이상 들어간 것과 마찬가지이기 때문에 단일 코어 프로세서에 비해서 빠른 작업을 할 수 있고, 특히 동영상의 인코딩, 포토샵 작업, 높은 사양의 게임과 같은 작업에 적합하다.
그런데, 이러한 멀티 코어 프로세서의 경우에도, 이동 단말기의 동작 상태 및 실행 애플리케이션의 종류 등에 따라 개별 프로세싱 코어에 할당되는 부하(load)의 양이 달라지는 현상(즉, 각 코어별 부하 불균형 현상)이 발생한다. 이러한 경우, 성능 유지를 위해 가장 많은 부하를 갖는 프로세싱 코어를 동작시키기 위해 필요한 주파수가 해당 멀티 코어 프로세서의 클락 주파수(즉, 동작 주파수)가 된다. 하지만, 상기 클락 주파수로 부하가 상대적으로 적은 다른 프로세싱 코어들을 동작하는 경우, 불필요한 전력 손실이 발생하는 문제점이 있다. 따라서, 개별 프로세싱 코어의 부하 불균형 정도를 고려하여 멀티 코어 프로세서의 성능 및 전력 효율을 모두 확보할 수 있는 방안이 절실히 요구된다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 또 다른 목적은 멀티 코어 시스템에서 각 코어간 부하 불균형 정도를 기반으로 클락 주파수를 조절하여 발열을 개선할 수 있는 이동 단말기 및 그 제어방법을 제공하는 것을 그 목적으로 한다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 멀티 코어 프로세서의 각 코어에 할당된 로드(load)를 계산하는 단계; 상기 계산된 코어별 로드 정보를 기반으로 각 코어에 필요한 클락 주파수를 계산하는 단계; 상기 계산된 코어별 클락 주파수 정보를 이용하여 각 코어간 로드 불균형 정도를 계산하는 단계; 및 상기 계산된 각 코어간 로드 불균형 정도를 기반으로 상기 멀티 코어 프로세서의 타겟 주파수를 결정하는 단계를 포함하는 이동 단말기의 제어방법을 제공한다.
또한, 본 발명의 다른 측면에 따르면, 멀티 코어 프로세서의 각 코어에 할당된 로드(load)를 계산하는 과정; 상기 계산된 코어별 로드 정보를 기반으로 각 코어에 필요한 클락 주파수를 계산하는 과정; 상기 계산된 코어별 클락 주파수 정보를 이용하여 각 코어간 로드 불균형 정도를 계산하는 과정; 및 상기 계산된 각 코어간 로드 불균형 정도를 기반으로 상기 멀티 코어 프로세서의 타겟 주파수를 결정하는 과정을 프로세서에서 처리하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 제공한다.
본 발명에 따른 이동 단말기 및 그 제어 방법의 효과에 대해 설명하면 다음과 같다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 각 코어간 부하 불균형 정도를 고려하여 클락 주파수를 조절함으로써, 멀티 코어 프로세서의 성능을 최대한 유지하면서 소모 전류를 최소화하여 내부 발열을 개선할 수 있는 장점이 있다.
한편 그 외의 다양한 효과는 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 것이다.
도 1은 본 발명과 관련된 이동 단말기를 설명하기 위한 블록도;
도 2는 본 발명과 관련된 이동 단말기의 멀티 코어 시스템을 개략적으로 설명하기 위한 블록도;
도 3은 본 발명과 관련된 멀티 코어 프로세서의 전력 자원 관리 장치에 관한 블록도;
도 4는 멀티 코어 프로세서에서 각 코어에 할당된 부하량에 따라 필요한 클락 주파수를 나타내는 도면;
도 5는 멀티 코어 프로세서에서 각 코어의 동작 상태를 모니터링한 결과를 나타내는 도면;
도 6은 멀티 코어 프로세서에서 클락 주파수의 증가에 따른 성능 및 소모 전류의 변화를 시뮬레이션한 그래프;
도 7은 본 발명과 관련된 멀티 코어 프로세서에서의 전력 자원 관리 방법을 설명하기 위한 절차 흐름도.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 명세서에서 설명되는 이동 단말기에는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등이 포함될 수 있다.
그러나, 본 명세서에 기재된 실시 예에 따른 구성은 이동 단말기에만 적용 가능한 경우를 제외하면, 디지털 TV, 데스크탑 컴퓨터, 디지털 사이니지 등과 같은 고정 단말기에도 적용될 수도 있음을 본 기술분야의 당업자라면 쉽게 알 수 있을 것이다.
도 1은 본 발명과 관련된 이동 단말기를 설명하기 위한 블록도이다.
도 1을 참조하면, 이동 단말기(100)는 무선 통신부(110), 입력부(120), 감지부(140), 출력부(150), 인터페이스부(160), 메모리(170), 제어부(180) 및 전원 공급부(190) 등을 포함할 수 있다. 도 1에 도시된 구성요소들은 이동 단말기를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서상에서 설명되는 이동 단말기는 위에서 열거된 구성요소들보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
보다 구체적으로, 상기 구성요소들 중 무선 통신부(110)는, 이동 단말기(100)와 무선 통신 시스템 사이, 이동 단말기(100)와 다른 이동 단말기(100) 사이, 또는 이동 단말기(100)와 외부서버 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 상기 무선 통신부(110)는, 이동 단말기(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다.
이러한 무선 통신부(110)는, 방송 수신 모듈(111), 이동통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치정보 모듈(115) 중 적어도 하나를 포함할 수 있다.
입력부(120)는, 영상 신호 입력을 위한 카메라(121) 또는 영상 입력부, 오디오 신호 입력을 위한 마이크로폰(microphone, 122), 또는 오디오 입력부, 사용자로부터 정보를 입력받기 위한 사용자 입력부(123, 예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
센싱부(140)는 이동 단말기 내 정보, 이동 단말기를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 센싱부(140)는 근접센서(141, proximity sensor), 조도 센서(142, illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라(121 참조)), 마이크로폰(microphone, 122 참조), 배터리 게이지(battery gauge), 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 등), 화학 센서(예를 들어, 전자 코, 헬스케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 명세서에 개시된 이동 단말기는, 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부(151), 음향 출력부(152), 햅팁 모듈(153), 광 출력부(154) 중 적어도 하나를 포함할 수 있다. 디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 이동 단말기(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 이동 단말기(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
인터페이스부(160)는 이동 단말기(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부(160)는, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 이동 단말기(100)에서는, 상기 인터페이스부(160)에 외부 기기가 연결되는 것에 대응하여, 연결된 외부 기기와 관련된 적절할 제어를 수행할 수 있다.
또한, 메모리(170)는 이동 단말기(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(170)는 이동 단말기(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 이동 단말기(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는, 이동 단말기(100)의 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 이동 단말기(100)상에 존재할 수 있다. 한편, 응용 프로그램은, 메모리(170)에 저장되고, 이동 단말기(100) 상에 설치되어, 제어부(180)에 의하여 상기 이동 단말기의 동작(또는 기능)을 수행하도록 구동될 수 있다.
제어부(180)는 상기 응용 프로그램과 관련된 동작 외에도, 통상적으로 이동 단말기(100)의 전반적인 동작을 제어한다. 제어부(180)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
또한, 제어부(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, 도 1과 함께 살펴본 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 제어부(180)는 상기 응용 프로그램의 구동을 위하여, 이동 단말기(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.
전원공급부(190)는 제어부(180)의 제어 하에서, 외부의 전원, 내부의 전원을 인가받아 이동 단말기(100)에 포함된 각 구성요소들에 전원을 공급한다. 이러한 전원공급부(190)는 배터리를 포함하며, 상기 배터리는 내장형 배터리 또는 교체가능한 형태의 배터리가 될 수 있다.
상기 각 구성요소들 중 적어도 일부는, 이하에서 설명되는 다양한 실시 예들에 따른 이동 단말기의 동작, 제어, 또는 제어방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 상기 이동 단말기의 동작, 제어, 또는 제어방법은 상기 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 이동 단말기 상에서 구현될 수 있다.
이상에서는 도 1을 참조하여, 본 발명에 따른 이동 단말기(100)의 구성 요소에 대하여 살펴 보았다. 이하에서는, 본 발명의 바람직한 실시 예에 따라, 멀티 코어 시스템에서 개별 프로세싱 코어간 부하 불균형 정도를 기반으로 클락 주파수를 조절하여 발열을 개선할 수 있는 이동 단말기 및 그 제어방법에 대해 상세히 설명하도록 한다.
도 2는 본 발명과 관련된 이동 단말기의 멀티 코어 시스템을 개략적으로 설명하기 위한 블록도이다.
도 2를 참조하면, 본 발명과 관련된 이동 단말기에 구비되는 멀티 코어 시스템(200)은, 크게 멀티 코어 프로세서(210)와 메모리(170) 및 그외 주변 장치들(110, 151)로 구성된다.
멀티 코어 프로세서(210)는 버스(270)를 통해 메모리(170)에 연결된다. 멀티 코어 프로세서(210)는 N개의 프로세싱 코어들(가령, N개의 CPU)을 구비한다. 즉, 멀티 코어 프로세서(210)는 제1 코어(211) 내지 제N 코어(215)를 포함한다. 알려진 바와 같이, N개의 프로세싱 코어들 각각은 전용 애플리케이션 또는 프로그램을 지원하기 위해 이용 가능하다. 또한, 선택적으로, 상기 이용 가능한 N개의 코어들 중 둘 이상의 코어들에 걸친 처리를 위해 하나 또는 그보다 많은 애플리케이션들 또는 프로그램들이 분산될 수 있다.
N개의 프로세싱 코어들은 단일 집적 회로 다이 상에 집적될 수 있거나, 혹은 다중 회로 패키지로 개별 다이 상에 집적 또는 연결될 수 있다. 또한, 하나 이상의 공유 캐시들을 통해 N개의 프로세싱 코어들을 연결할 수 있으며 그들은 버스, 링, 그물망(mesh) 및 크로스바 토폴러지들과 같은 네트워크 토폴러지들을 통해 메시지 또는 명령 전달을 구현할 수 있다.
메모리(170)는 시동 로직(220), 관리 로직(230), 인터페이스 로직(240), 애플리케이션 저장소(250) 및 파일 시스템(260) 등을 포함한다. 이러한 메모리(170)는 플래시 메모리나 고체 상태 메모리 디바이스와 같은 비휘발성 데이터 저장 디바이스이다.
시동 로직(220)은 N개의 프로세싱 코어들 중 하나 이상의 코어의 성능을 관리 또는 제어하기 위한 선택 프로그램을 식별하여 로딩하고 실행하기 위한 하나 이상의 실행 가능 명령들을 포함한다. 선택 프로그램은 파일 시스템(260)의 프로그램 저장소(265)에서 발견될 수 있으며 성능 스케일링 알고리즘(267)과 한 세트의 파라미터들(269)의 특정 조합으로 정의된다.
관리 로직(230)은 N개의 프로세싱 코어들 중 하나 이상의 코어에 대한 동작 성능 스케일링 프로그램을 종료할 뿐만 아니라, 이용 가능한 코어들 중 하나 이상의 코어의 성능을 관리 또는 제어하기 위한 대체 프로그램을 식별하여 로딩하고 실행하기 위한 하나 이상의 실행 가능 명령들을 포함한다. 대체 프로그램은 파일 시스템(260)의 프로그램 저장소(265)에서 발견될 수 있으며 성능 스케일링 알고리즘(267)과 한 세트의 파라미터들(269)의 특정 조합으로 정의된다.
인터페이스 로직(240)은 파일 시스템(260)에 저장된 정보를 관측, 구성하거
나 혹은 업데이트하도록 외부 입력들을 제시, 관리하고 이들과 상호 작용하기 위한 하나 이상의 실행 가능 명령들을 포함한다. 일 실시예에서, 인터페이스 로직(240)은 USB 포트를 통해 수신되는 제조업체 입력들과 함께 동작할 수 있다. 이러한 입력들은 프로그램 저장소(265)로부터 삭제되거나 프로그램 저장소(265)에 추가될 하나 이상의 프로그램들을 포함할 수 있다.
인터페이스 로직(240)은 제조업체가 이동 단말기(100)에 대해 정의된 동작 조건들 하에서 최종 사용자의 경험을 제어 가능하게 구성 및 조정하게 할 수 있다. 메모리(170)가 플래시 메모리인 경우, 시동 로직(220), 관리 로직(230), 인터페이스 로직(240), 애플리케이션 저장소(250) 내의 애플리케이션 프로그램들 또는 내장된 파일 시스템(260) 내의 정보 중 하나 이상이 편집, 대체, 혹은 수정될 수 있다.
파일 시스템(260)은 계층적으로 배열된 DVFS(dynamic voltage and frequency scaling) 저장소(261)를 포함한다. 이와 관련하여, 파일 시스템(260)은 이동 단말기(100)에 의해 사용되는 성능 스케일링 알고리즘들(267) 및 다양한 파라미터들(269)의 구성 및 관리를 위한 정보의 저장을 위해 자신의 전체 파일 시스템 용량의 예비 섹션을 포함할 수 있다. 여기서, DVFS는 시스템 부하에 따라 CPU의 전압과 주파수를 변경하여 전력 소모를 관리하는 기법을 일컫는다.
DVFS 저장소(261)는 프로그램 저장소(265)를 포함하는 코어 저장소(263)를 포함하며, 프로그램 저장소(265)는 하나 이상의 DVFS 프로그램들을 포함한다. 각각의 프로그램은 각각의 성능 스케일링 알고리즘(267) 그리고 특정 알고리즘과 연관된 한 세트의 파라미터들(269)의 조합으로서 정의된다. 알고리즘은 CPU 유휴 비율의 주기적 샘플링에 의해 정의되며 낮은 임계치 및 높은 임계치에 따라 동작한다. 증가시킬 샘플들 임계치 비교기가 2개의 연이은 샘플들에 대해 성능이 증가되어야 한다고 지시한다면, DVFS 알고리즘은 미리 결정된 클락 레벨 조정치에 따라 성능을 증가시킨다. 반대로, 감소시킬 샘플들 임계치 비교기가 1개의 연이은 샘플에 대해 성능이 감소되어야 한다고 지시한다면, DVFS 알고리즘은 미리 결정된 클락 레벨(즉, 주파수) 조정치에 따라 성능을 감소시킨다. 클락 주파수의 변경들과 함께 프로세서 또는 코어 동작 전압이 변경될 수 있다.
도 3은 본 발명과 관련된 멀티 코어 프로세서의 전력 자원 관리 장치에 관한 블록도이다.
도 3을 참조하면, 본 발명에 따른 전력 자원 관리 장치(power resource management device, 300)는 웨이크업 감지부(Wake-up Monitor, 310), 로드 분석부(Load Analyzer, 320) 및 타겟 주파수 결정부(Target Frequency balancer, 330)를 포함한다. 또한, 상기 타겟 주파수 결정부(330)는 룩업 테이블(lookup table, 340)을 포함한다.
전력 자원 관리 장치(300)는 각 코어(CPU)간 부하 불균형 정도를 기반으로 멀티 코어 프로세서(210)의 클락 주파수(즉, 동작 주파수)를 적응적으로 조절하여 소모 전류 및 발열을 최소화하는 기능을 수행한다.
가령, 도 4에 도시된 바와 같이, 종래 멀티(쿼드) 코어 프로세서의 경우, 이동 단말기의 동작 상태 및 실행 애플리케이션의 종류 등에 따라 개별 CPU(C0, C1, C2, C3)에 할당되는 부하의 양이 달라지는 부하 불균형 현상이 발생한다. 이때, 가장 많은 부하를 차지하는 제1 CPU(C0)를 동작하기 위해 필요한 클락 주파수(RF0)가 전체 쿼드 코어 프로세서의 동작 주파수가 된다.
하지만, 제2 CPU(C1)는 제1 CPU(C0)보다 상대적으로 적은 부하를 구비하고 있어 RF0 보다 작은 RF1의 주파수만으로 성능 유지가 가능하고, 제3 및 제4 CPU(C2, C3) 역시 RF0 보다 작은 RF2/RF3의 주파수만으로 성능 유지가 가능하다. 이에 따라, 제1 CPU(C0)의 성능 유지를 위해, 제2 내지 제4 CPU(C1, C2, C3)에서는 동작 주파수(RF0)와 필요 주파수(RF1, RF2, RF3) 사이의 차이만큼 전력 손실(power leackage)이 발생한다. 아울러, 개별 CPU의 부하 불균형 정도가 심해질수록 전체 쿼드 코어 프로세서의 전력 손실은 더욱 증가하게 된다. 이러한 문제를 해결하기 위해, 본 발명에 따른 전력 자원 관리 장치(300)는 개별 CPU의 부하 불균형 정도를 고려하여 멀티 코어 프로세서의 성능을 최대한 유지하면서 전력 효율을 향상시킬 수 있는 타겟 주파수(RFT)를 결정하게 된다.
이하에서는, 웨이크업 감지부(310), 로드 분석부(320), 룩업 테이블(340) 및 타겟 주파수 결정부(330)를 기반으로 상기 타겟 주파수를 결정하는 방법에 대해 상세히 설명하도록 한다.
웨이크업 감지부(310)는 각 코어(CPU)의 동작 상태를 실시간으로 모니터링하는 기능을 수행한다. 가령, 도 5에 도시된 바와 같이, 웨이크업 감지부(310)는 제1 내지 제4 CPU(C0, C1, C2, C3)의 동작 상태가 'P state(즉, 활동 상태)'인지 'C state(유휴 상태)'인지 여부를 감지한다. 그리고, 웨이크업 감지부(310)는 개별 CPU의 동작 상태를 모니터링한 결과를 로드 분석부(320)로 제공한다.
로드 분석부(320)는 웨이크업 감지부(310)로부터 제공받은 모니터링 결과값을 기반으로 각 코어(CPU)의 동작 상태에 관한 정보를 획득한다. 하나 이상의 코어의 동작 상태가 'P state'인 경우, 로드 분석부(320)는 각 코어에 할당된 부하(load)를 계산한다. 그리고, 로드 분석부(320)는 코어별로 계산된 부하 정보를 기반으로 각 코어에 필요한 주파수(Required Frequency, RF)를 계산한다. 이때, 로드 분석부(320)는 공지된 알고리즘을 통해 각 코어의 부하 및 필요 주파수(RF) 값을 계산할 수 있다.
또한, 로드 분석부(320)는 각 코어(CPU)에 필요한 클락 주파수의 불균형 정도와, 일정 기간 동안 각 코어에 할당된 부하의 변화 이력(history)과, 각 코어의 온/오프 상태 등을 반영하여 각 코어(CPU) 간 부하 불균형 정도를 수치화한다. 일 예로, 상기 각 코어간 부하 불균형 정도는 '델타 로드(delta load)' 또는 '평균 델타(average delta)'라 값으로 수치화될 수 있다. 상기 '델타 로드' 또는 '평균 델타'라는 값은 아래 수학식 1을 통해 계산될 수 있다.
Figure pat00001
로드 분석부(320)는 각 코어(CPU)에 필요한 클락 주파수 정보와 각 코어(CPU)의 부하 불균형 정도에 관한 정보를 타겟 주파수 결정부(330)로 제공한다.
타겟 주파수 결정부(330)는 상기 로드 분석부(320)로부터 수신한 정보와 룩업 테이블(340)에 저장된 정보를 참조하여 멀티 코어 프로세서의 타겟 주파수를 결정한다.
룩업 테이블(340)은, 예를 들어 아래 표 1과 같이, 주파수 도메인에 관한 정보와, 주파수 도메인의 각 구간별 부하 불균형 정도에 관한 임계치 정보와, 각 코어간 부하 불균형 정도에 따른 타겟 주파수 결정 방식에 관한 정보를 정의한다. 이때, 상기 룩업 테이블(340)에 정의된 정보들은 고정된 값으로, 도 6에 도시된 시뮬레이션 결과값들을 기초로 미리 산출되어 저장될 수 있다.
주파수 도메인
(Frequency Domain)
부하 불균형 정도
(Delta load= average delta)
목표 주파수
(Target frequency)
High frequency Delta≥600 고주파수 구간 내의 최소 주파수
Delta<600 코어들의 필요 주파수들(RF) 중 최대 주파수
Middle frequency
Delta≥400 중간 주파수 구간 내의 최소 주파수
Delta<400 코어들의 필요 주파수들(RF) 중 최대 주파수
Low frequency Delta≥28 저주파수 구간 내의 최소 주파수
Delta<28 코어들의 필요 주파수들(RF) 중 최대 주파수
또한, 상기 룩업 테이블(340)은, 예를 들어 아래 표 2와 같이, 전압 도메인에 관한 정보와, 전압 도메인의 각 구간별 부하 불균형 정도에 관한 임계치 정보와, 각 코어간 부하 불균형 정도에 따른 타겟 주파수 결정 방식에 관한 정보를 정의한다. 마찬가지로, 상기 룩업 테이블(340)에 정의된 정보들은 고정된 값으로, 도 6에 도시된 시뮬레이션 결과값들을 기초로 미리 산출되어 저장될 수 있다.
전압 도메인
(Voltage Domain)
부하 불균형 정도
(Delta load= average delta)
목표 주파수
(Target frequency)
High
voltage
Delta≥600 고전압 구간 내의 최소 주파수
Delta<600 코어들의 필요 주파수들(RF) 중 최대 주파수
Middle voltage Delta≥400 중간 전압 구간 내의 최소 주파수
Delta<400 코어들의 필요 주파수들(RF) 중 최대 주파수
Low
voltage
Delta≥28 저전압 구간 내의 최소 주파수
Delta<28 코어들의 필요 주파수들(RF) 중 최대 주파수
도 6은 멀티 코어 프로세서에서 클락 주파수(또는 전압)의 증가에 따른 성능 및 소모 전류의 변화를 시뮬레이션한 그래프를 도시한다. 본 시뮬레이션에 사용되는 멀티 코어 프로세서의 종류가 동일한 경우에는, 항상 도 6에 도시된 그래프와 동일한 그래프를 획득할 수 있다.
도 6을 참조하면, 상기 그래프에서는, 쿼드 코어 프로세서에서 클락 주파수(f)의 증가에 따라 해당 프로세서의 성능이 향상되는(즉, 수행시간이 짧아지는) 성능 곡선(610)이 도시된다. 상기 성능 곡선(610)에서, 주파수 도메인의 각 구간별로 성능이 향상되는 정도(즉, 기울기)가 서로 상이함을 확인할 수 있다.
이러한 성능 곡선(610)에서 변곡점이 생기는 구간을 기준으로 주파수 도메인(또는 전압 도메인)을 '저주파수 구간(또는 저전압 구간, 660)', '중간 주파수 구간(중간 전압 구간, 670)', '고주파수 구간(또는 고전압 구간, 680)'으로 구분할 수 있다. 한편, 본 실시 예에서는, 주파수 도메인(또는 전압 도메인)을 총 3개의 구간으로 구분하여 설명하고 있으나 이를 제한하지는 않으며, 그보다 더 많은 구간으로 구분할 수 있음은 당업자에게 자명할 것이다.
또한, 상기 그래프에서는, 쿼드 코어 프로세서에서 클락 주파수(f)의 증가에 따라 소모전류가 증가하는 복수의 소모전류 곡선(620~650)이 도시된다. 이때, 제1 소모전류 곡선(620)은 하나의 코어만이 동작하는 경우 해당 프로세서에서 소모되는 전류 곡선이고, 제2 소모전류 곡선(630)은 두 개의 코어만이 동작하는 경우 해당 프로세서에서 소모되는 전류 곡선이며, 제3 소모전류 곡선(640)은 세 개의 코어만이 동작하는 경우 해당 프로세서에서 소모되는 전류 곡선이고, 제4 소모전류 곡선(650)은 네 개의 모든 코어가 동작하는 경우 해당 프로세서에서 소모되는 전류 곡선이다. 마찬가지로, 상기 제1 내지 제4 소모전류 곡선(620~650)에서, 주파수 도메인의 각 구간별로 전류가 소모되는 정도(즉, 기울기)가 서로 상이함을 확인할 수 있다.
이처럼, 도 6에 도시된 바와 같이, 소모전류 대비 성능의 효율성은 주파수 도메인(또는 전압 도메인)의 각 구간별로 상당한 차이를 가지며, 특히 고주파수 범위(또는 고전압 범위)에서 그 갭(gap)은 더욱 커진다. 따라서, 주파수 도메인의 각 구간별로 각 코어간 부하 불균형 정도를 고려하여 클락 주파수를 유지하거나 혹은 클락 주파수를 조정함으로써, 멀티 코어 프로세서의 성능을 최대한 유지하면서 소모 전류를 최소화할 수 있다.
가령, 각 코어간 부하 불균형 정도가 큰 경우, 각 코어에 필요한 주파수들 중 최대 주파수(RF0)가 속한 주파수 구간을 참조하여, 상기 최대 주파수(RF0) 대신 해당 주파수 구간의 최저 주파수를 타겟 주파수로 결정하여 멀티 코어 프로세서를 구동하는 것이 바람직하다. 이에 반해, 각 코어간 부하 불균형 정도가 작은 경우, 각 코어에 필요한 주파수들 중 최대 주파수(RF0)를 타겟 주파수로 결정하여 멀티 코어 프로세서를 구동하는 것이 바람직하다.
이에 따라, 본 발명에 따른 룩업 테이블(340)은, 상기 그래프의 성능 변곡점을 기준으로 분류한 주파수 도메인(또는 전압 도메인)의 각 구간에 관한 정보와, 주파수 도메인(또는 전압 도메인)의 각 구간별 부하 불균형 정도에 관한 임계치 정보와, 각 코어간 부하 불균형 정도에 따른 타겟 주파수 결정 방식에 관한 정보를 포함한다.
타겟 주파수 결정부(330)은 로드 분석부(320)로부터 각 코어(CPU)에 필요한 주파수들 중 최대 주파수(RF0)에 관한 정보와 각 코어간 부하 불균형 정도에 관한 정보를 수신한다. 그리고, 상기 타겟 주파수 결정부(330)은 상기 로드 분석부(320)로부터 수신한 정보와 룩업 테이블(340)에 저장된 정보를 참조하여 멀티 코어 프로세서의 타겟 주파수를 결정한다.
가령, 각 코어에 필요한 주파수들 중 최대 주파수 값이 룩업 테이블에 정의된 고주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 룩업 테이블에 정의된 임계치(가령, 600) 이상인 경우, 타겟 주파수 결정부(330)는 상기 고주파수 구간 내의 최소 주파수를 타겟 주파수로 결정할 수 있다. 한편, 각 코어에 필요한 주파수들 중 최대 주파수의 값이 상기 고주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 상기 임계치 미만인 경우, 타겟 주파수 결정부(330)는 상기 최대 주파수를 타겟 주파수로 결정할 수 있다.
또한, 각 코어에 필요한 주파수들 중 최대 주파수 값이 룩업 테이블에 정의된 중간 주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 룩업 테이블에 정의된 임계치(가령, 400) 이상인 경우, 타겟 주파수 결정부(330)는 상기 중간 주파수 구간 내의 최소 주파수를 타겟 주파수로 결정할 수 있다. 한편, 각 코어에 필요한 주파수들 중 최대 주파수의 값이 상기 중간 주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 상기 임계치 미만인 경우, 타겟 주파수 결정부(330)는 상기 최대 주파수를 타겟 주파수로 결정할 수 있다.
또한, 각 코어에 필요한 주파수들 중 최대 주파수 값이 룩업 테이블에 정의된 저주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 룩업 테이블에 정의된 임계치(가령, 28) 이상인 경우, 타겟 주파수 결정부(330)는 상기 저주파수 구간 내의 최소 주파수를 타겟 주파수로 결정할 수 있다. 한편, 각 코어에 필요한 주파수들 중 최대 주파수의 값이 상기 저주파수 구간 내에 존재하고, 각 코어간 부하 불균형 정도가 상기 임계치 미만인 경우, 타겟 주파수 결정부(330)는 상기 최대 주파수를 타겟 주파수로 결정할 수 있다.
이에 따라, 본 발명에 따른 전력 자원 관리 장치(300)는 타겟 주파수 결정부(330)를 통해 획득한 타겟 주파수 값을 기반으로 전체 멀티 코어 프로세서를 구동한다.
한편, 본 실시 예에서는, 룩업 테이블이 타겟 주파수 결정부(330) 내에 위치하는 것을 예시하고 있으나, 이를 제한하지는 않는다. 따라서, 상기 룩업 테이블은 타겟 주파수 결정부(330) 밖의 다른 메모리 공간 또는 전력 자원 관리 장치(300) 밖의 다른 메모리 공간에 저장될 수 있음은 당업자에게 자명할 것이다.
도 7은 본 발명과 관련된 멀티 코어 프로세서에서의 전력 자원 관리 방법을 설명하기 위한 절차 흐름도이다.
도 7을 참조하면, 본 발명에 따른 전력 자원 관리 장치(300)는 멀티 코어 프로세서를 구성하는 멀티 코어들(CPUs)의 동작 상태에 관한 정보를 획득한다(S710). 이때, 상기 동작 상태에 관한 정보는, 'P state(활동 상태)' 정보와 'C state(유휴 상태)' 정보를 포함한다.
상기 멀티 코어 프로세서에서 하나 이상의 코어들의 동작 상태가 'P state'인 경우, 전력 자원 관리 장치(300)는 각 코어에 할당된 부하를 계산한다(S720). 그리고, 전력 자원 관리 장치(300)는 계산된 코어별 부하 정보를 기반으로 각 코어에 필요한 클락 주파수(RF)를 계산한다(S730). 이때, 전력 자원 관리 장치(300)는 공지된 알고리즘을 통해 각 코어의 부하와 필요 주파수(RF) 값을 계산할 수 있다.
전력 자원 관리 장치(300)는 각 코어에 필요한 클락 주파수의 불균형 정도와, 각 코어에 할당된 부하의 변화 이력(history)과, 각 코어의 온/오프 상태 등을 반영하여 각 코어간 부하 불균형 정도를 계산한다(S740).
전력 자원 관리 장치(300)는 룩업 테이블을 참조하여, 각 코어에 필요한 주파수들 중 최대 주파수가 속하는 주파수 도메인(또는 전압 도메인) 구간을 확인한다(S750). 이때, 상기 주파수 도메인(또는 전압 도메인) 구간은, 성능 변곡점을 기준으로 고주파수 구간(고전압 구간), 중간 주파수 구간(중간 전압 구간), 저주파수 구간(저전압 구간)으로 구분될 수 있다.
또한, 전력 자원 관리 장치(300)는 룩업 테이블을 참조하여, 각 코어간 부하 불균형 정도가 상기 최대 주파수가 속하는 주파수 도메인 구간에 정의된 임계치를 초과하는지 여부를 확인한다(S760).
상기 확인 결과, 각 코어간 부하 불균형 정도가 미리 정의된 임계치를 초과하는 경우, 전력 자원 관리 장치(300)는 멀티 코어 프로세서의 클락 주파수를 변경한다(S770). 즉, 전력 자원 관리 장치(300)는 상기 최대 주파수가 속하는 주파수 도메인 구간 내의 최소 주파수를 동작 주파수로 결정한다.
한편, 상기 확인 결과, 각 코어간 부하 불균형 정도가 미리 정의된 임계치를 초과하지 않는 경우, 전력 자원 관리 장치(300)는 멀티 코어 프로세서의 클락 주파수를 유지한다(S780). 즉, 전력 자원 관리 장치(300)는 각 코어에 필요한 주파수들 중 최대 주파수를 동작 주파수로 결정한다.
이에 따라, 전력 자원 관리 장치(300)는 상술한 S770 단계 또는 S780 단계를 통해 결정된 동작 주파수를 사용하여 멀티 코어 프로세서를 구동한다(S790).
이상 상술한 바와 같이, 본 발명에 따른 전력 자원 관리 방법을 수행하는 이동 단말기는 각 코어간 부하 불균형 정도를 고려하여 클락 주파수를 적응적으로 조절함으로써, 멀티 코어 프로세서의 성능을 최대한 유지하면서 소모 전류를 최소화하여 내부 발열을 개선할 수 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 컴퓨터는 단말기의 제어부(180)를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
100 : 이동 단말기 110 : 무선 통신부
120 : 입력부 140 : 센싱부
150 : 출력부 160 : 인터페이스부
170 : 메모리 180 : 제어부
190 : 전원 공급부

Claims (8)

  1. 멀티 코어 프로세서를 구비하는 이동 단말기의 제어방법에 있어서,
    상기 멀티 코어 프로세서의 각 코어에 할당된 로드(load)를 계산하는 단계;
    상기 계산된 코어별 로드 정보를 기반으로 각 코어에 필요한 클락 주파수를 계산하는 단계;
    상기 계산된 코어별 클락 주파수 정보를 이용하여 각 코어간 로드 불균형 정도를 계산하는 단계; 및
    상기 계산된 각 코어간 로드 불균형 정도를 기반으로 상기 멀티 코어 프로세서의 타겟 주파수를 결정하는 단계를 포함하는 이동 단말기의 제어방법.
  2. 제1항에 있어서,
    각 코어의 동작 상태에 관한 정보를 실시간으로 획득하는 단계를 더 포함하는 이동 단말기의 제어방법.
  3. 제2항에 있어서, 상기 로드를 계산하는 단계는,
    상기 코어의 동작 상태가 "P state"인 경우, 해당 코어에 할당된 로드를 계산하는 것을 특징으로 하는 이동 단말기의 제어방법.
  4. 제1항에 있어서,
    상기 각 코어간 로드 불균형 정도는 아래 수학식을 통해 계산되는 것을 특징으로 하는 이동 단말기의 제어방법.
    [수학식]
    Figure pat00002

    여기서, ΔRF는 각 코어간 로드 불균형 정도이고, RFn은 각 코어에 필요한 클락 주파수이고, N은 코어들의 총 개수임.
  5. 제1항에 있어서, 상기 타겟 주파수를 결정하는 단계는,
    룩업 테이블에 저장된 주파수 도메인에 관한 정보와, 상기 주파수 도메인의 각 구간별 부하 불균형 정도에 관한 임계치 정보와, 각 코어간 부하 불균형 정도에 따른 타겟 주파수 결정 방식에 관한 정보를 참조하여 상기 멀티 코어 프로세서의 타겟 주파수를 결정하는 것을 특징으로 하는 이동 단말기의 제어방법.
  6. 제5항에 있어서, 상기 타겟 주파수를 결정하는 단계는,
    상기 각 코어에 필요한 주파수들 중 최대 주파수가 속하는 주파수 도메인 구간을 확인하는 단계; 및
    상기 각 코어간 부하 불균형 정도가 미리 정의된 임계치를 초과하는 경우, 상기 최대 주파수가 속하는 주파수 도메인 구간 내의 최소 주파수를 상기 타겟 주파수로 결정하는 단계를 더 포함하는 이동 단말기의 제어방법.
  7. 제5항에 있어서, 상기 타겟 주파수를 결정하는 단계는,
    상기 각 코어에 필요한 주파수들 중 최대 주파수가 속하는 주파수 도메인 구간을 확인하는 단계; 및
    상기 각 코어간 부하 불균형 정도가 미리 정의된 임계치를 초과하지 않는 경우, 상기 각 코어에 필요한 주파수들 중 최대 주파수를 상기 타겟 주파수로 결정하는 단계를 더 포함하는 이동 단말기의 제어방법.
  8. 제1항 내지 제7항 중에 어느 한 항의 제어방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.

KR1020140136767A 2014-10-10 2014-10-10 이동 단말기 및 그 제어방법 KR20160042618A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140136767A KR20160042618A (ko) 2014-10-10 2014-10-10 이동 단말기 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140136767A KR20160042618A (ko) 2014-10-10 2014-10-10 이동 단말기 및 그 제어방법

Publications (1)

Publication Number Publication Date
KR20160042618A true KR20160042618A (ko) 2016-04-20

Family

ID=55917380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140136767A KR20160042618A (ko) 2014-10-10 2014-10-10 이동 단말기 및 그 제어방법

Country Status (1)

Country Link
KR (1) KR20160042618A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126246B2 (en) 2017-10-30 2021-09-21 Samsung Electronics Co., Ltd. Apparatus, method, and system for power consumption management of system-on-chip
CN116540820A (zh) * 2023-07-04 2023-08-04 摩尔线程智能科技(北京)有限责任公司 电压及频率控制系统、方法、存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126246B2 (en) 2017-10-30 2021-09-21 Samsung Electronics Co., Ltd. Apparatus, method, and system for power consumption management of system-on-chip
US11803225B2 (en) 2017-10-30 2023-10-31 Samsung Electronics Co., Ltd. Apparatus, method, and system for power consumption management of system-on-chip
CN116540820A (zh) * 2023-07-04 2023-08-04 摩尔线程智能科技(北京)有限责任公司 电压及频率控制系统、方法、存储介质
CN116540820B (zh) * 2023-07-04 2023-08-29 摩尔线程智能科技(北京)有限责任公司 电压及频率控制系统、方法、存储介质

Similar Documents

Publication Publication Date Title
KR102354275B1 (ko) 음성 인식 방법 및 장치, 그리고 저장 매체
US9665159B2 (en) Method and apparatus for saving power of portable electronic device
US10146582B2 (en) Method for assigning priority to multiprocessor tasks and electronic device supporting the same
KR101833601B1 (ko) 휴대용 컴퓨팅 디바이스로부터 주위 온도를 추정하기 위한 시스템 및 방법
CN108780349B (zh) 用于在具有异构集群架构的片上系统中进行智能热管理的系统和方法
US10402222B2 (en) Task migration method and apparatus
US20120260258A1 (en) Method and system for dynamically controlling power to multiple cores in a multicore processor of a portable computing device
KR20240012609A (ko) 사용자에 대한 근접도에 기초한 웨어러블 컴퓨팅 디바이스의 열 관리를 위한 시스템 및 방법
US10064141B2 (en) Core frequency/count decision-based thermal mitigation optimization for a multi-core integrated circuit
WO2017206902A1 (zh) 应用控制方法及相关设备
CN111158455A (zh) 一种功耗控制方法、装置、存储介质及终端
KR102666329B1 (ko) 어플리케이션 실행 방법 및 장치
WO2019101043A1 (zh) 图像处理方法、终端、计算机存储介质及计算机程序
EP3571568B1 (en) System and method for context-aware thermal management and workload scheduling in a portable computing device
US9942854B2 (en) Adaptive sleep delay
CN107341094B (zh) 启动项耗时的测量方法及装置
KR102624100B1 (ko) 디스플레이 제어 방법 및 그 전자 장치
US20220179706A1 (en) Adaptive resource allocation system and method for a target application executed in an information handling system (ihs)
JP2022008797A (ja) 端末の電力消費を低減するための方法、および端末
KR20160042618A (ko) 이동 단말기 및 그 제어방법
WO2019072179A1 (zh) 应用程序运行控制方法及装置
US20170156115A1 (en) Electronic systems and method of operating electronic systems
KR20200101210A (ko) 전자 장치 및 프로세서의 동작 주파수를 결정하는 방법
CN112860352A (zh) 一种应用程序的加载方法、装置、存储介质及终端
CN108958829B (zh) 预加载的资源控制方法、装置、存储介质及终端

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination