KR101485274B1 - 저장 드라이브 관리 - Google Patents

저장 드라이브 관리 Download PDF

Info

Publication number
KR101485274B1
KR101485274B1 KR1020137005814A KR20137005814A KR101485274B1 KR 101485274 B1 KR101485274 B1 KR 101485274B1 KR 1020137005814 A KR1020137005814 A KR 1020137005814A KR 20137005814 A KR20137005814 A KR 20137005814A KR 101485274 B1 KR101485274 B1 KR 101485274B1
Authority
KR
South Korea
Prior art keywords
drive
power
storage
storage drive
submitted
Prior art date
Application number
KR1020137005814A
Other languages
English (en)
Other versions
KR20130049201A (ko
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 인텔 코오퍼레이션
Publication of KR20130049201A publication Critical patent/KR20130049201A/ko
Application granted granted Critical
Publication of KR101485274B1 publication Critical patent/KR101485274B1/ko

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3221Monitoring of peripheral devices of disk drive devices
    • 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/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • 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/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 실시예들에 의해, 이미 플랫폼 운영 체제에 사용될 수 있는 저장 드라이버를 사용하여 더 강력한 해결책이 제공된다. 이는, 저장 드라이버가 일반적으로 이미 저장 드라이브 액세스 요청을 모니터링하여, 트래픽이 현저할 때(성능이 비판적일 수 있음) 또는 현저하지 않을 때(및 전력이 절약될 수 있음)를 알기 때문에 효율적이다.

Description

저장 드라이브 관리{STORAGE DRIVE MANAGEMENT}
본 발명은 일반적으로 컴퓨팅 시스템에 관한 것으로, 특히, 컴퓨팅 시스템에서 저장 드라이브 전력 및/또는 성능을 관리하는 것에 관한 것이다.
본 발명의 실시예들은, 제한으로서가 아니라, 예로서 도시된 것으로, 첨부된 도면의 도들(figures)에서, 같은 참조 번호들은 유사한 요소들을 지칭한다.
도 1은 일부 실시예들에 따른 저장 드라이브 정책 엔진을 갖는 컴퓨터 플랫폼에 대한 다이어그램이다.
도 2는 일부 실시예들에 따른 저장 드라이브의 성능 및 전력을 관리하기 위한 루틴을 도시한다.
도 3은 더 특정한 실시예에 따른 저장 드라이브의 성능/전력 관리를 갖는 컴퓨터 플랫폼을 도시하는 다이어그램이다.
도 4는 일부 실시예들에 따른 저장 드라이브의 액세스 요청들을 관리하기 위한 루틴을 도시하는 순서도이다.
도 5는 일부 실시예들에 따른 저장 드라이브로의 전력의 감소를 관리하기 위한 루틴을 도시하는 순서도이다.
휴대용 PC(personal computer)와 같은 컴퓨팅 플랫폼들에서, ACPI(Advanced Configuration and Power Interface)와 같은 전력 관리 스킴들은 상이한 시스템, 플랫폼, 및 프로세싱 코어의 전력 및 성능 상태들에 대비하는데, 이는 시간에 걸쳐 더 효율적으로 동작하기 위해, 컴퓨팅 플랫폼의 상이한 부분들이 각각 더 높거나 더 낮은 전력 소모 및 성능 상태들이 되는 것을 고려한다. 플랫폼 컴포넌트에 대한 성능/전력 상태는 일반적으로 다양한 파라미터들, 예컨대, 작업 요구들(task demands), 사용가능한 전력 등에 근거하여, 플랫폼 운영 체제에 의해 제어된다.
불행하게도, 현재 구현된 성능 상태 관리는, 개개의 디바이스들, 이를테면, HDD(hard disk drives), SSD(solid state drives), 및 ODD(optical disk drives)를 포함하는 저장 드라이브들에 대한 요구 활동을 고려하기에 충분히 세분화되지 않은 고려사항들에 근거한 것일 수 있다. 예를 들어, 전력 관리 상태들 사이의 부정적인 상호작용들과 관련된 성능 문제들이 존재할 수 있는데, 예컨대, 지연(latency)이 유발된 경우에 저장 드라이브 병목현상으로 인해 성능을 현저하게 저하시킨다. 예를 들어, 저-지연 SSD들은 이러한 문제에 매우 민감할 수 있다. 현재, 이러한 문제들을 교정하기 위해, 사용자는 단순히 자신의 컴퓨터에서 전력 관리 옵션들을 차단(shut off)하거나, 단순히 성능 히트들(performance hits)을 용인할 수 있다.
저장 VR들(저장 디바이스들에 전력을 공급하는데 사용된 전압 조정기들)은 일반적으로 플랫폼 전원 공급 장치들에 걸쳐 가장 큰 손실의 일부를 갖는다. 이에 대응하여, 기업들은, 드라이브들의 성능/전력 상태들을 더 잘 관리하기 위해, 드라이브에 하드웨어 기반의 전력 프로파일링 및 휴리스틱(hardware based power profiling and heuristics)을 통합하는 제품들을 생산하고 있다. 불행하게도, 이러한 접근법들은 과도한 추가 오버헤드를 필요로 할 수 있으며 심지어 원하는 레벨로 기능하지 않을 수 있다.
따라서, 본 개시는 이러한 이슈들을 시정하기 위한 새로운 접근법들을 제시한다. 본 발명의 일부 실시예들에서, 플랫폼 운영 체제를 위해 미리 사용될 수 있는 저장 드라이버를 사용하는 더 강력한 솔루션이 제공된다. 저장 드라이버는 일반적으로 저장 드라이브의 액세스 요청들을 미리 모니터링하여, 트래픽이 현저할 때(성능이 위태로울 수 있을 때) 또는 트래픽이 현저하지 않을 때(및 전력이 절약될 수 있을 때)를 알기 때문에 효율적이다. 그래서, 접근법은, 위태로운 전력 절약이나 성능 기회들이 사용가능한 경우에 대한 암시적 지식을 갖는 저장 드라이버에 더 가까워진다. 예를 들어, 드라이브에 현저한 트랜잭션이 없을 때, 드라이브는 전력을 절약하고 시스템이 깊은 저-전력 상태(일부 다른 디바이스가 그것을 저해하지 않는다고 가정)에 진입하도록 전력이 관리될 수 있다. 다른 한편으로, 드라이브들로의 트랜잭션들이 현저할 때, 전압 조정기들이 활성화되어, 드라이브들이 준비되고, 그 다음, 플랫폼 지연이 래칫 다운(ratchet down)되어 전력 관리는 제거되고 요구에 따라 충분한 성능이 전달될 수 있다.
도 1은 저장 드라이브의 성능 및 전력 소모를 관리하기 위한 저장 드라이브 정책 엔진을 갖는 컴퓨팅 플랫폼(102)에 대한 다이어그램이다. 휴대용 컴퓨터(넷북, 노트북, 태블릿, 스마트 폰 등), 데스크톱 컴퓨터, 서버 컴퓨터, 또는 임의의 다른 적절한 컴퓨팅 디바이스와 같은 컴퓨팅 플랫폼의 일반화된 부분이 도시된다. 도시된 플랫폼은, 도시된 바와 같이 결합된, 운영 체제(OS) 소프트웨어(104), 하나 이상의 저장 드라이브(108), 저장 드라이브들(108)에 전력을 제공하기 위한 전압 조정기(106), 및 지연 제어 레지스터(110)를 실행하는 것을 포함한다. OS 공간은 하나 이상의 프로세서 코어들(도시되지 않음)에서 실행하고, 저장 드라이브 정책 엔진(SDPE)(103) 및 하나 이상의 저장 드라이브 드라이버들(105)을 포함한다.(일반적으로, 각각의 저장 드라이브(108)는 관련된 저장 드라이버(105)를 가질 것이다. 마찬가지로, 하나보다 많은 저장 드라이브 정책 엔진(103)이 존재할 수 있다. 예를 들어, 각각의 드라이브에 대해 하나가 존재할 수도 있고, 또는 대안적으로, 다양한 드라이브들(108)에 대한 성능을 관리하기 위해 하나 혹은 여러 개의 SDPE 인스턴스 생성들(instantiations)이 이용될 수도 있다.)
저장 드라이브들(108)은, 하드 디스크 드라이브들, 광 디스크 드라이브들, 솔리드-스테이트 드라이브들 및 아직 인정되지 않은 것일 수 있는 임의의 다른 향후 드라이브 기술을 포함하지만 이로 제한되지 않는 임의의 적절한 드라이브 기술을 포함할 수 있다.
도 2는 일부 실시예들에 따른 저장 드라이브 정책 엔진을 구현하기 위한 루틴을 도시한다. 204에서, 저장 드라이브의 액세스 요구가 모니터링된다. 이것은 저장 드라이브(105)를 사용하여 수행될 수 있고, 위에서 언급된 바와 같이, 일반적으로 임의의 액세스(데이터를 판독 또는 기록하기 위한) 요청을 인식할 것이다. 206에서, 정책 엔진은 저장 드라이브의 액세스 요구를 특징 짓는다. 즉, 액세스 요구가 드라이브를 낮은(또는 더 낮은) 지연 모드에 두고 VR(106)을 통해 드라이브에게 적절한 전력을 제공하는 것을 보장할 만큼 충분히 높은지, 또는 반대로, 지연 세팅을 증가시키고 VR 출력을 감소시키는 것을 보장할 만큼 충분히 낮은지를 결정한다. 208에서, 특징지어진 요구에 근거하여 드라이브에 대한 적절한 성능 세팅 및 전력 상태를 설정한다.
일부 실시예들에서, 지연 제어 레지스터(110)는, 예컨대, 지연 세팅을 통해, 성능 세팅을 설정하는데 사용될 수 있다. 하나 이상의 레지스터를 포함할 수 있는 레지스터는 현재 노출된 OS 전력 상태, 예컨대, ACPI를 사용하는 플랫폼에서 C1, C2, C3 상태에 대한 플랫폼 지연을 제어하는데 사용될 수 있다. 지연 제어 세팅은 드라이브에 대한 트랜잭션 속도 능력에 기여하는 하나 또는 여러 개의 상이한 컴포넌트들에 영향을 미칠 수 있다. 예를 들어, 그들은 우선순위 세팅, 전력 세팅, 링크 정의 등에 영향을 미칠 수 있다. 각각의 저장 드라이브에 대한 지연을 조정함으로써, 플랫폼 전력 관리의 전체 깊이는 사용시에 동적으로 바운드될 수 있어, 트랜잭션이 현저하지 않을 때(큰 지연 값들) 에너지 효율에 대해 최적화하고, 트랜잭션이 현저할 때(짧은 지연 값들) 성능에 대해 최적화한다.
저장 드라이버(105)는 일반적으로 트랜잭션 요청들(저장 드라이브를 수반하는 전송들)이 특정한 드라이브에 발행될 때 언제든지 활용된다. 저장 드라이버(105)는 또한 특정한 하드웨어에 도달하는 트랜잭션들을 시작하지 않기 위해 대기 상태(queued state)에 이러한 요청을 홀드할 수 있다.(이는 소프트웨어 구성을 통해 수행될 수 있다.) 상대적으로 짧은 시간 간격에 대해 특정한 저장 드라이브(108)로의 트랜잭션들이 현저하지 않을 때, 플랫폼에서의 지연 제약은 제거될 수 있고, 이로써 더 깊게 전력 관리된 상태들이 동적으로 사용가능하게 되도록, 정책 엔진(103)은 소프트웨어에 배치될 수 있다. 저장 드라이브들(108)은 또한 활발히 슬립 또는 스탠바이 상태로 보내질 수 있으며, 예를 들어, 드라이브들을 피드하는 VR들(106)로의 경-부하 시그널링(light-load signaling)이 어서트될 수 있다.(이러한 상황에서, 일부 시간 기간 동안 어떠한 명령도 발행되지 않거나 충분히 낮은-우선순위 명령들이 발행되므로, 드라이브들은 휴지기(quiescent)일 것이다.)
도 3은 더 자세한 예에서 저장 드라이브 정책 엔진을 갖는 컴퓨팅 플랫폼을 도시한다. 도시된 플랫폼은 DMI(direct media interconnet) 인터페이스(320/350)를 통해 플랫폼 IO 칩(331)에 결합된 CPU 칩(311)을 포함한다. 플랫폼은 또한 비 휘발성 메모리를 제공하기 위해 플랫폼을 통해 PIO 칩(331)에 결합된 하드 디스크 드라이브(352), 솔리드 스테이트 드라이브(354), 및 광 디스크 드라이브(356)를 포함한다. 드라이브들은, 범용 입/출력(GPIO) 인터페이스(332)를 통해 제어되는, 하나 이상의 저장 VR(333)을 통해 전력을 공급받는다.(편의를 위해, PIO 칩 또는 CPU 칩에 접속되는 다른 플랫폼 컴포넌트들, 예컨대, 디스플레이들, 주변 디바이스들 등은 도시되지 않는다.)
PIO 칩(331)은 드라이브들과 플랫폼의 다른 부분들 사이의 데이터 전송을 제어하기 위한 드라이브 인터페이스 제어기들(336, 338, 340)을 포함한다. 예를 들어, 호스트 제어기들 중 하나 이상은 AHCI 및/또는 SATA 컴플라이언트 제어기들을 포함할 수 있다.(AHCI(Advanced Host Controller Interface)는 비 구현-특정 방식(non implementation-specific manner)으로 직렬 ATA 호스트-제어기들(또한 호스트 버스 어댑터로도 알려짐)의 동작을 정의하는 프로그래밍-사양(programming-specification)이다.) 이 사양은, 호스트 시스템 메모리와 부착된 저장-디바이스들 사이에서 데이터를 교환하기 위해 컴퓨터 하드웨어 벤더들을 위한 시스템 메모리 구조를 설명한다. AHCI는 소프트웨어 개발자와 하드웨어 설계자에게 SATA/AHCI 어댑터를 검출, 구성, 및 프로그래밍하기 위한 표준 방법을 제공한다. 호스트-시스템들이 활용할 수 있도록 SATA의 고급 능력들(이를테면, 핫-플러깅(hot-plugging) 및 NCQ(native command queuing))을 노출하지만, AHCI는 직렬 ATA-II 표준과 별개이다. 많은 SATA 제어기들은 선택가능한 동작 모드들: 레거시 병렬 ATA, 표준 AHCI-모드, 또는 벤더-특정 RAID를 제공한다.
CPU 칩(311)은 하나 이상의 프로세서 코어들(312), 그래픽 프로세서(313), LLC(low level cache; 314), 메모리 제어기(316), 디스플레이 인터페이스 제어기(318), 및 PCI 익스프레스 인터페이스 제어기(324)를 포함한다. 코어들(312) 중 하나 이상은, BIOS 전력 상태 관리 코드(306), 하나 이상의 저장 드라이버(310), 및 저장 드라이버들(352, 354, 및/또는 356)의 하나 이상에 대한 전력/성능 상태들을 제어하기 위한 저장 드라이브 정책 엔진(309)을 포함하는 OS 저장 스택(308)을 포함하는, 운영 체제 소프트웨어(OS 공간)(304)를 실행한다.(정책 엔진은 OS 저장 스택(308)의 일부로서 도시되지만, 그렇게 제한되는 것은 아니라는 것에 주목한다. 예를 들어, 그것은 드라이버 자체의 일부일 수 있고, 또는 플랫폼의 별개의 부분에서 실행될 수 있다. 그것은 OS 벤더, 저장 드라이브 벤더, 또는 일부 다른 엔티티에 의해 제공될 수 있다.) 또한 여기에 지연 레지스터(307)가 포함되는데, 이는 소프트웨어를 사용하여 구현될 수도 있고 또는 OS 공간에 액세스가능한 하드웨어에 상응할 수도 있다.
SDPE(309)는 OS 저장 드라이버에 대한 수정들로부터 발생할 수 있거나, 선택적으로, (도시되는 바와 같이) 저장 드라이버 위에 있는 필터 드라이버로부터 설계될 수 있다. 도시된 실시예에서, 그것은 경부하 및 무부하(light and no load) 조건들을 시그널링하고 저장 VR 서브시스템들과 통신하기 위해 PIO 칩 상의 GPIO들을 사용하여 저장 VR들(333)을 제어한다. 또한, 그것은 VR들을 제어하기 위해 시스템 BIOS ACPI 방법들을 사용한다.(도시된 실시예에서, BIOS는 일반적으로 저장 드라이브들을 제어하기 위한 플랫폼 특정 정보를 포함하기 때문에, 저장 드라이브들을 제어하기 위해 BIOS가 사용되고, 이로써 OS(예컨대, 저장 드라이버) 기반 접근법이 플랫폼에 대해 독립적이 되도록 허용한다.) 그러나, 임의의 적절한 대안, 예컨대, EFI(extensible firmware interface)가 대안적으로 사용될 수 있다.
도 4는 감소된 저장 드라이브 전력 상태에서 나오기 위한 루틴을 도시한다.(아래에 논의된, 도 4 및 도 5의 루틴들은 소정의 저장 드라이브에 대한 전력/성능을 관리하기 위해 협력하여 사용될 수 있다는 것에 주목한다.) 402에서, 저장 드라이브 IO 트랜잭션 요청이 검출된다. 404에서, 드라이브가 파워 오프되는지를 결정한다. 오프인 경우, 406에서, 드라이브 VR를 파워 온한다. 408에서, 저장 드라이브 콘텍스트, 예컨대, 활성 모드를 위한 디폴트 또는 프리셋 세팅을 설정 및/또는 복원한다. 414에서, 액세스가 미디어 액세스 요청, 예컨대, 낮은 지연 세팅 및 높은 전력 능력에 대한 필요성을 암시하는, 사용자에게 재생될, 드라이브에 저장된, 영화에 대한 요청인지를 확인한다. 액세스 요청이 미디어 액세스에 대한 것인 경우, 드라이브는 422에서 활성 모드로 파워 업되고, 420에서 드라이브 지연 세팅은 충분히 낮은 지연을 위해 설정된다. 424에서, 정비(servicing)를 위해 작업 요청이 대기되고, 426에서, 짧은 타이머가 설정된다.
414로 다시 돌아가면, 액세스 요청이 미디어에 액세스에 대한 것이 아닌 경우, 416에서, 드라이브는 스탠바이 모드로 파워 업되고, 418에서, 비 미디어 요청이 서비스된다. 마지막으로, 426에서, 짧은 타이머가 설정된다.
따라서, 이러한 루틴에서, 트랜잭션 요청이 드라이브로 제출될 때, 정책 엔진은, 소프트웨어 대기열(queue)에, 펜딩 명령들을 "홀드하고 있고"(예컨대, 저장 드라이버를 사용하여) 펜딩 명령들을 분석하여 그들이 서비스되어야 하는지 여부를 결정할 수 있다. 즉, 임의의 특정 파워 다운 활동들이 완전하게 또는 부분적으로 취소되어야 하는지 여부, 또는 그들이 있는 그대로 유지되어야 하는지를 결정한다. 드라이브의 저장 또는 물리적 매체로의 액세스를 필요로 하지 않는 펜딩 명령은, 풀 파워-업(예컨대, 활성) 상태보다는 오히려 "파워-온 스탠바이" 상태로 드라이브를 부분적으로 파워-업하여 완료될 수 있다. 이는, 드라이브의 존재에 대해 주기적으로 핑(ping)할 수 있는 소프트웨어로 인한, 전력 절약 특징들에 대한 방해(disruption)를 최소화하는데 도움이 된다.
동시에, 인입 트랜잭션이 드라이브 상의 미디어 데이터를 대상으로 하고 따라서 풀(예컨대, 활성 모드) 파워-업을 필요로 하는 경우, 실행되었을 수 있는 파워-다운 활동들이 취소되어 인입 요청을 완료할 수 있다. 드라이브가 완전히 파워-업되면, 그것이 소프트웨어 대기열 내의 펜딩 I/O 요청들의 유형에 근거한 플랫폼 전력 관리 상태(예컨대, 딥 슬립, 스탠바이 등의 상태조차)에 있을 수 있더라도, 플랫폼에 대해 지연 허용이 조정되어야 하는지 여부를 결정할 수 있다. 예를 들어, 대량 전송 요청들의 펜딩 스트림은, 드라이브 파워-업일 때, 드라이브들로부터의 최대 스루-풋을 허용하기 위해 더 엄격한 지연 허용이 바람직할 수 있다는 것을 나타낼 수 있다. 따라서, 높은 I/O(즉, I/O 드라이브 액세스 트랜잭션) 요구 시나리오 하에서, 정책 엔진은, 더 엄격한 지연 허용을 설정하기 위해 플랫폼에서 ACPI 통지를 사용하여 OSPM C-상태 알고리즘과 통신함으로써 C-상태 로직을 동적으로 강등시키거나 지연 제어 레지스터(드라이브에 대한 지연 허용을 제어함)에 기록할 수 있고, 따라서 딥 전력 관리 상태 지연을 피할 수 있다. 따라서, 여기에 개시된 일부 실시예에서, 양자(전력 절약 및 증가된 성능) 중 최적의 것이, 적어도 합리적인 레벨로, 달성될 수 있다.
도 5는 일부 실시예에 따른 감소된 저장 드라이브 전력 모드에 진입하기 위한 루틴을 도시한다. 501에서 적어도 초기에(예컨대, 파워-업) 진입될 수도 있고, 또는 502에서 짧거나 긴 타이머(도 4의 루틴으로부터의 동일한 짧은 타이머)의 만료로부터 진입될 수 있다. 타이머는, 저장 드라이버에 대한 트랜잭션 액세스 요청이 펜딩이지 않을 때 시간의 갭들(더 짧은 및 더 긴 갭들)을 식별하는데 사용된다. "짧은" 및 "긴"이라는 용어는 서로에 상대적인 용어들로서, 제1 및 제2 타이머를 편리하게 용이하게 한다는 것이 이해되어야 한다. 이러한 실제 지속기간은 플랫폼 파라미터들 및 원하는 성능에 따라 달라질 것이다. 원하는 세분화(granularity)에 따라 더 많거나 더 적은 타이머가 사용될 수 있다.
루틴이 타이머 만료시에 진입된다고 가정하면, 504에서, 정책 엔진은, 임의의 명령들이 펜딩인지를 결정한다. 예를 들어, 이전에 펜딩이던 액세스 요청으로부터의 명령들이 여전히 서비스될 필요가 있을 수 있다. 수행될 나머지 명령들이 존재하는 경우에, 506에서, 타이머를 리셋 및 개시하고 드라이브를 파워 온한다. 이로부터, 524로 이동하고, 노멀(디폴트) 드라이브 지연을 설정하고 종료한다.
한편, 504에서, 펜딩 명령들이 존재하지 않는 경우, 만료된 타이머가 짧은 타이머인 경우, 514로 이동하고 저장 드라이브로의 전력을 감소시킨다. 512에서, 저장 드라이브 VR들에 경-부하 시그널링을 어서트한다. 510에서, 지연 허용을 설정(증가)하고, 508에서, 긴 타이머를 설정하고 루틴에서 나간다.
522로 다시 돌아가서, 긴 타이머가 만료된 경우, 520에서, 저장 드라이브를 파워 오프하고, 518에서 저장 드라이브 VR들을 파워 오프하고, 516에서 낮은 지연 요구사항들(심지어 더 긴 지연 허용)을 설정하고, 루틴을 나간다.
따라서, 도 5의 루틴에서, 저장 드라이버에 제출된 트랜잭션이 없는 긴 기간(긴 타이머) 후에, 드라이브는 훨씬 더 파워 오프될 수 있다(그러나, 동시에, 예정보다 빨리 임의의 필요한 콘텍스트를 절약). 드라이브들을 완전히 파워 오프하기 위해 (예컨대, ACPI BIOS 방법을 통해) GPIO가 사용될 수 있다. 드라이브가 완전히 파워 다운되면, 저장 제어기를 낮은 전력 상태에 두는 것에 의해서도 추가적인 전력 절약이 달성될 수 있다(예컨대, ACPI 콘텍스트에서, D3 또는 더 깊은 예를 들어 SOix 상태에 놓일 수 있다).
이전 설명 및 다음 청구항들에서, 다음의 용어는 다음과 같이 해석되어야 한다: "결합된" 및 "접속된"이라는 용어는 그들의 파생어와 함께 사용될 수 있다. 이러한 용어들은 서로에 대한 동의어로서 의도되는 것이 아님이 이해되어야 한다. 오히려, 특정한 실시예들에서, "접속된"은, 두 개 이상의 요소가 서로 직접 물리적 또는 전기적 접촉에 있는 것을 나타내는데 사용된다. "결합된"은 두 개 이상의 요소가 공동-동작 또는 서로 상호 작용한다는 것을 나타내는데 사용되지만, 그들은 직접 물리적 또는 전기적 접촉에 있을 수도 있고 아닐 수도 있다.
또한, 도면의 일부에서, 신호 도체 라인들은 직선들로 표현된다는 것이 이해되어야 한다. 더 많은 구성 신호 경로를 나타내기 위해 일부는 더 두꺼울 수 있고, 구성 신호 경로의 수를 나타내기 위해 숫자 레벨을 가질 수도 있고, 및/또는 주요 정보 흐름 방향을 나타내기 위해 하나 이상의 단부에 화살표를 가질 수도 있다. 이것은, 그러나, 제한하는 방식으로 해석되어서는 안 된다. 오히려, 다이어그램에 대한 더 쉬운 이해를 용이하게 하기 위해 하나 이상의 예시적인 실시예와 관련하여 이러한 추가된 세부 사항이 사용될 수 있다. 임의의 표현된 신호 라인들은, 추가 정보를 갖든 아니든, 다수의 방향으로 이동할 수 있는 하나 이상의 신호를 실제로 포함할 수 있고, 임의의 적절한 유형의 신호 스킴, 예컨대, 차동 쌍, 광 섬유 라인, 및/또는 신호-엔디드 라인으로 구현된 디지털 또는 아날로그 라인으로 구현될 수 있다.
본 발명이 동일한 것으로 제한되더라도, 예시적인 크기들/모델들/값들/범위들이 제공된 것임이 이해되어야 한다. 제조 기술(예컨대, 포토리소그래피)이 시간이 지남에 따라 발달함에 따라, 더 작은 크기의 디바이스가 제조될 수 있을 것으로 기대된다. 또한, 도시 및 논의를 간략화하고, 본 발명을 모호하게 하지 않기 위해, IC 칩 및 다른 컴포넌트들로의 잘 알려진 전력/접지 접속들은 도면 내에 도시될 수도 있고 아닐 수도 있다. 또한, 본 발명을 모호하게 하는 것을 피하기 위해, 블록도의 형태로 배열들이 도시될 수 있고, 또한 그러한 블록도 배열들의 구현과 관련하는 세부 사항들은 본 발명이 구현될 플랫폼에 상당히 의존적이라는 사실의 견지에서, 그러한 세부 사항들은 당업자의 이해의 범위 내에 잘 있어야 한다. 특정 상세들(예컨대, 회로)이 본 발명의 예시적인 실시예를 설명하기 위해 명시되지만, 본 발명은 이러한 특정 상세들 없이 또는 그들의 변형으로 실행될 수 있다는 것이 당업자에게 명백해야 한다. 설명은 따라서 제한 대신 예시적인 것으로 간주될 것이다.

Claims (24)

  1. 메모리 저장 디바이스로서,
    명령어들을 갖고, 상기 명령어들은 컴퓨팅 플랫폼에서 실행될 때,
    저장 드라이브 드라이버 내의 정책 엔진에 의해, 트랜잭션 액세스 요청들이 충분한 양의 시간 동안 상기 드라이버에 제출되지 않는지를 결정하기 위해 저장 드라이브 액세스 요구를 모니터링하는 단계;
    트랜잭션 액세스 요청들이 충분한 양의 시간 동안 제출되지 않는 경우, 드라이브에 대한 우선순위 세팅들을 변경하고, 노출된 운영 체제 전력 상태에 대한 플랫폼 지연을 증가시키는데 이용될 적어도 하나의 레지스터를 이용하여 상기 드라이브에 공급되는 전력을 감소시키는 단계;
    저장 드라이브 트랜잭션 요청을 검출하는 단계;
    상기 저장 드라이브 트랜잭션 요청이 상기 드라이브 상에 저장된 미디어에 대한 미디어 액세스 요청임을 결정하는 단계;
    상기 드라이브에 대한 전력 능력을 증가시키는 단계; 및
    상기 드라이브에 대한 지연 세팅을 감소시키는 단계
    를 포함하는 방법을 수행하게 하는 메모리 저장 디바이스.
  2. 제1항에 있어서, 트랜잭션 액세스 요청들이 충분한 양의 시간 동안 제출되지 않는 경우, 상기 드라이브에 대한 지연 허용(latency tolerance)을 증가시키는 단계를 더 포함하는 메모리 저장 디바이스.
  3. 제2항에 있어서, 상기 전력을 감소시키는 단계와 지연 허용을 증가시키는 단계는 상기 플랫폼을 위한 운영 체제 공간에서 실행되는 상기 정책 엔진에 의해 개시되는 메모리 저장 디바이스.
  4. 제2항에 있어서, 상기 드라이브에 대한 지연 허용을 증가시키는 단계는 지연 제어 레지스터 상태를 설정하는 단계를 포함하는 메모리 저장 디바이스.
  5. 제1항에 있어서, 상기 저장 드라이브는 플랫폼 BIOS 유틸리티를 통해 제어되는 메모리 저장 디바이스.
  6. 제1항에 있어서, 모니터링하는 단계는, 트랜잭션 액세스 요청들이 제1 시간량 동안 제출되지 않는 경우, 상기 제1 시간량 동안 모니터링하는 단계 및 드라이브 전력을 제1 전력 상태로 감소시키는 단계를 포함하는 메모리 저장 디바이스.
  7. 제6항에 있어서, 모니터링하는 단계는, 트랜잭션 요청들이 상기 제1 시간량 동안 제출되지 않는 경우, 추가의 시간 동안 모니터링하는 단계, 및 그 다음에 액세스 요청들이 상기 추가의 시간 동안 제출되지 않는 경우, 드라이브 전력 상태를 제2 전력 상태로 감소시키는 단계를 포함하며, 상기 제2 전력 상태는 상기 제1 전력 상태보다 더 적은 전력 소모를 야기하는 메모리 저장 디바이스.
  8. 제7항에 있어서, 상기 제2 전력 상태는 상기 드라이브에 대한 제어기로의 전력을 감소시키는 단계를 포함하는 메모리 저장 디바이스.
  9. 제6항에 있어서, 트랜잭션 액세스 요청들이 상기 제1 시간량 동안 제출되지 않는 경우, 드라이브 지연(drive latency)을 제1 레벨로 증가시키는 단계를 포함하는 메모리 저장 디바이스.
  10. 제9항에 있어서, 액세스 요청들이 추가의 시간 동안 제출되지 않는 경우, 드라이브 지연을 제2 레벨로 증가시키는 단계를 포함하고, 상기 제2 레벨은 상기 제1 레벨보다 더 긴 메모리 저장 디바이스.
  11. 컴퓨팅 장치로서,
    저장 드라이브, 및 상기 저장 드라이브로의 액세스를 용이하게 하는 저장 드라이브 드라이버;
    상기 저장 드라이브에 전력을 공급하는 전압 조정기; 및
    트랜잭션 액세스 요청들이 충분한 양의 시간 동안 상기 드라이버에게 제출되지 않는지를 결정하기 위해 상기 저장 드라이브 드라이버를 모니터링하는, 상기 저장 드라이브 드라이버 내의, 정책 엔진
    을 포함하고,
    트랜잭션 액세스 요청들이 충분한 양의 시간 동안 제출되지 않는 경우, 상기 장치는,
    상기 저장 드라이브에 대한 우선순위 세팅들을 변경하고,
    상기 저장 드라이브에 공급되는 전력을 감소시키고 - 적어도 하나의 레지스터가 노출된 운영 체제 전력 상태에 대한 플랫폼 지연을 증가시키는데 이용됨 -,
    저장 드라이브 트랜잭션 요청을 검출하고,
    상기 저장 드라이브 트랜잭션 요청이 상기 드라이브 상에 저장된 미디어에 대한 미디어 액세스 요청임을 결정하고,
    상기 드라이브에 대한 전력 능력을 증가시키고,
    상기 드라이브에 대한 지연 세팅을 감소시키도록
    구성되는 컴퓨팅 장치.
  12. 제11항에 있어서, 상기 정책 엔진은, 트랜잭션 액세스 요청들이 충분한 양의 시간 동안 제출되지 않는 경우, 상기 저장 드라이브에 대한 지연 허용을 증가시키는 컴퓨팅 장치.
  13. 제12항에 있어서, 상기 정책 엔진은 지연 제어 레지스터 상태를 설정함으로써 상기 드라이브에 대한 지연 허용을 증가시키는 컴퓨팅 장치.
  14. 제12항에 있어서, 상기 정책 엔진은 운영 체제 기반 전력 관리 상태를 변경함으로써 상기 드라이브에 대한 지연 허용을 증가시키는 컴퓨팅 장치.
  15. 제14항에 있어서, 상기 정책 엔진은 BIOS ACPI(Advanced Configuration Power Interface) 특징을 통해 ACPI 상태를 변경함으로써 상기 드라이브에 대한 지연 허용을 증가시키는 컴퓨팅 장치.
  16. 제11항에 있어서, 상기 저장 드라이브를 제어하기 위한 플랫폼 BIOS 유틸리티를 포함하는 컴퓨팅 장치.
  17. 제11항에 있어서, 상기 정책 엔진은, 트랜잭션 액세스 요청들이 제1 시간량 동안 제출되지 않는 경우, 저장 드라이브 전력을 제1 전력 상태로 감소시키는 컴퓨팅 장치.
  18. 제17항에 있어서, 트랜잭션 요청들이 상기 제1 시간량 동안 제출되지 않는 경우, 상기 정책 엔진은, 액세스 요청들이 상기 제1 시간량을 초과하는 추가의 시간 동안에도 제출되지 않는 경우에, 드라이브 전력 상태를 제2 전력 상태로 감소시키며, 상기 제2 전력 상태는 상기 제1 전력 상태보다 더 적은 전력 소모를 야기하는 컴퓨팅 장치.
  19. 제18항에 있어서, 상기 제2 전력 상태는 상기 드라이브에 대한 제어기로의 전력을 감소시키는 것을 포함하는 컴퓨팅 장치.
  20. 제17항에 있어서, 상기 정책 엔진은, 트랜잭션 액세스 요청들이 상기 제1 시간량 동안 제출되지 않는 경우, 드라이브 지연을 제1 레벨로 증가시키는 컴퓨팅 장치.
  21. 제20항에 있어서, 상기 정책 엔진은, 액세스 요청들이 추가의 시간 동안 제출되지 않는 경우, 상기 드라이브 지연을 제2 레벨로 증가시키고, 상기 제2 레벨은 상기 제1 레벨보다 더 긴 컴퓨팅 장치.
  22. 장치로서,
    저장 드라이브;
    상기 저장 드라이브에 전력을 공급하는 전압 조정기;
    상기 저장 드라이브에 결합된 프로세서 - 상기 프로세서는, 상기 저장 드라이브에 대한 저장 드라이버를 실행함 -; 및
    상기 프로세서에 대해 구현된 별도의 전력 관리 시스템에 독립적인 상기 저장 드라이브에 대한 전력 및 지연 상태들을 제어하는, 상기 저장 드라이브 드라이버 내의, 정책 엔진 - 상기 정책 엔진은, 트랜잭션 액세스 요청들이 충분한 양의 시간 동안 상기 드라이버에게 제출되지 않는지를 결정하기 위해 상기 저장 드라이브 드라이버를 모니터링하도록 구성됨 -
    을 포함하고,
    트랜잭션 액세스 요청들이 충분한 양의 시간 동안 제출되지 않는 경우, 상기 장치는,
    상기 저장 드라이브에 대한 우선순위 세팅들을 변경하고,
    상기 저장 드라이브에 공급되는 전력을 감소시키고 - 적어도 하나의 레지스터가 노출된 운영 체제 전력 상태에 대한 플랫폼 지연을 증가시키는데 이용됨 -,
    저장 드라이브 트랜잭션 요청을 검출하고,
    상기 저장 드라이브 트랜잭션 요청이 상기 드라이브 상에 저장된 미디어에 대한 미디어 액세스 요청임을 결정하고,
    상기 드라이브에 대한 전력 능력을 증가시키고,
    상기 드라이브에 대한 지연 세팅을 감소시키도록
    구성되는 장치.
  23. 제22항에 있어서, 상기 프로세서는 상기 별도의 전력 관리 시스템을 구현하는 운영 체제를 실행하는 장치.
  24. 제23항에 있어서, 상기 별도의 전력 관리 시스템은 ACPI 시스템(Advanced Configuration and Power Interface system)인 장치.
KR1020137005814A 2010-09-30 2011-09-27 저장 드라이브 관리 KR101485274B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/894,670 US8595522B2 (en) 2010-09-30 2010-09-30 Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
US12/894,670 2010-09-30
PCT/US2011/053419 WO2012044609A2 (en) 2010-09-30 2011-09-27 Storage drive management

Publications (2)

Publication Number Publication Date
KR20130049201A KR20130049201A (ko) 2013-05-13
KR101485274B1 true KR101485274B1 (ko) 2015-01-21

Family

ID=45890854

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137005814A KR101485274B1 (ko) 2010-09-30 2011-09-27 저장 드라이브 관리

Country Status (7)

Country Link
US (2) US8595522B2 (ko)
EP (1) EP2622468A4 (ko)
JP (1) JP5730999B2 (ko)
KR (1) KR101485274B1 (ko)
CN (1) CN102763075B (ko)
TW (1) TWI539272B (ko)
WO (1) WO2012044609A2 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595522B2 (en) 2010-09-30 2013-11-26 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
US9201677B2 (en) * 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US8996807B2 (en) 2011-02-15 2015-03-31 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a multi-level cache
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US8713204B2 (en) 2011-12-27 2014-04-29 Apple Inc. High-performance AHCI interface
US10073656B2 (en) 2012-01-27 2018-09-11 Sandisk Technologies Llc Systems and methods for storage virtualization
US10359972B2 (en) 2012-08-31 2019-07-23 Sandisk Technologies Llc Systems, methods, and interfaces for adaptive persistence
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
CN104081314A (zh) * 2012-07-27 2014-10-01 惠普发展公司,有限责任合伙企业 实现计算设备中的关机状态
US9158357B2 (en) * 2012-12-28 2015-10-13 Intel Corporation System and method for conveying service latency requirements for devices connected to low power input/output sub-systems
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
US9697130B2 (en) 2014-06-25 2017-07-04 Sandisk Technologies Llc Systems and methods for storage service automation
TWI612475B (zh) * 2015-09-09 2018-01-21 緯創資通股份有限公司 伺服器及其控制方法
WO2017126097A1 (ja) * 2016-01-22 2017-07-27 株式会社日立製作所 計算機システム、計算機
US9740267B1 (en) 2016-10-31 2017-08-22 International Business Machines Corporation Adjusting power management controls of a memory based on traffic
JP6249121B1 (ja) * 2017-03-30 2017-12-20 日本電気株式会社 消費電力削減装置、消費電力削減方法および消費電力削減プログラム
US10445257B2 (en) * 2017-04-30 2019-10-15 Microsoft Technology Licensing, Llc Execution of subset of driver code in separate protection domain
US10739840B2 (en) * 2017-07-31 2020-08-11 Dell Products L.P. System and method of utilizing operating context information
TWI639921B (zh) 2017-11-22 2018-11-01 大陸商深圳大心電子科技有限公司 指令處理方法及使用所述方法的儲存控制器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040018086A (ko) * 2002-08-22 2004-03-02 엘지전자 주식회사 컴퓨터 시스템의 전원 관리방법 및 장치
KR20050048639A (ko) * 2002-09-30 2005-05-24 인텔 코오퍼레이션 성능 관리를 위한 제한 인터페이스
US20090119530A1 (en) 2002-03-21 2009-05-07 Tempest Microsystems Lower power disk array as a replacement for robotic tape storage
US20100241883A1 (en) * 2009-03-22 2010-09-23 Jen-Hung Liao Method for controlling power consumption of a usb mass storage, associated personal computer, and storage medium storing an associated usb mass storage driver

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471625A (en) 1993-09-27 1995-11-28 Motorola, Inc. Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode
US5452277A (en) * 1993-12-30 1995-09-19 International Business Machines Corporation Adaptive system for optimizing disk drive power consumption
US5481733A (en) * 1994-06-15 1996-01-02 Panasonic Technologies, Inc. Method for managing the power distributed to a disk drive in a laptop computer
US7188261B1 (en) 2001-05-01 2007-03-06 Advanced Micro Devices, Inc. Processor operational range indicator
US20020199129A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corp. Data storage on a computer disk array
US7573715B2 (en) * 2002-03-21 2009-08-11 Tempest Microsystems High density storage system
US7143203B1 (en) 2002-04-26 2006-11-28 Advanced Micro Devices, Inc. Storage device control responsive to operational characteristics of a system
US7028200B2 (en) 2002-05-15 2006-04-11 Broadcom Corporation Method and apparatus for adaptive power management of memory subsystem
ATE357689T1 (de) 2002-09-09 2007-04-15 Koninkl Philips Electronics Nv Verfahren und vorrichtung zur verwaltung der stromaufnahme eines plattenlaufwerks
US7376851B2 (en) * 2002-10-31 2008-05-20 Lg Electronics Inc. Apparatus and method for managing power in computer system
US7114064B2 (en) * 2002-11-14 2006-09-26 Hewlett-Packard Development Company, L.P. System and method for accessing an advanced configuration and power interface (ACPI) namespace nodal tree
US7142995B2 (en) * 2003-03-18 2006-11-28 Mitac Technology Corp. Method for reading battery status by operation system of portable computer
CN1839369A (zh) * 2003-08-20 2006-09-27 皇家飞利浦电子股份有限公司 动态存储缓冲器
US7266711B2 (en) 2003-11-17 2007-09-04 Intel Corporation System for storing data within a raid system indicating a change in configuration during a suspend mode of a device connected to the raid system
JP4518541B2 (ja) * 2004-01-16 2010-08-04 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP2005316593A (ja) * 2004-04-27 2005-11-10 Sony Corp 電力制御装置及び電力制御方法
JP4293948B2 (ja) * 2004-07-09 2009-07-08 富士通株式会社 ディスク装置およびディスク装置の制御方法
JP4404751B2 (ja) * 2004-11-16 2010-01-27 富士通株式会社 情報処理システム,ストレージ装置,ストレージ制御プログラム,及びストレージ制御プログラムを記録したコンピュータ読取可能な記録媒体
US7814485B2 (en) 2004-12-07 2010-10-12 Intel Corporation System and method for adaptive power management based on processor utilization and cache misses
JP2006251982A (ja) 2005-03-09 2006-09-21 Matsushita Electric Ind Co Ltd 省電力システム、記録媒体、ドライバ及びプログラム
US7383457B1 (en) 2005-03-23 2008-06-03 Apple Inc. Adaptive power-reduction mode
US9047415B2 (en) * 2005-06-10 2015-06-02 Freescale Semiconductor, Inc. Device and method for media access control
KR20070013404A (ko) * 2005-07-26 2007-01-31 엘지전자 주식회사 저장 장치 전원 제어 장치 및 방법
CN2901666Y (zh) * 2006-03-28 2007-05-16 蓝天电脑股份有限公司 电源管理装置
JP4897387B2 (ja) 2006-08-10 2012-03-14 株式会社日立製作所 ストレージ装置およびこれを用いたデータの管理方法
DK2195724T3 (da) 2007-08-28 2020-01-20 Commvault Systems Inc Energistyring af databehandlingsressourcer, såsom adaptiv energistyring af datalagringsoperationer
US8156353B2 (en) 2007-09-17 2012-04-10 Intel Corporation Techniques for communications power management based on system states
US8176341B2 (en) 2008-03-31 2012-05-08 Intel Corporation Platform power management based on latency guidance
JP2010015446A (ja) 2008-07-04 2010-01-21 Hitachi Ltd ストレージ装置及び電源の制御方法
WO2010092699A1 (en) 2009-02-16 2010-08-19 Hitachi, Ltd. Storage apparatus and its power saving control method
US8566628B2 (en) 2009-05-06 2013-10-22 Advanced Micro Devices, Inc. North-bridge to south-bridge protocol for placing processor in low power state
US8108650B2 (en) * 2009-05-29 2012-01-31 Apple Inc. Translation lookaside buffer (TLB) with reserved areas for specific sources
US8595522B2 (en) 2010-09-30 2013-11-26 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
US8700936B2 (en) 2010-12-03 2014-04-15 Schneider Electric It Corporation Modular gating of microprocessor low-power mode
US9015396B2 (en) 2012-09-18 2015-04-21 Apple Inc. Reducing latency in a peripheral component interconnect express link
US20140173306A1 (en) 2012-12-19 2014-06-19 Barnes Cooper System and method for providing for power savings in a processor environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119530A1 (en) 2002-03-21 2009-05-07 Tempest Microsystems Lower power disk array as a replacement for robotic tape storage
KR20040018086A (ko) * 2002-08-22 2004-03-02 엘지전자 주식회사 컴퓨터 시스템의 전원 관리방법 및 장치
KR20050048639A (ko) * 2002-09-30 2005-05-24 인텔 코오퍼레이션 성능 관리를 위한 제한 인터페이스
US20100241883A1 (en) * 2009-03-22 2010-09-23 Jen-Hung Liao Method for controlling power consumption of a usb mass storage, associated personal computer, and storage medium storing an associated usb mass storage driver

Also Published As

Publication number Publication date
US20140136872A1 (en) 2014-05-15
WO2012044609A3 (en) 2012-06-07
US20120084582A1 (en) 2012-04-05
US8595522B2 (en) 2013-11-26
EP2622468A2 (en) 2013-08-07
TW201224737A (en) 2012-06-16
JP5730999B2 (ja) 2015-06-10
US9507402B2 (en) 2016-11-29
WO2012044609A2 (en) 2012-04-05
EP2622468A4 (en) 2014-04-02
CN102763075A (zh) 2012-10-31
TWI539272B (zh) 2016-06-21
JP2013538411A (ja) 2013-10-10
KR20130049201A (ko) 2013-05-13
CN102763075B (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
KR101485274B1 (ko) 저장 드라이브 관리
USRE47658E1 (en) Heat dissipation system for computers
US10275260B2 (en) Collaborative processor and system performance and power management
US7447824B2 (en) Dynamic lane management system and method
US8327177B2 (en) System and method for information handling system storage device power consumption management
US8285909B2 (en) Hardware assisted endpoint idleness detection for USB host controllers
US20110047316A1 (en) Solid state memory device power optimization
US20180314309A1 (en) Smart usb power management
US8281171B2 (en) Adjustment of power-saving strategy depending on working state of CPU
US20090276647A1 (en) Storage device power consumption state
US11086390B2 (en) Method and apparatus for improving power management by controlling a system input current in a power supply unit
CN108205478B (zh) 智能序列式小型计算机***接口物理层功率管理
TWI780359B (zh) 資訊處理系統及向電力軌供電以向資訊處理系統的負荷供電的方法
US20100169522A1 (en) Method and apparatus to defer usb transactions
TWI805855B (zh) 電力輔助之資訊處理系統、電力輔助單元及用以調節至資訊處理系統之負載的電力之方法

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: 20180103

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee