Methods and apparatuses for operating a data processing system

US9317090B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9317090-B2
Application numberUS-201514697471-A
CountryUS
Kind codeB2
Filing dateApr 27, 2015
Priority dateAug 15, 2003
Publication dateApr 19, 2016
Grant dateApr 19, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and apparatuses to manage working states of a data processing system. At least one embodiment of the present invention includes a data processing system with one or more sensors (e.g., physical sensors such as tachometer and thermistors, and logical sensors such as CPU load) for fine grain control of one or more components (e.g., processor, fan, hard drive, optical drive) of the system for working conditions that balance various goals (e.g., user preferences, performance, power consumption, thermal constraints, acoustic noise). In one example, the clock frequency and core voltage for a processor are actively managed to balance performance and power consumption (heat generation) without a significant latency. In one example, the speed of a cooling fan is actively managed to balance cooling effort and noise (and/or power consumption).

First claim

Opening claim text (preview).

What is claimed is: 1. A non-transitory computer readable medium storing computer instructions which when executed by a data processing system cause the data processing system to perform a method, the method comprising: receiving load information about processing loads for one or more processing units; receiving, from one or more thermal sensors, thermal data about the data processing system; transitioning between multiple power states for each of the one or more processing units based on the load information and the thermal data, the multiple power states including multiple states with different processor voltages or processor frequencies, and wherein the data processing system is configured to transition to a lower power state to reduce heat produced by the data processing system; throttling thread scheduling based on the load information. 2. The medium as in claim 1 wherein the one or more thermal sensors determine a temperature and wherein the load information is provided by software, and wherein each of the multiple power states is a working state of the one or more processing units. 3. The medium of claim 2 wherein the data processing system comprises a touchscreen coupled to the one or more processing units. 4. The medium of claim 2 wherein the throttling of thread scheduling is performed by a software component of an operating system. 5. The medium of claim 1 wherein the multiple power states comprise an idle state and a plurality of working states for each of the processing units. 6. The medium of claim 5 wherein the data processing system includes a plurality of processing units, each of which is independently transitioned between multiple power states by an operating system. 7. The medium of claim 6 wherein each processing unit in the plurality of processing units is in a working state when there are threads waiting to be scheduled on the processing unit. 8. The medium of claim 7 wherein the throttling of thread scheduling is based on a priority list and is performed by the operating system. 9. The medium of claim 8 wherein the data processing system comprises a touchscreen coupled to the plurality of processing units and the plurality of processing units comprises at least one graphics processing unit, and wherein the operating system causes the plurality of processing units to transition between multiple power states also based on one or more user preferences settings and battery life. 10. A method performed by a data processing system, the method comprising: receiving load information about processing loads for one or more processing units; receiving, from one or more thermal sensors, the mal data about the data processing system; transitioning between multiple power states for each of the one or more processing units based on the load information and the thermal data, the multiple power states including multiple states with different processor voltages or processor frequencies, and wherein the data processing system is configured to transition to a lower power state to reduce heat produced by the data processing system; throttling thread scheduling based on the load information. 11. The method as in claim 10 wherein the one or more thermal sensors determine a temperature and wherein the load information is provided by software, and wherein each of the multiple power states is a working state of the one or more processing units. 12. The method of claim 11 wherein the data processing system comprises a touchscreen coupled to the one or more processing units. 13. The method of claim 11 wherein the throttling of thread scheduling is performed by a software component of an operating system. 14. The method of claim 10 wherein the multiple power states comprise an idle state and a plurality of working states for each of the processing units. 15. The method of claim 14 wherein the data processing system includes a plurality of processing units, each of which is independently transitioned between multiple power states by an operating system. 16. The method of claim 15 wherein each processing unit in the plurality of processing units is in a working state when there are threads waiting to be scheduled on the processing unit. 17. The method of claim 16 wherein the throttling of thread scheduling is based on a priority list and is performed by the operating system. 18. The method of claim 17 wherein the data processing system comprises a touchscreen coupled to the plurality of processing units and the plurality of processing units comprises at least one graphics processing unit, and wherein the operating system causes the plurality of processing units to transition between multiple power settings also based on one or more user preferences settings and battery life. 19. A data processing system comprising: a plurality of processing units; a memory coupled to the plurality of processing units; one or more thermal sensors coupled to at least one of the plurality of processing units; and wherein the memory stores an operating system which receives thermal data about the data processing system and obtains load information about processing loads on the plurality of processing units, and wherein the operating system causes each processing unit in the plurality of processing units to transition independently between multiple power states based on the load information and the thermal data, and the operating system throttles thread scheduling based on the load information. 20. The system of claim 19 wherein the operating system causes each processing unit in the plurality of processing units to transition independently between multiple power states based also on one or more user preference settings and battery life.

Assignees

Inventors

Classifications

  • G06F1/20Primary

    Cooling means · CPC title

  • the sensing element having a resistance varying with temperature, e.g. a thermistor · CPC title

  • by lowering the supply or operating voltage · CPC title

  • Cross-Sectional Technologies · mapped topic

  • Power management, i.e. event-based initiation of a power-saving mode · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9317090B2 cover?
Methods and apparatuses to manage working states of a data processing system. At least one embodiment of the present invention includes a data processing system with one or more sensors (e.g., physical sensors such as tachometer and thermistors, and logical sensors such as CPU load) for fine grain control of one or more components (e.g., processor, fan, hard drive, optical drive) of the system …
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06F1/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 19 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).