KR20220002095A - 전력을 검출 및 할당하는 장치 및 및 관련 방법 - Google Patents
전력을 검출 및 할당하는 장치 및 및 관련 방법 Download PDFInfo
- Publication number
- KR20220002095A KR20220002095A KR1020210073525A KR20210073525A KR20220002095A KR 20220002095 A KR20220002095 A KR 20220002095A KR 1020210073525 A KR1020210073525 A KR 1020210073525A KR 20210073525 A KR20210073525 A KR 20210073525A KR 20220002095 A KR20220002095 A KR 20220002095A
- Authority
- KR
- South Korea
- Prior art keywords
- power
- pins
- accelerator
- accelerators
- unused
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000009662 stress testing Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 238000012360 testing method Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013403 standard screening design Methods 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/266—Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J1/00—Circuit arrangements for dc mains or dc distribution networks
- H02J1/14—Balancing the load in a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R19/00—Arrangements for measuring currents or voltages or for indicating presence or sign thereof
- G01R19/165—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
- G01R19/16533—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application
- G01R19/16538—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application in AC or DC supplies
- G01R19/16552—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application in AC or DC supplies in I.C. power supplies
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R22/00—Arrangements for measuring time integral of electric power or current, e.g. electricity meters
- G01R22/06—Arrangements for measuring time integral of electric power or current, e.g. electricity meters by electronic methods
- G01R22/061—Details of electronic electricity meters
- G01R22/065—Details of electronic electricity meters related to mechanical aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/18—Packaging or power distribution
- G06F1/189—Power distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/28—Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
- G06F11/3062—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J1/00—Circuit arrangements for dc mains or dc distribution networks
- H02J1/08—Three-wire systems; Systems having more than three wires
- H02J1/082—Plural DC voltage, e.g. DC supply voltage with at least two different DC voltage levels
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J2310/00—The network for supplying or distributing electric power characterised by its spatial reach or by the load
- H02J2310/50—The network for supplying or distributing electric power characterised by its spatial reach or by the load for selectively controlling the operation of the loads
- H02J2310/56—The network for supplying or distributing electric power characterised by its spatial reach or by the load for selectively controlling the operation of the loads characterised by the condition upon which the selective controlling is based
- H02J2310/58—The condition being electrical
-
- 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)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
Abstract
추가 전력을 자가-검출 및 자가-할당할 수 있는 장치 및 관련 방법이 개시된다. 상기 장치는 하나 이상의 제1 파워 핀들로부터 상기 제1 전압 레벨을 갖는 전압 레일로 전류를 라우팅하는 제1 모듈을 포함한다. 상기 장치는 제2 전압 레벨과 관련된 제2 파워 핀들에 연결된 제2 모듈을 포함한다. 상기 제2 모듈은 연결 전압 레일을 통해 제2 파워 핀들로부터 상기 제1 전압 레벨을 갖는 상기 전압 레일로 전류를 라우팅한다. 상기 방법은 상기 장치에 의해, 미사용 파워 핀들의 존재가 검출되는지 여부를 결정하는 단계를 포함한다. 상기 검출에 기초하여, 상기 방법은 미사용 파워 핀의 존재를 기반으로 이용 가능한 추가 전력의 총량을 계산하는 단계, 미사용 파워 핀을 활발히 사용되는 파워 핀으로 용도 변경하는 단계, 및 이용 가능한 추가 전력의 총량에 기초하여 전력 예산 값을 갱신하는 단계를 포함한다. 상기 장치는 전력 할당 테이블 및 전력 예산 값에 기초하여 가속기에 전력을 동적으로 할당할 수 있다.
Description
본 개시는 장치와 관련된 전력 관리에 관한 것으로, 특히 전력을 검출하고 할당할 수 있는 장치에 관한 것이다.
어떤 장치들은 최대 전력 소비를 지원할 수 있다. 그러나, 상기 장치들은 장치에 의해 소비되는 실제 전력을 검출 및/또는 통지(report)하지 못할 수 있다. 또한, 상기 장치들은 예컨대, 사용된 커넥터들의 개수, 사용된 커넥터 타입 및/또는 커넥터 폼 팩터의 두께에 기초하여 서로 다른 폼 팩터들에 따라 서로 다른 전력 예산을 지원하지 않을 수 있다.
서로 다른 전원 구성으로 인해, 장치에 필요한 전력을 검출 및 결정하고 사용자 개입 없이 적절하게 전력을 동적으로 조정할 수 있는 시스템의 능력이 요구된다. 최대 개수의 저장 장치들을 허용되는 최대 전력까지 추가함으로써 전력 일부가 제공될 수 있다. 컴퓨팅 스토리지 가속 태스크(Computational storage acceleration tasks)는 때때로 지정된 최대 전력을 초과하는 장치에서 실행될 수 있다. 성능 및/또는 전력 조절 펌웨어를 배포하여 전력을 최대 전력 한도 이내로 줄이고 유지하도록 할 수 있지만, 이는 복잡성을 추가하고 비용 및/또는 성능 이점을 무효화할 수 있다. 장치가 시스템에서 제공하는 추가 전력을 자동으로 검출하거나 미사용 파워 핀을 사용하도록 지원하지 않을 수 있다.
본 개시의 목적은 전력을 검출 및 할당하는 장치 및 및 관련 방법을 제공하는데 있다.
본 개시의 다양한 실시예는 제1 전압 레벨과 관련된 하나 이상의 제1 파워 핀들에 연결된 제1 모듈을 포함하는 장치를 포함한다. 상기 제1 모듈은 전류를 하나 이상의 제1 파워 핀들로부터 상기 제1 전압 레벨을 갖는 전압 레일로 라우팅하도록 구성될 수 있다. 상기 장치는 제2 전압 레벨과 관련된 하나 이상의 제2 파워 핀들에 연결된 제2 모듈을 포함할 수 있다. 상기 제2 모듈은 연결 전압 레일을 통해 하나 이상의 제2 파워 핀들로부터 상기 제1 전압 레벨을 갖는 상기 전압 레일로 전류를 라우팅하도록 구성될 수 있다.
일부 실시예는 장치의 전력을 관리하는 방법을 포함한다. 상기 방법은 상기 장치에 의해, 미사용 파워 핀의 존재가 검출되는지 여부를 결정하는 단계를 포함할 수 있다. 미사용 파워 핀의 존재가 검출된다는 결정에 기초하여, 상기 방법은 이용 가능한 추가 전력의 총량을 계산하는 단계, 미사용 파워 핀을 활발히 사용되는 파워 핀으로 용도 변경하는 단계, 및 이용 가능한 추가 전력의 총량에 기초하여 전력 예산 값을 갱신하는 단계를 포함할 수 있다.
본 개시의 실시 예들에 따르면, 전력을 검출 및 할당하는 장치 및 및 관련 방법을 제공할 수 있다. 또한, 본 개시의 실시 예들에 따르면, 장치에 필요한 전력을 검출 및 결정하고 사용자 개입 없이 적절하게 전력을 동적으로 조정할 수 있다.
본 개시의 전술한 그리고 추가적인 특징 및 이점들은 첨부된 도면을 참조한 다음의 상세한 설명으로부터 보다 용이하게 명백해질 것이다.
도 1은 일부 실시예에 따른, 추가 전력을 자가 검출 및 자가 할당할 수 있는 장치의 블록도를 도시한다.
도 2는 일부 실시예에 따른, 추가 전력을 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도이다.
도 3은 일부 실시예에 따른, 추가 전력을 그 외 미사용 핀들로부터 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도이다.
도 4는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 결정하고 저장하기 위한 기술을 나타낸 흐름도이다.
도 5는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 관리하기 위한 기술을 나타낸 흐름도이다.
도 6은 일부 실시예에 따른, 도 1의 전력 할당 테이블의 블록도를 도시한다.
도 7은 일부 실시예에 따른, 호스트 및 도 1의 장치를 포함하는 시스템을 도시한다.
도 1은 일부 실시예에 따른, 추가 전력을 자가 검출 및 자가 할당할 수 있는 장치의 블록도를 도시한다.
도 2는 일부 실시예에 따른, 추가 전력을 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도이다.
도 3은 일부 실시예에 따른, 추가 전력을 그 외 미사용 핀들로부터 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도이다.
도 4는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 결정하고 저장하기 위한 기술을 나타낸 흐름도이다.
도 5는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 관리하기 위한 기술을 나타낸 흐름도이다.
도 6은 일부 실시예에 따른, 도 1의 전력 할당 테이블의 블록도를 도시한다.
도 7은 일부 실시예에 따른, 호스트 및 도 1의 장치를 포함하는 시스템을 도시한다.
이하 본 개시는 실시예들을 참조하여 상세히 이루어질 것이며, 상기 실시예들의 예들은 첨부 도면에 도시되어 있다. 이하의 상세한 설명에서, 본 발명의 완전한 이해를 가능하게 하기 위해 다수의 특정 세부사항이 설명된다. 그러나, 당업자는 이러한 특정 세부사항 없이 본 발명을 실시할 수 있음을 이해해야 한다. 다른 예로서, 공지된 방법, 절차, 구성요소, 회로 및 네트워크는 실시예들의 측면을 불필요하게 모호하게 하지 않도록 상세하게 기술되지 않는다.
비록 "제1", "제2" 등의 용어가 본 명세서에서 다양한 엘리먼트들을 설명하기 위해 사용될 수 있지만, 이들 엘리먼트들은 이들 용어에 의해 제한되지 않음을 이해할 것이다. 이들 용어들은 하나의 엘리먼트를 다른 엘리먼트와 구별하기 위해서만 사용된다. 예를 들어, 본 발명의 범위를 벗어나지 않으면서 제1 장치는 제2 장치로 명명될 수 있고, 유사하게 제2 장치는 제1 장치로 명명될 수 있다.
본 발명의 설명에서 사용된 용어는 특정 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 발명의 설명 및 첨부된 특허청구범위에서 사용된 바와 같이, 단수 형태 "a", "an" 및 "the"는 문맥상 명백하게 달리 나타내지 않는 한 복수 형태도 포함하도록 의도된다. 본 명세서에서 사용된 용어 "및/또는"은 하나 이상의 관련되어 열거된 아이템들의 임의의 및 모든 가능한 조합을 지칭하고 포함하는 것으로 또한 이해될 것이다. 본 명세서에서 사용될 때 "포함한다" 및/또는 "포함하는"이라는 용어는 언급된 특징, 정수, 단계, 동작, 소자 및/또는 구성요소의 존재를 특정하지만 하나 이상의 다른 특징, 정수, 단계, 동작, 소자, 구성요소 및/또는 그 그룹의 존재 또는 추가를 배제하지는 않는다는 것이 또한 이해될 것이다. 도면의 구성요소와 특징은 반드시 축척 방식에 따라 그려진 것은 아니다.
일부 U.2 기반 장치들은 장치 당 약 25와트(W)의 최대 전력 소비를 지원할 수 있다. 그러나, 상기 장치들은 장치에 의해 소비되는 실제 전력을 검출 및/또는 통지(report)하지 못할 수 있다. 최근, PCI SIG(Peripheral Component Interconnect Special Interest Group)에서 SFF-TA-100X라는 새로운 확장 가능한 커넥터 클래스가 제안되었는데, 여기서 X는 2, 6, 7, 8 등이 될 수 있다. 장치는 폼 팩터들, 예컨대, 사용된 1002 (1C, 2C 또는 4C) 커넥터의 개수 또는 사용된 커넥터 타입 및 폼 팩터의 두께(예컨대, 1X 또는 2X)에 따라 서로 다른 전력 예산을 지원하지 않을 수 있다. 2X 커넥터는 1X 커넥터보다 약 두 배 많은 전력을 소비할 수 있다. 제안된 SFF-TA-1008은 일부에 의해 SSD(Solid State Drive)를 위한 차세대 커넥터 폼 팩터로서 예측되고 있다.
SFF-TA-100X 기반 시스템의 서로 다른 전원 구성으로 인해, 설치된 SFF-TA-100X 기반 장치에 필요한 전력을 검출 및 결정하고 사용자 개입 없이 적절하게 전력을 동적으로 조정할 수 있는 시스템 기능이 필요할 수 있다. 최대 개수의 저장 장치들을 허용되는 최대 전력까지 추가함으로써 전력 일부가 제공될 수 있다. 컴퓨팅 스토리지 가속 태스크(Computational storage acceleration tasks)는 때때로 지정된 최대 전력을 초과하는 장치에서 실행될 수 있다. 성능 및/또는 전력 조절 펌웨어를 배포하여 전력을 최대 전력 한도 이내로 줄이고 유지하도록 할 수 있지만, 이는 복잡성을 추가하고 비용 및/또는 성능 이점을 무효화할 수 있다. 장치가 시스템에서 제공하는 추가 전력을 자동으로 검출하도록 지원하지 않을 수 있다.
개시된 실시예들은 U.2 커넥터, PCI(Peripheral Component Interconnect Express) 커넥터, SFF-TA-100X 커넥터 등과 같은 커넥터를 갖는 임의의 장치가 시스템에서 제공하는 기존 사용되는 파워 핀 및/또는 추가 미사용 파워 핀 상의 전류 및/또는 전력을 검출하고 해당 전력을 적절한 전압 레일로 라우팅함으로써, 프로세서, 서비스 프로세서, BMC(baseboard management controller), 매니저, 컨트롤러 등과 필수적으로 상호 작용할 필요 없이 정상 최대 전력을 초과하는 추가 전력을 자동으로 검출할 수 있도록 하는 장치, 시스템 및 방법을 포함한다. 이에 의해, 임의의 시스템 벤더는 시스템 벤더의 기존 섀시를 변경하거나, 전류를 증가시켜 추가 전력을 제공하거나, 및/또는 U.2 커넥터의 하나 이상의 사용가능한 미사용 및/또는 예비 핀을 12볼트(V) 파워 핀으로 사용함으로써 맞춤형 솔루션을 가질 수 있다. 일부 실시예에서, 파워 핀은 직류(DC) 파워 핀일 수 있다.
여기에 개시된 일부 실시예는 추가 전력을 자가-검출 및 자가-할당할 수 있는 SSD와 같은 저장 장치를 포함할 수 있다. 여기에 개시된 일부 실시예는 그래픽 처리 장치(GPU)를 포함할 수 있다. 여기에 개시된 일부 실시예는 CXL(compute express link) 장치를 포함할 수 있다. 개시된 장치, 시스템 및 방법은 추가 전력 및/또는 추가 전류 소스를 검출하기 위해 전압 및/또는 전류 검출 로직을 사용할 수 있다. 상기 장치는 자체 전력 할당 테이블을 유지하고 하나 이상의 구성요소가 더 높은 전력 레벨 또는 범위에서 실행할 수 있도록 한다. 개시된 장치, 시스템 및 방법은 U.2의 미사용 5V 핀 또는 예비(E15/S16) 핀과 같은 미사용 및/또는 예비 핀을 통해 추가 전력을 제공할 수 있다. 개시된 장치, 시스템 및 방법은 추가 전력을 적절한 전압 레일로 자동으로 라우팅할 수 있다. 개시된 장치, 시스템 및 방법은 현재의 표준 U.2 커넥터와 호환될 수 있으며 SFF-TA-100X 및 PCIe 커넥터 등과 같은 다른 커넥터에 적용 가능하다.
여기에 개시된 실시예들은 표준 12V 핀의 전류를 증가시킴으로써 및/또는 추가 파워 핀을 제공하기 위해 예비 핀을 사용함으로써 개시된 시스템이 추가 전력을 제공하는 능력을 제공할 수 있다. 개시된 시스템은 타사 시스템 벤더(third party system)가 기존 인프라의 대부분을 재사용할 수 있도록 한다. 결과적으로 타사 시스템 벤더는 예컨대, SSD 기반 시스템을 시장에 더 빨리 출시할 수 있다. 개시된 장치, 시스템 및 방법은 서비스 프로세서 또는 BMC와 협상하지 않고도 작동할 전력의 양을 결정할 수 있으며, 그에 따라 미드플레인의 일부 추가 파워 핀 외에는 더 적은 설계 변경을 달성할 수 있다.
개시된 장치, 시스템 및 방법은 표준 커넥터를 사용하여 이용 가능한 추가 전력을 검출할 수 있다. 파워-온 이후, 상기 장치는 시스템에서 제공하는 이용 가능한 전원의 양을 검출하고 결정할 수 있다. 상기 장치는 추가 가속기가 추가 전력의 이점을 취할 수 있도록 한다. 추가 전력은 a) 기존 12V 핀 상에서의 전류를 증가시키건, b) 미사용 핀에 전력을 연결시키거나 또는 c) 전력을 예비 핀으로 연결함으로써 제공될 수 있다. 상기 장치는 각 가속기의 내부 전력 소비 기록을 유지할 수 있으며 사용할 가속기를 선택 및/또는 활성화할 수 있다.
도 1은 일부 실시예에 따라 추가 전력을 자가 검출 및 자가 할당할 수 있는 장치(105)의 블록도를 도시한다. 장치(105)는 SSD, 섀시, ASIC(application specific integrated circuit), FPGA(field programmable gate array) 등을 포함할 수 있다. 장치(105)는 개선된 미드플레인(mid-plane)(102)를 예외로 하면 하드웨어 및/또는 소프트웨어 인프라에 대한 주요한 변경없이 기존 섀시와 함께 사용될 수 있다. 미드플레인(102)은 파워 핀들(예컨대, 110, 125, 및 130)을 포함할 수 있다. 장치(105)는 장치(105)에 이용가능한 전류를 증가시키도록 개선될 수 있는 전력 배전 보드(104)를 포함할 수 있다.
장치(105)는 전력 제어 및 보호 모듈(115)을 포함할 수 있다. 전력 제어 및 보호 모듈(115)은 P13, P14 및 P15와 같은 12V 핀들(110)에 연결될 수 있다. 전력 제어 및 보호 모듈(115)이 다른 핀에 연결될 수 있음을 이해할 것이다. 전력 제어 및 보호 모듈(115)은 파워 핀들(110) 중 하나 이상을 12V 전압 레일(120)로 라우팅할 수 있다. 장치(105)는 전압 검출 및 라우팅 모듈(118)을 포함할 수 있다. 전압 검출 및 라우팅 모듈(118)은 P7, P8 및 P9와 같은 미사용 5V 핀들(125)에 연결될 수 있다. 전압 검출 및 라우팅 모듈(118)은 E15 및 E16과 같은 예비 핀들(130)에 연결될 수 있다. 전압 검출 및 라우팅 모듈(118)은 다른 핀에 연결될 수 있음을 이해할 것이다.
전압 검출 및 라우팅 모듈(118)이 하나 이상의 미사용 5V 핀들(125)과 관련된 12V 전압 소스를 검출하는 것에 기초하여, 전압 검출 및 라우팅 모듈(118)은 12V 연결 전압 레일(135)을 통해 하나 이상의 미사용 파워 핀(125)을 12V 전압 레일(120)로 라우팅할 수 있다. 전압 검출 및 라우팅 모듈(118)이 하나 이상의 미사용 5V 핀들(125)과 관련된 12V 전압 소스를 검출하는 것에 기초하여, 전압 검출 및 라우팅 모듈(118)은 하나 이상의 미사용 파워 핀(125)을 5V 전압 레일(140)로 라우팅할 수 있다. 전압 검출 및 라우팅 모듈(118)이 하나 이상의 예비 핀들(130)과 관련된 12V 전압 소스를 검출하는 것에 기초하여, 전압 검출 및 라우팅 모듈(118)은 12V 연결 전압 레일(135)을 통해 하나 이상의 예비 핀(130)을 12V 전압 레일(120)로 라우팅할 수 있다. 전압 검출 및 라우팅 모듈(118)이 하나 이상의 예비 핀들(130)과 관련된 12V 전압 소스를 검출하는 것에 기초하여, 전압 검출 및 라우팅 모듈(118)은 하나 이상의 예비 핀(130)을 12V 전압 레일(120)로 라우팅할 수 있다.
상기 장치(105)는 3.3V 컨버터(122) 및/또는 1.8V 컨버터(124)를 포함할 수 있다. 3.3V 컨버터(122)는 12V 전압 레일(120)과 관련된 12V 전압을 3.3V 전압 레일(145)과 관련된 3.3V 전압으로 변환할 수 있다. 1.8V 컨버터(124)는 12V 전압 레일(120)과 관련된 12V 전압을 1.8V 전압 레일(150)과 관련된 1.8V 전압으로 변환할 수 있다. 상기 장치(105)는 제2 3.3V 컨버터(155)를 포함할 수 있다. 3.3V 컨버터(155)는 미사용 핀들(예컨대, 125 및/또는 130)과 관련된 전압을 수신하고 3.3V 전압 레일(145)과 관련된 3.3V 전압으로 변환할 수 있다. 상기 장치(105)가 임의의 적절한 전압 컨버터 및 관련 전압 레일을 포함할 수 있음을 이해할 것이다.
상기 장치는 하나 이상의 가속기(160)를 포함할 수 있다. 하나 이상의 가속기(160)는 상기 장치(105)의 성능을 향상시키는 성능 가속기일 수 있다. 하나 이상의 가속기(160)는 임베디드 중앙 처리 장치(CPU), 텐서코어(TensorCore), ASIC, FPGA, 펌웨어, 소프트웨어 등 또는 이들의 임의의 조합과 같은 하나 이상의 구성요소를 포함할 수 있다. 하나 이상의 가속기(160)는 CPU, 텐서코어, ASIC, FPGA 등이 부착되거나 다른 방식으로 연관된, 프로세싱 및/또는 데이터 스토리지를 가속하는 임의의 적절한 수단을 포함할 수 있다.
상기 장치(105)는 가속기들(160) 각각의 전력 사용량을 저장하기 위한 전력 할당 테이블(108)을 포함할 수 있다. 전력 할당 테이블(108)은 상기 장치(105)의 DRAM(dynamic random access memory)과 같은 휘발성 메모리에 저장될 수 있다. 대안적으로 또는 추가적으로, 전력 할당 테이블(108)은 SSD와 같은 비휘발성 메모리에 영구적으로 저장될 수 있다. 상기 장치(105)는 전력 할당 테이블(108)에 저장된 전력 사용량 정보에 기초하여 하나 이상의 가속기(160)에 전력을 동적으로 할당하는 동적 전력 할당기 모듈(165)을 포함할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 이하 더 설명되는 바와 같이 하나 이상의 가속기(160)를 활성화하는 요청을 처리할 수 있다.
도 2는 일부 실시예에 따른, 추가 전력을 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도(200)이다. 도 1 및 도 2를 참조하여 설명이 제공된다.
205에서, 장치(105)는 파워-온될 수 있다. 일부 실시예에서, POST(power-on self-test)가 수행될 수 있다. 210에서, 상기 장치(105)는 추가 파워 핀들이 검출되는지 여부를 결정할 수 있다. 추가 파워 핀들이 감지되지 않는다는 결정에 기초하여 215에서 정상 전원 예산 값이 사용될 수 있다. 그렇지 않으면, 추가 파워 핀들이 검출된다는 결정에 기초하여, 상기 장치(105)는 220에서 추가 12V 핀들이 이용 가능한지 여부를 결정할 수 있다. 220에서의 추가 12V 핀들이 이용 가능하다는 결정을 기초하여, 추가 25W의 전력이 전력 예산 값에 이용 가능하게 될 수 있다. 그렇지 않으면, 220에서의 12V보다 낮은 추가 전압 레일이 이용 가능하다는 결정에 기초하여, 상기 장치(105)는 230에서 이용 가능한 추가 DC 전력의 총량을 계산할 수 있다.
예컨대, 상기 장치(105)는 230에서 이용 가능한 추가 전력의 총량을 결정하기 위해 "전력은 전압과 전류의 곱과 같다"(즉, P = VI)에 대응하는 방정식을 사용할 수 있다. 검출된 각 추가 파워 핀에 대해, 방정식 P = VI를 사용하여 각각의 추가 파워 핀에 대해 이용 가능한 추가 전력의 총량이 결정될 수 있다. 예컨대, 상기 장치(105)는 특정 핀과 관련된 전압 및 전류를 검출하고 검출된 전압 및 전류에 기초하여 특정 핀과 관련된 전력을 계산할 수 있다. 즉, 이용 가능한 추가 전력 값의 총량은 각 추가 파워 핀에 대해 계산된 전력 값을 집계하여 결정될 수 있다. 235에서, 상기 장치(105)에 이용 가능한 전력 예산 값이 갱신될 수 있다. 즉, 이용 가능한 추가 전력의 총량은 상기 장치(105)에 이용 가능한 전력 예산 값에 합산될 수 있다.
12V 핀들의 정확한 전류 값을 측정하고 추가 핀 상의 전력을 검출함으로써, 상기 장치(105)는 서비스 프로세서와 반드시 협상하지 않고도 상기 장치(105)가 소비할 수 있는 전력량을 테이블로 만들 수 있다. 상기 장치(105)는 미사용 핀 및/또는 예비 핀을 사용하여 최대 50W 이상의 전력을 제공할 수 있다. 일부 실시예에서, 최대 전력 예산 값은 상기 장치(105)의 펌웨어에 의해 결정될 수 있다. 대안적으로 또는 추가로, 호스트 및/또는 BMC는 GPIO(general-purpose input/output), NVMe-MI(non-volatile memory express management interface), SMBus(system management bus) 등과 같은 하나 이상의 인터페이스를 사용하여 전력 예산 값을 제공할 수 있다.
도 3은 일부 실시예에 따른, 추가 전력을 그 외 미사용 핀들로부터 자가 검출 및 자가 할당하기 위한 기술을 나타낸 흐름도(300)이다. 도 1 및 도 3를 참조하여 설명이 제공된다.
305에서, 상기 장치(105)는 파워-온될 수 있다. 310에서, 상기 장치(105)는 하나 이상의 미사용 핀을 검출할 수 있다. 310에서 미사용 핀이 없음을 검출한 것에 기초하여, 상기 장치(105)는 315에서 정상 전력 예산 값을 사용할 수 있다. 그렇지 않으면, 310에서 미사용 핀이 있음을 검출한 것에 기초하여, 상기 장치(105)는도 2를 참조하여 전술한 바와 같이 320에서 상기 장치(105)에 이용 가능한 가용 추가 전력의 총량을 계산할 수 있다. 325에서, 상기 장치(105)는 미사용 핀을 활발히 사용되는 파워 핀으로서 용도 변경할 수 있다. 이것은 이전에 사용되지 않은 핀으로부터 이용 가능하게 된 추가 전력을 상기 장치(105)의 적절한 전압 레일(예컨대, 12V 전압 레일(120), 5V 전압 레일(140) 등)로 라우팅하는 것을 포함할 수 있다. 330에서, 상기 장치(105)에 이용 가능한 전력 예산 값이 갱신될 수 있다. 즉, 320에서 결정된 총 가용 추가 전력 값은 330에서 상기 장치(105)에 이용 가능한 전력 예산 값에 합산될 수 있다.
상기 장치(105)의 파워 온 프로세스 동안, 최대 가용 전력 공급(즉, 전력 예산 값)이 결정될 수 있고, 이어서 가속기들(160) 중에서 각각의 개별 가속기의 테스트가 수행될 수 있다. 이것은 전력 사용과 관련된 처리 장치 및 테스트를 나열할 수 있고, 이하 더 설명되는 바와 같이 차트 또는 전력 할당 테이블(108)에 이 정보를 저장할 수 있다. 이 정보는 처리 및 테스트가 상기 장치(105)의 가용 전력 예산 내에 맞지 않을 수 있는 기간 동안 추가 가속 장치를 구현하거나 포함하도록 상기 장치의 능력을 결정하기 위해 상기 장치(105)에 의해 사용될 수 있다.
도 4는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 결정하고 저장하기 위한 기술을 나타낸 흐름도(400)이다. 도 1 및 도 4를 참조하여 설명이 제공된다.
405에서, 상기 장치(105)는 파워-온될 수 있다. 410에서, 상기 장치(105)는 도 2 및 3을 참조하여 전술한 바와 같이 상기 장치(105)에 이용 가능한 전력 예산 값을 결정할 수 있다. 일부 실시예에서, 동적 전력 할당기 모듈(165)은 전력 예산 값을 결정할 수 있다. 일부 실시예에서, 상기 장치(105)는 호스트로부터 전력 예산 값을 수신할 수 있다. 415에서, 상기 장치(105)는 상기 장치(105)가 이용 가능한 가속기(160)를 포함하는지 여부를 결정할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 상기 장치(105)가 이용 가능한 가속기(160)를 포함하는지 여부를 결정할 수 있다. 420에서, 장치(105)는 테스트되지 않은 가속기가 있는지 여부를 결정할 수 있다. 예컨대, 동적 전력 할당기 모듈(165)은 테스트되지 않은 및/또는 자격이 없는 가속기가 있는지 여부를 결정할 수 있다. 테스트되지 않은 가속기가 없다는 결정에 기초하여, 상기 장치(105)는 425에서 도시된 바와 같이 준비 상태에 있을 수 있다.
그렇지 않으면, 테스트되지 않은 가속기가 있다는 결정에 기초하여, 상기 장치(105)는 430에서 특정 가속기를 등록할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 특정 가속기를 등록할 수 있다. 435에서, 상기 장치(105)는 특정 가속기를 스트레스 테스트할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 특정 가속기를 스트레스 테스트할 수 있다. 440에서, 장치(105)는 특정 가속기의 전력 사용량을 결정할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 특정 가속기의 전력 사용량을 결정할 수 있다. 445에서, 상기 장치(105)는 특정 가속기를 일시적으로 비활성화할 수 있다. 예를 들어, 동적 전력 할당기 모듈(165)은 특정 가속기를 일시적으로 비활성화할 수 있다. 450에서, 상기 장치(105)는 특정 가속기의 전력 사용량을 저장할 수 있다. 예를 들어, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 이하 더 설명되는 바와 같이 전력 할당 테이블(108)에 특정 가속기의 전력 사용량을 저장할 수 있다. 상기 흐름은 420으로 리턴할 수 있으며, 테스트되지 않은 가속기가 있는지 여부에 대한 결정이 다시 수행될 수 있다. 테스트되지 않은 가속기가 더 이상 없을 때까지 단계 430 내지 단계 450가 반복될 수 있다. 이후, 상기 흐름은 상기 장치(105)가 준비된 것으로 설정되는 425로 진행할 수 있다. 따라서, 특정 가속기에 대한 요청은 다른 가속기에 의한 전력 사용량 계산을 트리거할 수 있으며 요청된 가속기를 활성화하는 절차를 결정할 수 있다.
도 5는 일부 실시예에 따른, 하나 이상의 가속기의 전력 사용량을 관리하기 위한 기술을 나타낸 흐름도(500)이다. 이하, 도 1 및 도 5를 참조하여 설명된다.
505에서, 상기 장치(105)는 가속기들(160) 중에서 특정 가속기를 활성화하기 위해 전력에 대한 요청을 생성 및/또는 수신할 수 있다. 예를 들어, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 요청을 수신할 수 있다. 510에서, 상기 장치(105)는 상기 장치(105)에 의해 현재 사용중인 총 전력을 계산할 수 있다. 예를 들어, 전류 및/또는 전력 측정 유닛은 상기 장치(105)에 의해 현재 사용중인 총 전력을 결정할 수 있다. 일부 실시예에서, 상기 장치(105)는 추가적인 가용 전력을 결정하기 위해 SMBus 상에서 NVMe-MI 등과 같은 하나 이상의 인터페이스 프로토콜을 통해 호스트에 질의할 수 있다. 일부 실시예에서, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 장치(105)에 의해 현재 사용중인 총 전력을 계산하거나 그렇지 않으면 결정할 수 있다. 515에서, 상기 장치(105)는 특정 가속기의 저장된 전력 사용량을 확인 및/또는 읽을 수 있다. 예를 들어, 상기 장치(105)는 이하 더 설명되는 바와 같이 전력 할당 테이블(108)에서 특정 가속기의 저장된 전력 사용량을 확인할 수 있다. 예를 들어, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 전력 할당 테이블(108)에서 특정 가속기의 저장된 전력 사용량을 확인할 수 있다. 520에서, 상기 장치(105)는 특정 가속기의 저장된 전력 사용량이 상기 장치(105)의 전력 예산 값 내에 있는지 여부를 결정할 수 있다. 즉, 상기 장치(105)는 특정 가속기를 활성화한 후 현재 상기 장치(105)의 현재 사용중인 총 전력에 합산된 특정 가속기의 전력 사용량이 상기 장치(105)의 전력 예산 값보다 작거나 같은지 여부를 결정할 수 있다. 일부 실시예에서, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 결정을 할 수 있다.
특정 가속기의 저장된 전력 사용량이 상기 장치(105)의 전력 예산 값 내에 있다는 결정에 기초하여, 상기 장치(105)는 525에서 특정 가속기에 대한 전력 할당을 승인할 수 있다. 예를 들어, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 특정 가속기에 전력 할당을 승인할 수 있다. 그렇지 않으면, 특정 가속기의 저장된 전력 사용량이 상기 장치(105)의 전력 예산 값 내에 있지 않다는 결정에 기초하여, 상기 장치(105)는 530에서 가속기들(160)중 다른 가속기가 일시적으로 비활성화될 수 있는지 여부를 또 결정할 수 있다. 일부 실시예에서, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 결정을 할 수 있다. 530에서 다른 가속기가 일시적으로 비활성화될 수 있다는 결정에 기초하여, 상기 장치(105)는 535에서 해당 가속기를 일시적으로 비활성화할 수 있다. 일부 실시예에서, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 결정을 할 수 있다. 그런 다음, 상기 흐름은 525로 진행할 수 있으며, 여기서 특정 가속기에 전력이 제공될 수 있다. 그렇지 않으면, 530에서 다른 가속기가 일시적으로 비활성화될 수 없다는 결정에 기초하여, 상기 장치(105)는 540에서 특정 가속기에 대한 전력 할당을 거부할 수 있다. 일부 실시예에서, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 상기 결정을 할 수 있다.
상기 장치(105)의 동적 전력 할당기 모듈(165)은 이용 가능한 전력에 기초하여 다양한 가속기들을 동적으로 활성화(예를 들어, 활성화 또는 비활성화)할 수 있다. 더 많은 전력이 이용 가능해질 때, 상기 장치(105)의 동적 전력 할당기 모듈(165)은 더 많은 또는 모든 가속기들(160)을 활성화할 수 있고, 그에 따라, 더 낮은 비용 및/또는 더 나은 성능을 달성할 수 있다. 따라서, 커넥터, 마더보드 또는 섀시를 반드시 변경하지 않고도 추가 전력이 동적으로 할당될 수 있다. 일부 경우에, 이것은 장치(105)의 열 관련 예산(thermal budget)을 변경할 수 있으며, BMC는 상기 장치(105)에 의해 소산될 수 있는 추가 열로 인해 상기 장치(105)와 관련된 팬의 속도를 증가시킬 수 있다.
도 6은 일부 실시예에 따른, 도 1의 전력 할당 테이블(108)의 블록도를 도시한다. 이하, 도 1 및 도 6을 참조하여 설명된다. 전력 할당 테이블(108)은 가속기 정보(610) 및 전력 사용량 정보(615)를 포함할 수 있다. 가속기 정보(610)는 하나 이상의 가속기들(160)(예를 들어, 가속기 1, 2, 내지 N)에 대한 정보를 포함할 수 있다. 가속기 정보(610)는 가속기 각각에 대해 가속기 타입을 포함할 수 있다. 전력 사용량 정보(615)는 하나 이상의 가속기들(160)(예를 들어, 가속기 1, 2 내지 N)에 대한 전력 사용량 정보를 포함할 수 있다. 예를 들어, 전력 사용량 정보는 가속기들 각각에서 사용하는 전력량(W)을 포함할 수 있다.
전력 할당 테이블(108)은 상기 장치(105)의 DRAM(dynamic random access memory)과 같은 휘발성 메모리에 저장될 수 있다. 대안적으로 또는 추가적으로, 전력 할당 테이블(108)은 SSD와 같은 비휘발성 메모리에 영구적으로 저장될 수 있다. 전력 할당 테이블(108)이 지속적으로 저장되면, 일부 실시예에서, 상기 장치(105)는 전력 사용량 정보가 전력 할당 테이블(108)에 이미 저장될 수 있기 때문에 각 가속기에 전력 공급시 가속기들(160)에 대한 스트레스 테스트를 실행할 필요가 없다. 상기 장치(105)는 전력 할당 테이블(108)에 가속기들(160) 각각의 전력 사용량을 저장할 수 있다. 상기 장치(105)는 전력 할당 테이블(108)에서 특정 가속기의 저장된 전력 사용량을 확인할 수 있다. 상기 장치(105)는 전력 할당 테이블(108)을 사용하여 가속기들(160) 중 특정 가속기(예를 들어, 가속기(2))에 전력량을 할당할 지의 여부를 결정할 수 있다. 상기 장치(105)는도 5를 참조하여 전술한 바와 같이 특정 가속기의 저장된 전력 사용량이 상기 장치(105)의 전력 예산 값 내에 있는지의 여부를 결정할 수 있다.
전력 할당 테이블(108)은 아래의 테이블 1에 포함된 바와 같은 상기 장치(105) 내의 각 가속기에 대한 전력 사용량 정보를 포함할 수 있다.
가속기 타입 | 전력 사용량 |
FPGA - 압축 커널 | 1000 mW |
FPGA - 체크섬 커널 | 100 mW |
ARM 코어 | 1500 mW |
ARM 코어 | 2500 mW |
ARM 코프로세서(Coprocessor) | 200 mW |
텐서 처리 유닛 | 2000 mW |
맞춤형 ASIC (Custom ASIC) | 750 mW |
가속기가 주파수를 조정함으로써 전력 소비를 줄일 수 있는 능력을 가질 때, 감소된 전력은 전력 할당 테이블(108)에 의해 포착될 수 있다. 전력 손실 또는 전력 감소의 경우, 상기 장치(105)는 장치 재설정을 거쳐 적어도 일시적으로 표준 또는 감소된 전력 할당으로 다시 감소할 수 있다. 이 경우, 메인 CPU, 표준 메모리, FPGA의 주요 기능 등과 같은 필수 유닛들만 활성화될 수 있다.도 7은 일부 실시 예에 따른, 호스트(705) 및 도 1의 장치(105)를 포함하는 시스템(700)을 도시한다. 도 7에 도시된 바와 같이, 호스트(705)는 상기 장치(105)에 연결될 수 있다. 일부 실시예에서, 상기 호스트(705)는 상기 장치(105)를 포함할 수 있다. 호스트(705)는 상기 장치(105)와의 하나 이상의 인터페이스(720)를 사용하여 상기 장치(105)에 전력 예산 값(715)을 제공할 수 있다.
전술한 방법들의 다양한 동작들은 다양한 하드웨어 및/또는 소프트웨어 구성요소(들), 회로 및/또는 모듈(들)과 같은, 동작을 수행할 수 있는 임의의 적절한 수단에 의해 수행될 수 있다.
일부 실시예는 장치(105)를 포함할 수 있다. 상기 장치(105)는 제1 전압 레벨과 관련된 하나 이상의 제1 파워 핀(110)에 연결된 제1 모듈(115)을 포함할 수 있다. 일부 실시예에서, 제1 모듈(115)은 하나 이상의 제1 파워 핀(110)으로부터 제1 전압 레벨을 갖는 전압 레일(420)로 전류를 라우팅하도록 구성된다. 상기 장치(105)는 제2 전압 레벨과 관련된 하나 이상의 제2 파워 핀(125)에 연결된 제2 모듈(118)을 포함할 수 있다. 일부 실시예에서, 제2 모듈(118)은 연결 전압 레일(connecting voltage rail)(135)을 통해 하나 이상의 제2 파워 핀(125)으로부터 제1 전압 레벨을 갖는 전압 레일(120)로 전류를 라우팅하도록 구성된다. 상기 장치(105)는 제2 모듈(118)에 연결된 하나 이상의 제3 파워 핀(130)을 포함할 수 있다. 일부 실시예에서, 제2 모듈(118)은 연결 전압 레일(135)을 통해 하나 이상의 제3 파워 핀(130)으로부터 제1 전압 레벨을 갖는 전압 레일(120)로 전류를 라우팅하도록 구성된다.
일부 실시예에서, 하나 이상의 제1 파워 핀(110)은 하나 이상의 12 볼트(V) 파워 핀을 포함하고, 하나 이상의 제2 파워 핀(125)은 하나 이상의 5V 파워 핀을 포함하고, 하나 이상의 제3 파워 핀(130)은 하나 이상의 예비 핀을 포함하고, 전압 레일(120)은 12V 전압 레일이다. 일부 실시예에서, 제2 모듈(118)은 하나 이상의 미사용 5V 파워 핀(125)을 통해 12V 신호를 수신하고, 연결 전압 레일(135)을 통해 하나 이상의 미사용 5V 파워 핀(125)으로부터 12V 전압 레일(120)로 전류를 라우팅하도록 구성된다. 일부 실시예에서, 제2 모듈(118)은 하나 이상의 미사용 5V 파워 핀(125)을 통해 12V 신호를 수신하고, 통해 하나 이상의 미사용 5V 파워 핀(125)으로부터 12V 전압 레일(120)로 전류를 라우팅하도록 구성된다. 일부 실시예에서, 제2 모듈(118)은 하나 이상의 예비 핀(130)을 통해 12V 신호를 수신하고, 연결 전압 레일(135)을 통해 하나 이상의 예비 파워 핀(130)으로부터 12V 전압 레일로 전류를 라우팅하도록 구성된다.
상기 장치(105)는 하나 이상의 가속기(160) 및 하나 이상의 가속기(160)에 관한 전력 사용량 정보를 저장하도록 구성되는 전력 할당 테이블(108)을 포함할 수 있다. 상기 장치(105)는 전력 할당 테이블(108)에 저장된 전력 사용량 정보에 기초하여 하나 이상의 가속기(160)에 전력을 동적으로 할당하도록 구성된 동적 전력 할당기 모듈(165)을 포함할 수 있다.
일부 실시예에서, 동적 전력 할당기 모듈(165)은 하나 이상의 가속기(160)의 스트레스 테스트에 기초하여 하나 이상의 가속기(160)에 대한 전력 사용량 정보를 계산하도록 구성된다. 일부 실시예에서, 동적 전력 할당기 모듈(165)은 전력 할당 테이블(108)에 저장된 전력 사용량 정보에 기초하여 하나 이상의 가속기(160)를 i) 일시적으로 활성화하는 것 또는 ii) 일시적으로 비활성화하는 것 중 적어도 하나를 수행하도록 구성된다.
일부 실시예는 장치(105)에 의해, 미사용 파워 핀의 존재가 검출되는지의 여부를 결정하는 방법을 포함한다. 미사용 파워 핀의 존재가 검출된다는 결정에 기초하여, 상기 방법은 미사용 파워 핀의 존재를 기반으로 이용 가능한 추가 전력의 총량을 계산하는 단계, 미사용 파워 핀을 활발히 사용되는 파워 핀으로 용도 변경하는 단계, 및 이용 가능한 추가 전력의 총량에 기초하여 전력 예산 값을 갱신하는 단계를 포함할 수 있다. 상기 방법은 미사용 파워 핀의 존재가 검출되지 않는다는 결정에 기초하여 정상 전력 예산 값을 사용하는 단계를 포함할 수 있다.
상기 방법은 하나 이상의 테스트되지 않은 가속기의 존재를 결정하는 단계를 포함할 수 있다. 하나 이상의 테스트되지 않은 가속기의 존재를 결정하는 것에 기초하여, 상기 방법은 i) 하나 이상의 테스트되지 않은 가속기들 중에서 특정 가속기를 등록하는 단계, ii) 상기 특정 가속기를 스트레스 테스트하는 단계, iii) 상기 스트레스 테스트되는 특정 가속기의 전력 사용량을 결정하는 단계, iv) 상기 특정 가속기를 일시적으로 비활성화하는 단계, 및 v) 전력 할당 테이블(108)에 상기 특정 가속기의 전력 사용량에 대응하는 전력 사용량 값을 저장하는 단계를 포함할 수 있다. 상기 방법은 하나 이상의 테스트되지 않은 가속기들 각각에 대해 단계 i) 내지 단계 v)를 반복하는 단계를 포함할 수 있다.
상기 방법은 제1 가속기를 활성화하기 위해 전력에 대한 요청을 수신하는 단계를 포함할 수 있다. 상기 방법은 상기 장치(105)에 의해 현재 사용중인 총 전력을 계산하는 단계를 포함할 수 있다. 상기 방법은 전력 할당 테이블(108)로부터 상기 제1 가속기의 전력 사용량 값을 읽는 단계를 포함할 수 있다. 상기 방법은 상기 장치(105)에 의해 현재 사용중인 총 전력과 상기 제1 가속기와 관련된 전력 사용량 값을 더한 값이 전력 예산 값보다 작거나 같은지의 여부를 결정하는 단계를 포함할 수 있다. 상기 장치(105)에 의해 현재 사용중인 총 전력과 상기 제1 가속기의 전력 사용량 값을 더한 값이 상기 장치(105)의 전력 예산 값보다 작거나 같다고 결정하는 것에 기초하여, 상기 방법은 상기 제1 가속기에 대한 전력 할당을 승인하는 단계를 포함할 수 있다. 상기 장치(105)에 의해 현재 사용중인 총 전력과 상기 제1 가속기의 전력 사용량 값을 더한 값이 상기 장치(105)의 전력 예산 값보다 작거나 같다고 결정하는 것에 기초하여, 상기 방법은 제2 가속기가 일시적으로 비활성화될 수 있는 지의 여부를 결정하는 단계를 포함할 수 있다. 상기 제2 가속기가 일시적으로 비활성화될 수 있다는 결정에 기초하여, 상기 방법은 상기 제2 가속기를 일시적으로 비활성화하는 단계, 및 상기 제1 가속기에 대한 전력 할당을 승인하는 단계를 포함할 수 있다. 상기 제2 가속기가 일시적으로 비활성화될 수 없다는 결정에 기초하여, 상기 방법은 상기 제2 가속기를 비활성화하지 않는 단계, 및 상기 제1 가속기에 대한 전력 할당을 거부하는 단계를 포함할 수 있다.
여기에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘 및 기능의 블록들 또는 단계들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈, 또는 이들의 조합으로 직접 구현될 수 있다. 모듈들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 조합을 포함할 수 있다. 소프트웨어로 구현되는 경우, 기능들은 유형의 비-일시적 컴퓨터 판독가능한 매체에 하나 이상의 명령어 또는 코드로 저장되거나 전송될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), 플래시 메모리, ROM(Read Only Memory), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 레지스터, 하드 디스크, 이동식 디스크, CD ROM 또는 당업계에 공지된 임의의 다른 형태의 저장 매체에 상주할 수 있다.
이하의 기술은 본 발명의 개념의 특정 측면이 구현될 수 있는 적합한 머신(machine) 또는 머신들(machines)에 대한 간략하고 일반적인 설명을 제공하기 위한 것이다. 일반적으로, 상기 머신 또는 머신들은 프로세서, 메모리, 예를 들어 RAM, ROM 또는 기타 상태 보존 매체(state preserving medium), 저장 장치, 비디오 인터페이스 및 입력/출력 인터페이스 포트가 연결된 시스템 버스를 포함한다. 상기 머신 또는 머신들은 키보드, 마우스 등과 같은 통상적인 입력 장치로부터의 입력에 의해서 뿐만 아니라, 다른 기계로부터 수신된 지시(directives), 가상 현실(VR) 환경과의 상호 작용, 생체 피드백(biometric feedback) 또는 기타 입력 신호에 의해 적어도 부분적으로 제어될 수 있다. 여기에서 사용되는 바와 같이, "머신(machine)"라는 용어는 단일 머신, 가상 머신 또는 통신으로 결합된 머신, 가상 머신 또는 함께 작동하는 장치의 시스템을 광범위하게 포괄하도록 의도된다. 예시적인 머신들은 퍼스널 컴퓨터, 워크스테이션, 서버, 휴대용 컴퓨터, 핸드헬드 장치, 전화, 태블릿 등과 같은 컴퓨팅 장치 뿐만 아니라 개인 또는 대중 교통 수단, 예컨대, 자동차, 기차, 택시 등과 같은 운송 장치를 포함한다.
머신 또는 머신들은 프로그래밍 가능하거나 프로그래밍 불가능한 로직 장치 또는 어레이, ASIC, 임베디드 컴퓨터, 카드 등과 같은 임베디드 컨트롤러를 포함할 수 있다. 머신 또는 머신들은 네트워크 인터페이스, 모뎀 또는 기타 통신 결합을 통해 하나 이상의 원격 머신에 대한 하나 이상의 연결을 활용할 수 있다. 머신들은 인트라넷, 인터넷, 근거리 통신망, 광역 네트워크 등과 같은 물리적 및/또는 논리적 네트워크를 통해 상호 연결될 수 있다. 당업자는 네트워크 통신이, 무선 주파수(RF), 위성, 마이크로파, IEEE(Institute of Electrical and Electronics Engineers) 545.11, Bluetooth®광학, 적외선, 케이블, 레이저 등을 포함하는 다양한 유선 및/또는 무선 단거리 또는 장거리 캐리어 및 프로토콜을 이용할 수 있음을 인식할 것이다.
본 개시의 실시예들은 기능, 절차, 데이터 구조, 어플리케이션 프로그램 등을 포함하는 관련 데이터를 참조하거나 이와 관련하여 설명될 수 있는데, 이에 의해 머신에 의해 액세스될 때 머신이 태스크를 수행하거나 추상 데이터 타입 또는 로우-레벨 하드웨어 컨텍스트를 정의할 수 있도록 한다. 관련 데이터는 예를 들어 RAM, ROM 등과 같은 휘발성 및/또는 비휘발성 메모리 또는 기타 저장 장치 및 드라이브, 플로피 디스크, 광학 스토리지, 테이프, 플래시 메모리, 메모리 스틱, 디지털 비디오 디스크, 생물학적 스토리지 등을 포함하는 관련 스토리지 매체에 저장될 수 있다. 관련 데이터는 물리적 및/또는 논리적 네트워크를 포함한 전송 환경을 통해 패킷, 직렬 데이터, 병렬 데이터, 전파 신호 등의 형태로 전달되거나, 압축된 또는 암호화된 포맷으로 사용될 수 있다. 관련 데이터는 분산 환경(distributed environment)에서 사용할 수 있으며, 머신 액세스를 위해 로컬 및/또는 원격으로 저장될 수 있다.
본 개시의 원리를 도시된 실시예들을 참조하여 설명하고 도시하였지만, 도시된 실시예들은 본 개시의 원리를 벗어나지 않고 배열적으로 세부적으로 변경될 수 있고 임의의 원하는 방식으로 결합될 수 있음이 인지될 수 있다. 전술한 기술은 특정 실시예들에 초점을 맞추었지만, 다른 구성들이 고려될 수 있다. 특히, 본 명세서에서는 "본 발명의 일실시예에 따른" 등의 표현이 사용되었으나, 이러한 문구는 일반적으로 실시예적 가능성을 참조하기 위한 것이며, 본 발명을 특정 실시예 구성들로 제한하려는 의도는 아니다. 여기에서 사용된 바와 같이, 이들 용어들은 다른 실시예로 결합될 수 있는 동일하거나 상이한 실시예들을 참조할 수 있다.
본 개시의 실시예들은 하나 이상의 프로세서에 의해 실행 가능한 명령어를 포함하는 비-일시적 머신-판독 가능 매체를 포함할 수 있으며, 상기 명령어는 여기에서 설명된 본 발명의 요소를 수행하기 위한 명령어를 포함한다.
전술한 예시적인 실시예들은 본 발명을 제한하는 것으로 해석되어서는 안된다. 몇개의 실시예가 설명되었지만, 당업자는 본 개시의 신규한 교시 및 이점으로부터 실질적으로 벗어나지 않고 이들 실시예에 대한 많은 변경이 가능하다는 것을 쉽게 이해할 것이다. 따라서, 모든 이러한 변경들은 청구 범위에 정의된 본 개시의 범위 내에 포함되도록 의도된다.
105: 장치
102: 미드플레인
108: 전력 할당 테이블 115: 전력 제어 및 보호 모듈
118: 전압 검출 및 라우팅 모듈 160: 가속기(들)
155: 3.3V 컨버터 165: 동적 전력 할당기 모듈
122: 3.3V 컨버터 124: 1.8V 컨버터
108: 전력 할당 테이블 115: 전력 제어 및 보호 모듈
118: 전압 검출 및 라우팅 모듈 160: 가속기(들)
155: 3.3V 컨버터 165: 동적 전력 할당기 모듈
122: 3.3V 컨버터 124: 1.8V 컨버터
Claims (10)
- 제1 전압 레벨과 관련된 하나 이상의 제1 파워 핀들에 결합되어 상기 하나 이상의 제1 파워 핀들로부터 상기 제1 전압 레벨을 갖는 전압 레일로 전류를 라우팅하도록 구성되는 제1 모듈; 및
제2 전압 레벨과 관련된 하나 이상의 제2 파워 핀들에 결합되어 연결 전압 레일을 통해 상기 하나 이상의 제2 파워 핀들로부터 상기 제1 전압 레벨을 갖는 상기 전압 레일로 전류를 라우팅하도록 구성되는 제2 모듈을 포함하는 장치. - 제1항에 있어서,
상기 제2 모듈에 결합되는 하나 이상의 제3 파워 핀들을 더 포함하고,
상기 제2 모듈은 상기 연결 전압 레일을 통해 상기 하나 이상의 제3 파워 핀들로부터 상기 제1 전압 레벨을 갖는 상기 전압 레일로 전류를 라우팅하도록 구성되는 장치. - 제2항에 있어서,
상기 하나 이상의 제1 파워 핀들은 하나 이상의 DC 파워 핀들을 포함하고,
상기 하나 이상의 제2 파워 핀들은 하나 이상의 미사용 파워 핀들을 포함하고,
상기 하나 이상의 제3 파워 핀들은 하나 이상의 예비 핀들을 포함하고,
상기 전압 레일은 DC 전압 레일인 장치. - 제1항에 있어서,
하나 이상의 가속기 및 상기 하나 이상의 가속기에 관한 전력 사용량 정보를 저장하도록 구성되는 전력 할당 테이블을 더 포함하는 장치. - 제4항에 있어서,
상기 전력 할당 테이블에 저장된 상기 전력 사용량 정보에 기초하여 상기 하나 이상의 가속기에 전력을 동적으로 할당하도록 구성된 동적 전력 할당기 모듈을 더 포함하는 장치. - 장치의 전력을 관리하는 방법에 있어서,
상기 장치에 의해, 미사용 파워 핀들의 존재가 검출되는지 여부를 결정하는 단계;
상기 미사용 파워 핀들의 존재가 검출된다는 결정에 기초하여:
이용 가능한 추가 전력의 총량을 계산하는 단계;
상기 미사용 파워 핀들을 활발히 사용되는 파워 핀들로 용도 변경하는 단계; 및
상기 이용 가능한 추가 전력의 총량에 기초하여 전력 예산 값을 갱신하는 단계를 포함하는 방법. - 제6항에 있어서,
상기 미사용 파워 핀들의 존재가 검출되지 않는다는 결정에 기초하여 정상 전력 예산 값을 사용하는 단계를 더 포함하는 방법. - 제6항에 있어서,
하나 이상의 테스트되지 않은 가속기들의 존재를 결정하는 단계를 더 포함하는 방법. - 제8항에 있어서,
상기 하나 이상의 테스트되지 않은 가속기들의 존재를 결정하는 것에 기초하여,
i) 상기 하나 이상의 테스트되지 않은 가속기들 중에서 특정 가속기를 등록하는 단계;
ii) 상기 특정 가속기를 스트레스 테스트하는 단계;
iii) 스트레스 테스트되는 상기 특정 가속기의 전력 사용량을 결정하는 단계;
iv) 상기 특정 가속기를 일시적으로 비활성화하는 단계; 및
v) 전력 할당 테이블에 상기 특정 가속기의 상기 전력 사용량에 대응하는 전력 사용량 값을 저장하는 단계를 더 포함하는 방법. - 제8항에 있어서,
전력에 대한 요청을 수신하여 제1 가속기를 활성화하는 단계;
상기 장치에 의해 현재 사용중인 총 전력을 계산하는 단계;
전력 할당 테이블로부터 상기 제1 가속기의 전력 사용량 값을 읽는 단계; 및
상기 장치에 의해 현재 사용중인 상기 총 전력과 상기 제1 가속기와 관련된 상기 전력 사용량 값을 더한 값이 상기 전력 예산 값보다 작거나 같은지의 여부를 결정하는 단계를 더 포함하는 방법.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063046684P | 2020-06-30 | 2020-06-30 | |
US63/046,684 | 2020-06-30 | ||
US17/023,360 | 2020-09-16 | ||
US17/023,360 US11733764B2 (en) | 2020-06-30 | 2020-09-16 | Devices capable of detecting and allocating power and associated method |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220002095A true KR20220002095A (ko) | 2022-01-06 |
Family
ID=79031909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210073525A KR20220002095A (ko) | 2020-06-30 | 2021-06-07 | 전력을 검출 및 할당하는 장치 및 및 관련 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11733764B2 (ko) |
KR (1) | KR20220002095A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022211980A1 (de) | 2022-01-06 | 2023-07-06 | Hyundai Motor Company | Befestigungsstruktur für ein heckklappenscharnier |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4919752B2 (ja) | 2006-09-29 | 2012-04-18 | 株式会社日立製作所 | 記憶制御装置 |
US8135972B2 (en) | 2009-03-10 | 2012-03-13 | Cortina Systems, Inc. | Data interface power consumption control |
US8504860B2 (en) * | 2009-06-26 | 2013-08-06 | Seagate Technology Llc | Systems, methods and devices for configurable power control with storage devices |
US8751836B1 (en) | 2011-12-28 | 2014-06-10 | Datadirect Networks, Inc. | Data storage system and method for monitoring and controlling the power budget in a drive enclosure housing data storage devices |
KR20130113203A (ko) | 2012-04-05 | 2013-10-15 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 파워 관리 방법 |
US10129038B2 (en) * | 2012-11-18 | 2018-11-13 | Energy Re-Connect Ltd. | System apparatus and device for facilitating network edge device backup and methods of operation thereof |
WO2015188195A2 (en) | 2014-06-06 | 2015-12-10 | Apple Inc. | Power delivery in a multiple-output system |
US9880574B2 (en) * | 2015-03-02 | 2018-01-30 | Texas Instruments Incorporated | Power combiner and balancer |
US20160308649A1 (en) * | 2015-04-17 | 2016-10-20 | Microsoft Technology Licensing, Llc | Providing Services in a System having a Hardware Acceleration Plane and a Software Plane |
KR102280433B1 (ko) * | 2015-09-23 | 2021-07-22 | 삼성전자주식회사 | 전력 공급 회로 및 이를 포함하는 저장 장치 |
US11269395B2 (en) * | 2019-04-25 | 2022-03-08 | Intel Corporation | Technologies for providing adaptive power management in an accelerator sled |
CN110209606B (zh) | 2019-04-30 | 2021-01-22 | 杭州电子科技大学 | 一种基于PCIe的多接口存储设备的控制方法 |
-
2020
- 2020-09-16 US US17/023,360 patent/US11733764B2/en active Active
-
2021
- 2021-06-07 KR KR1020210073525A patent/KR20220002095A/ko active Search and Examination
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022211980A1 (de) | 2022-01-06 | 2023-07-06 | Hyundai Motor Company | Befestigungsstruktur für ein heckklappenscharnier |
Also Published As
Publication number | Publication date |
---|---|
US11733764B2 (en) | 2023-08-22 |
US20210405733A1 (en) | 2021-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10459733B2 (en) | Power budgeting in an information handling system | |
US8812831B2 (en) | Fan control method and apparatus for adjusting initial fan speed based on a discreteness level of installed devices and calibrating fan speed according to threshold power and adjusted initial speed | |
TWI525433B (zh) | 具有動態運行時間記憶體對映選擇之適應性位址對映技術 | |
KR101682980B1 (ko) | 시스템 온 칩에서의 대역폭 할당의 제어 | |
US10209750B2 (en) | SSD driven system level thermal management | |
US10462664B2 (en) | System and method for control of baseboard management controller ports | |
US8560688B2 (en) | Monitoring sensors for systems management | |
US8533300B2 (en) | Storage device, controller, and address management method | |
CN112133352B (zh) | 可编程峰值功率管理 | |
US10592285B2 (en) | System and method for information handling system input/output resource management | |
US20050060594A1 (en) | Bus clock frequency management based on device load | |
US10437477B2 (en) | System and method to detect storage controller workloads and to dynamically split a backplane | |
US10055366B2 (en) | Method for data transmission and server for implementing the method | |
CN114860329B (zh) | 动态一致性偏置配置引擎及方法 | |
US20160275027A1 (en) | System and Method to Avoid SMBus Address Conflicts via a Baseboard Management Controller | |
KR20220002095A (ko) | 전력을 검출 및 할당하는 장치 및 및 관련 방법 | |
US8806254B2 (en) | System and method for creating and dynamically maintaining system power inventories | |
EP3035227B1 (en) | Method and device for monitoring data integrity in shared memory environment | |
US10768853B2 (en) | Information handling system with memory flush during shut down | |
CN104636250A (zh) | 云端自动测试***及方法 | |
US20050044440A1 (en) | Bus clock frequency management based on characteristics of an application program | |
US10983713B2 (en) | Energy optimized power state declarations for solid state drives | |
US20140122799A1 (en) | Storage device and power saving method thereof | |
CN107305533B (zh) | 资料传输方法及服务器 | |
US20240012686A1 (en) | Workload balance and assignment optimization using machine learining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |