CN110968474A - 用于使用人工智能来管理可变状态计算设备的操作的方法和装置 - Google Patents
用于使用人工智能来管理可变状态计算设备的操作的方法和装置 Download PDFInfo
- Publication number
- CN110968474A CN110968474A CN201910789664.3A CN201910789664A CN110968474A CN 110968474 A CN110968474 A CN 110968474A CN 201910789664 A CN201910789664 A CN 201910789664A CN 110968474 A CN110968474 A CN 110968474A
- Authority
- CN
- China
- Prior art keywords
- context
- engine
- state
- usage
- data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
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/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3212—Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
-
- 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
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3041—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
-
- 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
Abstract
公开了用于使用人工智能来管理可变状态计算设备的操作的方法和装置。示例计算设备包括硬件平台。示例计算设备还包括人工智能(AI)引擎,用于:确定设备的上下文;并基于设备的上下文的预期变化来调节硬件平台的操作。该调节修改了设备的计算效率、设备的功率效率、或设备的存储器响应时间中的至少一者。
Description
技术领域
本公开总体上涉及人工智能,并且更具体地涉及使用人工智能来管理可变状态计算设备的操作的方法和装置。
背景技术
大量的研究正在推进人工智能的技术领域。随着技术的改进,AI的应用和能力已显著地扩展。
附图说明
图1是包括根据本文公开的教导构造的可变状态计算设备的示例系统的框图。
图2是示出图1的示例数据处理硬件平台的示例实现的框图。
图3是图1的示例AI引擎的示例实现的框图。
图4示出了表示图1的设备的不同状态以及不同状态之间的对应转变的示例设备简档。
图5至图9是表示示例机器可读指令的流程图,该示例机器可读指令可以被执行以实现图1的示例设备和/或图1和/或图3的AI引擎。
图10是被构造为用于执行图5至图9的指令以实现图1和/或图2的示例可变状态计算设备和/或图1和图3的AI引擎的示例处理平台的框图。
通常,贯穿(多个)附图和所附书面说明书,相同的附图标记将用于表示相同或相似的部分。
具体实施方式
本文公开的示例涉及实现人工智能(AI)引擎以控制设备的硬件组件的操作,以便相对于设备在其中操作的特定上下文改善(例如,优化)设备的效率。在一些示例中,AI引擎用于确定或推断设备的上下文,然后用于确定与设备相关联的硬件的组件的合适操作参数。如本文所使用,设备的上下文基于:设备正在参与或将要参与的一个或多个活动的性质(例如,工作负载)和/或类型、正在处理或将要处理的与此类活动相关联的数据的性质和/或类型、设备活动在处理数据时的目的、设备周围的环境的特性、设备的用户的特征和/或偏好、设备的组件的性能能力、和/或设备操作的任何其他方面、设备本身、和/或可以为AI引擎所知的设备的周围环境。如本文中所使用,设备活动是指由设备的一个或多个硬件组件执行的任何操作或功能。在一些示例中,如果结合不同的软件应用来激活硬件操作,则相同的硬件操作可以与不同的设备活动相关联。
例如,特定设备活动可以包括图形引擎,该图形引擎经由显示屏渲染视频以用于显示。因此,在此类示例中设备的特定上下文与渲染视频的活动相关联。AI引擎可以在此类示例中控制的操作参数是由图形引擎渲染的视频的分辨率。设备的上下文可以基于视频是否与视频游戏、从在线视频流送服务流出的电影相关联、或是否与来自监测相机的馈送相关联来进一步定义。此外,可以通过媒体的特定内容来通知设备的上下文,媒体的特定内容诸如例如,运动赛事,在其中个体玩家相对较小,使得高分辨率渲染将增强观众体验,这与做演说或演讲的人的视频形成对照,做演说或演讲的人基本上填满屏幕,使得高分辨率不太重要和/或甚至是不期望的。此外,设备的上下文可以根据视频的目的而变化。例如,在监测上下文中,与旨在用于检测所捕获的场景中的人的存在的系统(其将需要中等高分辨率)相比、与旨在用于唯一地标识所捕获的场景中的人的系统(其将需要相对高分辨率)相比,视频馈送的目的可以是检测移动(其将不需要非常高的分辨率)。可能影响显示视频的设备的上下文的周围环境的示例特性可以包括设备正在其中显示视频的房间的照明。此外,设备的上下文可以基于用户的特性或偏好,诸如,例如,相对于性能效率优先考虑节省电池寿命,反之亦然。在一些示例中,用户偏好和/或特性可以由用户经由用户接口提供。在其他示例中,AI引擎可以通过监测和学习用户随时间的行为来推断用户偏好和/或特性。
随着时间的推移,AI引擎学习设备硬件的特定操作和交互以及通常发生的(多个)上下文类型,以便在新情况下更准确地标识设备的上下文。类似地,随着时间的推移,AI引擎基于任何特定上下文学习如何调节或调整与设备硬件相关联的操作参数,以使设备能够以提供令人满意的用户体验同时还实现一个或多个目标度量的方式运行,一个或多个目标度量诸如例如,功率效率、计算效率、存储器(高速缓存相对于存储设备)响应时间等。因此,本文所公开的示例不限于调节图形引擎的操作,而是可以应用于任何硬件平台并且可以涉及对其操作的任何适当的调节。作为一些示例,AI引擎可以使硬件平台定位数据、导通或断开平台的组件(例如,处理器核、存储器区块等)、初始化处理器核、从存储器清除数据、启动虚拟机、终止虚拟机、在存储器之间移动数据等等。
许多用户经由特定设备活动和/或特定设备活动的组合或系列来与他们的计算设备执行通常重复的任务。在一些所公开的示例中,各个设备活动和/或设备活动的特定组合和/或模式被分类为设备的不同操作状态。因此,示例设备在本文中有时被称为可变状态计算设备,以指示该设备可以在(对应于一个或多个不同设备活动的)不同状态之间转变,该不同状态对于用户是单独地可识别的或唯一的。在一些示例中,单个设备活动可以对应于特定设备状态。在一些示例中,设备活动的组合可以对应于特定设备状态。在一些示例中,AI引擎能够基于设备在从一个状态转变到另一个状态时的操作流程来学习特定设备的不同状态以及此类状态如何彼此相关。在一些示例中,AI引擎为设备生成简档或签名以表示这些关系,包括状态中的不同状态之间的转变的概率。此外,AI引擎可以学习和/或确定用于设备硬件的合适操作参数,以在如上文所述的所标识状态中一个或多个所标识状态的上下文中操作时改善(例如,优化)设备的效率。此外,通过生成定义不同状态之间的转变的概率的设备简档,AI引擎可以预测设备的未来状态。基于这些预测,AI引擎可以基于为当前状态和(多个)未来预测状态定义的操作参数来预测硬件需求的变化,以便当设备从一种状态转变到另一状态时进一步改善(例如,优化)设备的效率。此外,在一些示例中,设备简档用于改变或改善(例如,优化)用于预期经历类似状态的新设备的硬件设计。
图1是包括可变状态计算设备102和传感器104的示例系统100的框图。在所示示例中,传感器104被示出在设备102的外部。在其他示例中,传感器104可以与设备102集成,使得示例系统100对应于单个设备(例如,智能手机、平板、膝上型计算机等)。在其他示例中,系统100可以包括由主控制系统(例如,具有各种外围设备的台式计算机)操作的多个经互连的设备102。此外,示例系统100中的设备102可以是由终端用户在本地使用的用户接口设备,和/或设备102可以涉及由一个或多个用户经由网络(例如,因特网)访问的基于云的实现(例如,数据中心处的服务器)。
如本文中所使用,用于描述示例设备102的短语“可变状态”指的是设备102参与或实现与以上概述的不同时间点处的不同状态相关联的不同活动、操作和/或功能的能力。示例设备102的这些不同状态可与示例通信接口106、示例存储器108、示例用户输入接口110、示例数据处理硬件平台112、示例显示器114、和/或示例人工智能(AI)引擎116中一个或多个的操作相关联。
在一些示例中,通信接口106从传感器104接收传感器数据。传感器数据提供设备102的操作的上下文。在一些示例中,传感器数据包括用于由设备102处理的主要数据集。例如,设备102可以与视频监测系统相关联,其中传感器104对应于捕获用于由设备102处理的视频馈送的相机。在一些示例中,传感器数据包括为设备102提供附加上下文的辅助数据集。例如,传感器数据可以指示设备102周围的环境的条件或特性(例如,温度、照明等)。
在一些示例中,系统100包括多个传感器104,该多个传感器104可以提供指示系统的上下文的一种或多种类型的传感器数据。一个或多个传感器104的所收集的传感器数据存储在存储器108中。在一些示例中,传感器104从系统中省略。附加地或替代地,通信接口106可以从为示例设备102提供上下文的其他设备接收数据。在一些示例中,这些其他设备可以(经由有线或无线连接)与通信接口106直接通信,如同图1所示的传感器104那样。在其他示例中,这些其他设备可以经由网络120与通信接口106通信。
在图1的所示出的示例中,用户输入接口110获得来自设备102的用户的输入。在一些示例中,用户输入数据指示设备和/或设备的操作的上下文。在一些示例中,上下文可以基于由用户和/或用户输入数据指定的偏好和/或指令。在一些示例中,上下文可以基于由用户输入数据所指示的用户的动作和/或行为。用户输入数据可以存储在存储器108中。
图1的示例设备102设置有数据处理硬件平台112,用于处理数据和/或执行任何适当的功能和/或操作。因此,硬件平台112表示设备102的一些或全部核心计算电路。因此,在一些示例中,由设备102执行的与可变状态计算设备102的不同状态相对应的不同活动基于硬件平台112的操作。然而,不同的设备状态也可以取决于图1中所示的组件中的其他组件的操作。
在一些示例中,硬件平台112在单个集成电路(IC)芯片上实现。在其他示例中,硬件平台112可以包括多个IC芯片。硬件平台112可以包括中央处理单元(CPU)、图形引擎、和/或任何其他合适的硬件引擎。作为具体示例,图2是示出图1的数据处理硬件平台112的示例实现的框图。在图2的示例中,硬件平台112由图形引擎112实现。如图2中所示,该示例的示例图形引擎112包括总线接口202、功率管理单元204、视频处理单元206、显示接口208、图形存储器控制器210、视频基本输入/输出系统(BIOS)212、图形和计算阵列214、以及压缩单元216。在一些示例中,图2中所示的块中的不同块和/或块的子组件可以被激活或者处于操作中,而其他部分不活动。作为具体示例,图形和计算阵列214包括单独计算元件的阵列,该单独计算元件的阵列在图形引擎112正在渲染视频时可以或可以不操作。更具体地,视频的相对低分辨率渲染可以使用阵列214内的相对小部分的计算元件,而视频的相对高分辨率渲染可以使用相对大部分(例如,全部)的计算元件。在任何给定时间点操作的不同数量的计算元件可以对应于由图形引擎112所参与的不同活动,并且因此对应于设备102的不同状态。
返回图1,示例显示器114向用户显示内容。在一些示例中,经由显示器114显示的内容可以对应于由数据处理硬件平台112处理的数据。例如,显示器114可以显示由图2的图形引擎112渲染的视频。
在图1所示的示例中,示例AI引擎116用于确定设备102的当前上下文,并且用于控制或调节设备102的组件的操作以使它们的使用适应设备的当前上下文。如上所述,设备的当前“上下文”是指:当前操作、功能、预期目的、工作负载、环境条件、和/或可由AI引擎116使用以管理和/或控制设备102的组件的操作从而实现增加的功率效率、增加的性能速度、增加的存储器响应时间的任何其他因素、和/或任何其他(多个)目标度量,但仍然在由设备102的当前上下文所施加的条件和/或限制下适当地操作。通过AI引擎116的实现而实现的特定效率可以取决于与用于确定设备的当前上下文的其他因素相关的设备的预期用途(在确定设备的当前上下文时的特定因素)。关于AI引擎116的实现的进一步细节在下文中结合图3来提供。
尽管在图1中示出了实现可变状态计算设备102的示例方式,但是在图1中所示的元件、过程和/或设备中的一个或多个能以任何其他方式被组合、划分、重新布置、省略、消除和/或实现。此外,示例通信接口106、示例存储器108、示例用户输入接口110、示例数据处理硬件平台112、示例显示器114、示例AI引擎116、和/或更一般地,图1的示例设备102可以通过硬件、软件、固件和/或硬件、软件和/或固件的任何组合来实现。因此,例如,示例通信接口106、示例存储器108、示例用户输入接口110、示例数据处理硬件平台112、示例显示器114、示例AI引擎116、和/或更一般地,示例设备102中的任何一个可以由一个或多个模拟或数字电路、逻辑电路、(多个)可编程处理器、(多个)可编程控制器、(多个)图形处理单元(GPU)、(多个)数字信号处理器(DSP)、(多个)专用集成电路(ASIC)、(多个)可编程逻辑器件(PLD)和/或(多个)现场可编程逻辑器件(FPLD)实现。当阅读到本专利的装置或系统权利要求中的任一项涵盖纯软件和/或固件实现时,示例通信接口106、示例存储器108、示例用户输入接口110、示例数据处理硬件平台112、示例显示器114、和/或更一般地,示例AI引擎116中的至少一个由此被明确地限定为包括包含该软件和/或固件的非瞬态计算机可读存储设备或存储盘(诸如,存储器、数字多功能盘(DVD)、紧凑盘(CD)、蓝光盘等等)。此外,示例设备102可以包括附加于或替代于图1中所示的那些元件、过程和/或设备的一个或多个元件、过程和/或设备,和/或可以包括所示的元件、过程和设备中任何或所有元件、过程和设备中的多于一个。如本文中使用,短语“处于通信”包括其各种变体,包含直接通信和/或通过一个或多个中间组件的间接通信,并且不要求直接物理(例如,有线)通信和/或持续通信,而是附加地包括以周期性间隔、经调度的间隔、非周期性间隔、和/或一次性事件来进行的选择性通信。
图3是示出图1的示例AI引擎116的示例实现的框图。在图3的示例中,AI引擎116包括示例使用监测器302、示例上下文确定器304、示例硬件使用管理器306、示例设备活动分类器308、示例设备简档生成器310、和示例电池寿命估计器312。
图3的示例AI引擎116包括示例使用监测器302,用于监测设备102的组件的使用和/或操作,以确定和/或跟踪在任何给定时间点组件被如何使用。指示设备102的组件的任何集合、子集或所有组件的使用和/或操作的数据在本文中称为使用数据。使用数据可以对应于由图1的通信接口106所接收的数据和/或由通信接口106基于所接收的数据生成的数据。类似地,使用数据可以包括由用户经由图1的用户输入接口110提供的数据和/或由用户输入接口基于用户输入数据生成的数据。此外,使用数据可以包括由图1的硬件平台112处理的数据和/或由硬件平台112生成的数据。在一些示例中,使用数据可以包括指示图1中所示的块的各个子组件的使用、操作、和/或工作负载的数据。因此,例如,在数据处理硬件平台112由图2的图形引擎112实现的情况下,使用数据可以包括在任何给定时间点哪些(和/或多少)个体计算元件正在操作的指示。在一些示例中,由使用监测器302监测的使用数据不仅指示在任何给定时间什么硬件正在被使用,而且还指示硬件正如何被使用。也就是说,使用数据可以包括与指示组件是否被供电的硬件组件相关联的特定操作参数、组件的特定功率状态(例如,当除导通和断开状态之外还存在状态时)、电压电平、功率门控参数、时钟速率、频率、功能容量等。在一些示例中,使用监测器302可以访问设备102的软件栈以将设备102中的硬件的活动和/或操作与在设备102上运行的相应的软件相关联。
图3的示例上下文确定器304确定设备102的当前上下文。如上所述,设备的当前上下文是指当前操作、功能、预期目的、工作负载、环境条件、和/或基于AI引擎116可用的任何相关输入所确定的任何其他因素。在一些示例中,相关输入包括由使用监测器302监测的使用数据。附加地或替代地,在一些示例中,由上下文确定器304使用的相关输入包括来自图1的传感器104的传感器数据,该传感器数据指示设备102周围环境的条件和/或特性。
当上下文确定器304随时间分析使用数据和/或传感器数据时,上下文确定器304学习将一个上下文与另一个上下文区分开。在一些示例中,该学习在由上下文确定器304随时间生成和更新的上下文学习模型中表示。通过随时间更新上下文学习模型,即使上下文之前未被经历过,上下文确定器304也能够改善其准确地推断或标识设备的特定上下文的能力,。
在图3的所示的示例中,硬件使用管理器306基于设备的当前上下文来调节或控制设备102的组件的操作,设备的当前上下文可以基于用户正将设备用于的预期目的、正由设备处理的工作负载和相关联的主要数据、设备的周围环境的相关特性、要改善(例如,优化)的目标度量的特定偏好等等。作为具体示例,假设图1的系统100对应于视频监测系统。在一些示例中,操作AI引擎的目标可以是节省功率。也就是说,目标度量之一可以是功率效率。在此类示例中,硬件使用管理器306可以基于设备的上下文确定要被渲染的视频的分辨率水平,并且然后调节图2的图形引擎112的操作以实现不超过实现适当分辨率水平所需的计算元件。
硬件使用管理器306调节图形引擎112的操作以改善功率效率的特定方式可以进一步取决于设备102用于提供所渲染的视频的上下文的其他方面。例如,监测系统的特定目的可以是用于检测和/或标识一个或多个目标特性。(多个)目标特性的特定类型或性质可以对应于设备的不同上下文。例如,要在视频馈送中标识的目标特性可以是人员在相机(例如,传感器104)的视场内的存在。在此上下文中,视频渲染的分辨率需要足以实现人的标识。相反,如果上下文使得视频馈送的目标特性对应于相机的视场中的任何检测到的移动,则比上述场景中的更低的分辨率可能足够。如果视频馈送的目标特性将相关区域中的授权人员与未经授权的入侵者区分开,则可能需要足以充分表示人的面部和/或其他标识特征的更高分辨率的视频。因此,要标识的视频和/或(多个)相关目标特性的预期目的(作为上下文确定中的因素)可以影响图形引擎112的硬件要求的种类。然而,如果上下文确定器304确定了设备102的显示器114是不能表示高分辨率视频的低质量屏幕,则硬件使用管理器306可以将由图形引擎112渲染的视频的分辨率降低到不超过与低分辨率显示器114的上下文匹配的分辨率。
系统的更复杂的控制也是可能的。例如,上下文确定器304可以检测由相机捕获的场景的特定部分内的人,而在场景的其他部分中没有检测到活动。在此类上下文中,硬件使用管理器306可以使图形引擎112以相对高的分辨率渲染与人相关联的视频数据的区域(因为那是对系统的用户而言感兴趣的、相关的、或重要性的区域)而视频数据的其余部分以相对较低的分辨率渲染。尽管以上示例涉及硬件使用管理器306调节图形引擎/硬件平台112的操作,但是硬件使用管理器306还可以调节设备102的其他组件的操作。例如,硬件使用管理器306可以使相机(例如,传感器104)聚焦和/或放大由相机捕获的场景中的特定感兴趣区域(例如,检测到的人)以进一步增强由图形引擎112渲染的视频的高分辨率部分。
以上示例使得能够以足够的分辨率渲染视频馈送以服务于设备102的预期目的,而不调用视频流的任何不必要的处理,从而降低处理能力,并且因此降低系统100的功耗。在其他示例中,操作AI引擎116的目标可以是用于改善除功率节省之外的某个目标度量的效率。例如,在不一定与视频监测相关的其他示例中,硬件使用管理器306可以适配设备102的组件的操作以改善(例如,优化)设备102的性能或计算效率。作为具体示例,当由上下文确定器304确定的设备102的当前上下文指示CPU正在处理繁重的工作负载时,硬件使用管理器306可以使得工作负载中的一些由图形引擎112处理以维持整个系统高速性能。在其他示例中,硬件使用管理器306可以定制设备的组件的操作参数以改善(例如,优化)设备102的存储器响应时间。作为特定示例,硬件使用管理器306可以控制哪个数据被存储在处理器的本地高速缓存中以及哪个数据被存储在处理器外部的存储器中(例如,可以控制数据高速缓存操作)。在其他示例中,硬件使用管理器306可以调节操作参数以在多个不同的目标度量(例如,存储器速度、计算效率、功率效率等)之间达到适当的平衡。
当硬件使用管理器306根据不同的上下文调节设备硬件的操作参数时,附加反馈(例如,附加使用数据)可以指示调节是否充分满足设备的期望操作和效率。如果不是,则硬件使用管理器306可以进一步调整操作参数。以这种方式,硬件使用管理器306在特定情况下学习用于设备硬件的合适操作参数。在一些示例中,该学习以由硬件使用管理器306随时间生成和更新的操作学习模型表示。通过随时间更新(例如,不断更新)操作学习模型,即便当设备的特定上下文之前可能没有被经历过时,硬件使用管理器306也可以改善其快速标识用于设备硬件的以增加的(例如,优化的效率)实现期望功能的合适操作参数的能力。
在图3的示例中,设备活动分类器308基于对由使用监测器302监测的使用数据的分析,以与上述上下文确定器304的操作类似的方式对不同的设备活动或设备活动的组合进行标识和分类。在一些示例中,上下文确定器304和设备活动分类器308被集成以作为单元操作。如上所述,设备活动是指由设备102的一个或多个硬件组件执行的任何操作或功能。在一些示例中,不同的设备活动还可以基于(多个)软件应用被分类,该(多个)软件应用被执行以执行底层硬件的相应操作。
许多用户利用他们的计算设备重复任务,使得可能存在相对有限数量的占据设备的绝大多数操作的不同活动或活动组合。此外,用户通常不以任意或随机的方式从一个任务跳到另一个任务,而是遵循由设备的性质和/或用户如何使用该设备而引起的模式。基于这些假设,在一些示例中,图3的设备简档生成器310组合由设备活动分类器308标识的不同设备活动以生成用于设备102的简档或签名。设备简档可以表示为状态图,该状态图指示设备的不同预期状态以及这些状态中的不同状态之间的转变概率。图4中示出了示例设备简档400,该示例设备简档400包括通过七个边或转变414、416、418、420、422、424、426互连的六个状态402、404、406、408、410、412。在一些示例中,基于各个设备活动和/或由设备活动分类器308分类的活动的特定组合来标识不同的状态。因此,在一些示例中,设备简档生成器310将由设备活动分类器308标识的一个或多个特定活动映射到一个或多个特定状态402、404、406、408、410、412。此外,设备简档生成器310可以随时间跟踪这些状态中的不同状态之间的转变414、416、418、420、422、424、426。在以此方式监测从一个状态到另一个状态的改变之后,设备简档生成器310可以将不同的权重分配给转变414、416、418、420、422、424、436中的不同转变,以指示设备从任何特定状态转变到任何其他状态转变的概率。在一些示例中,转变概率可以取决于设备保持在特定状态内的持续时间。因此,在一些示例中,设备简档生成器310监测设备102在特定状态内继续操作的持续时间,并基于时序信息分配转变概率。
对于给定设备的不同操作状态和对应的转变概率可取决于设备的类型和/或设备的预期用途。例如,通常在智能电话上实现的不同操作状态可以包括浏览互联网、使用全球定位系统来确定到位置的方向、拍摄照片或视频、发送文本消息、拨打电话等。相比之下,在企业中使用的台式计算机的常见操作状态可能包括打开和查看文档、文字处理、发送电子邮件等。此外,针对智能电话设备和台式商用计算机最常采用的状态可能与针对作为国家银行的私有云中的服务器或针对线上零售商的服务器的设备的最常采用的状态不同。
尽管任何特定设备的设备简档400可能是唯一的,但是在一些示例中,在将设备102分发给终端用户之前(例如,在制造时和/或在组装时之前),基于在其中实现AI引擎116的特定类型的设备的终端用户所期望的设备的频繁执行的操作、使用学习数据集来训练设备简档生成器310。设备简档生成器310的该初始训练提供设备简档400的起始点,在设备简档生成器310基于特定终端用户对设备的特定使用来学习设备的特定状态和相关联的转变时,该起始点可以随时间改良。在其他示例中,一旦设备102被终端用户使用,设备简档生成器310就可以在开发设备简档400时的空白平板开始。
在一些示例中,由设备简档生成器310生成的设备简档400用作用于上下文确定器304的附加输入,以进一步促进硬件使用管理器306管理设备102内的组件的操作和/或使用。例如,设备简档400中表示的任何特定状态对应于由设备活动分类器308标识的一个或多个特定设备活动。状态用作在定义设备的当前上下文时的相关输入。因此,硬件使用管理器306可以确定设备硬件的合适操作参数,以便当在所标识的状态中的任何一种状态的上下文中操作时改善(例如,优化)设备的效率。然而,确定设备102的当前上下文的设备简档400不限于设备的当前环境的快照,而是可以附加地或替代地通过设备的未来预测状态来通知。具体而言,如上所述,在设备简档400中表示的转变被分配权重,这些权重分别指示处于特定状态的设备转变到不同状态的概率。在一些示例中,当从当前状态转变到某个其他状态的概率超过阈值时,硬件使用管理器306可以在预期设备转变到另一状态时适配设备硬件的操作参数。
作为特定示例,假设设备102的设备简档400指示在用户查看电子邮件(第一设备状态)之后,用户将转变到玩视频游戏(第二设备状态)的非常高的概率。在一些此类示例中,当上下文确定器304确定了设备的当前上下文包括用户查看电子邮件时,上下文确定器304还可以从设备简档400确定用户将很快开始玩视频游戏。基于该当前上下文,硬件使用管理器306可以激活图形引擎112,以预期需要为视频游戏渲染高质量图像以向终端用户提供流畅的体验。如上所述,在一些示例中,设备简档400中的转变概率可以基于设备在特定状态内操作的持续时间(例如,状态内停留时间)。因此,如果设备简档400指示用户通常在转变到玩视频游戏之前花费15分钟查看电子邮件,则硬件使用管理器306可以直到设备已处于(与查看电子邮件相关联的)当前状态达15分钟才激活图形引擎112。因此,通过生成如本文所公开的设备简档400,AI引擎116能够基于为设备102的当前状态和(多个)未来预测状态两者定义的操作参数来预测硬件需求的变化以进一步改善(例如,优化)当设备从一种状态变化另一种状态时该设备的效率。
在图3所示的示例中,AI引擎116设置有电池寿命估计器312以估计设备102的电池寿命。在一些示例中,示例电池寿命估计器312基于(由设备简档生成器310生成的)设备简档400和针对(由上下文确定器304和/或设备活动分类器308确定的)设备102的不同状态和/或上下文影响(由硬件使用管理器306确定和/或控制的)功耗的操作参数来预测设备102的剩余电池寿命。也就是说,电池寿命估计器312能够基于设备102的当前状态和/或上下文来确定当前功耗。电池寿命估计器312还能够确定基于设备的未来状态在未来预期的功耗,该设备的未来状态基于设备简档400中的转变概率来预测。以这种方式,电池寿命估计器312能够比现有方法更准确地预测设备102的电池寿命。
尽管图3中示出了实现图1的AI引擎116的示例方式,但是图3所示的元件、过程和/或设备中的一个或多个可以被组合、拆分、重新布置、省略、消除和/或以任何方式被实现。此外,图1的示例使用监测器302、示例上下文确定器304、示例硬件使用管理器306、示例设备活动分类器308、示例设备简档生成器310、示例电池寿命估计器312和/或更一般地示例AI引擎116可以由硬件、软件、固件和/或硬件、软件和/或固件的任意组合实现。因此,例如,示例使用监测器302、示例上下文确定器304、示例硬件使用管理器306、示例数据设备活动分类器308、示例设备简档生成器310、示例电池寿命估计器312、和/或更一般地,示例AI引擎116中的任何一个可以由一个或多个模拟或数字电路、逻辑电路、(多个)可编程处理器、(多个)可编程控制器、(多个)图形处理单元(GPU)、(多个)数字信号处理器(DSP)、(多个)专用集成电路(ASIC)、(多个)可编程逻辑器件(PLD)和/或(多个)现场可编程逻辑器件(FPLD)实现。当阅读到本专利的装置或系统权利要求中的任一项涵盖纯软件和/或固件实现时,示例使用监测器302、示例上下文确定器304、示例硬件使用管理器306、示例设备活动分类器308、示例设备简档生成器310、和/或示例电池寿命估计器312中的至少一个由此被明确地限定为包括包含该软件和/或固件的非瞬态计算机可读存储设备或存储盘(诸如,存储器、数字多功能盘(DVD)、紧凑盘(CD)、蓝光盘等等)。此外,图1的示例AI引擎116可以包括附加于或替代于除图3中所示的元件、过程和/或设备的一个或多个元件、过程和/或设备,并且/或者可以包括所有示出的元件、过程和/或设备中的任何或所有元件、过程和/或设备中的多于一个。如本文中所使用,短语“通信”(包括其各种变体)包含直接通信和/或通过一个或多个中间组件的间接通信,并且不要求直接物理(例如,有线)通信和/或持续通信,而是附加地包括以周期性间隔、经调度的间隔、非周期性间隔、和/或一次性事件来进行的选择性通信。
在图5至图9中示出了表示用于实现图1的设备102和/或图1和/或图3的相关联的AI引擎116的示例硬件逻辑、机器可读指令、硬件实现的状态机和/或其任何组合的流程图。机器可读指令可以是用于由诸如结合图10在下文中所讨论的示例处理器平台1000中示出的处理器1012之类的计算机处理器执行的可执行程序或可执行程序的一部分。虽然程序能具体化在存储于诸如CD-ROM、软盘、硬驱动器、DVD、蓝光盘或与处理器1012相关联的存储器之类的非瞬态计算机可读存储介质上的软件中,但是整个程序和/或其部分可替代地由除处理器1012之外的设备执行,和/或具体化在固件或专用硬件中。此外,尽管参考图5至图9中所示的流程图描述了示例程序,但是可以替代地使用实现示例设备102的许多其他方法。例如,可改变框的执行次序,和/或可改变、消除或组合所描述的框中的一些框。附加地或替代地,任何或所有框可以由被构造成在不执行软件或固件的情况下执行相应的操作的一个或多个硬件电路(例如,分立的和/或集成的模拟和/或数字电路、FPGA、ASIC、比较器、运算放大器(op-amp)、逻辑电路等)来实现。
如上文所提及,可使用存储于非瞬态计算机和/或机器可读介质上的可执行指令(例如,计算机和/或机器可读指令)实现图5-9的示例过程,非瞬态计算机和/或机器可读介质诸如:硬盘驱动器、闪存、只读存储器(ROM)、紧凑盘(CD)、数字多功能盘(DVD)、高速缓存、随机存取存储器(RAM)和/或在其中存储信息达任何时长(例如,达扩展时间段、永久地、达简短的实例、达临时缓冲时期和/或达对信息进行高速缓冲时期)的任何其他存储设备或存储盘。如本文中所使用,术语非瞬态计算机可读介质被明确地限定为包括任何类型的计算机可读存储设备和/或存储盘,并且排除传播信号并排除传输介质。
“包含”和“包括”(及其所有形式和时态)在本文中用作开放式术语。因此,每当权利要求将任何形式的“包含”或“包括”(例如,包括、包含等)用作前序部分或用于任何种类的权利要求记载中时,要理解的是,附加的要素、项等可以存在而不超出对应权利要求或记载的范围。如本文中所使用,当短语“至少”被用作例如与权利要求的前序部分中使用的过渡术语时,它以术语“包含”和“包括”是开放式的相同方式是开放式的。当例如以诸如A、B和/或C之类的形式使用术语“和/或”时,指的是A、B、C的任何组合或子集,诸如(1)单独的A、(2)单独的B、(3)单独的C、(4)A与B、(5)A与C、(6)B与C、以及(7)A与B与C。如本文中在描述结构、组件、项、对象和/或事物的上下文中所使用,短语“A和B中的至少一个”旨在是指包括以下任一项的实现方式:(1)至少一个A、(2)至少一个B、和(3)至少一个A和至少一个B。类似地,如本文中在描述结构、组件、项、对象和/或事物的上下文中所使用,短语“A或B中的至少一个”旨在是指包括以下任一项的实现方式:(1)至少一个A、(2)至少一个B、和(3)至少一个A和至少一个B。如本文中在描述过程、指令、动作、活动和/或步骤的实施或执行的上下文中所使用,短语“A和B中的至少一个”旨在是指包括以下任一项的实现方式:(1)至少一个A、(2)至少一个B、和(3)至少一个A和至少一个B。类似地,如本文中在描述过程、指令、动作、活动和/或步骤的实施或执行的上下文中所使用,短语“A或B中的至少一个”旨在是指包括以下任一项的实现方式:(1)至少一个A、(2)至少一个B、和(3)至少一个A和至少一个B。
图5的程序开始于框502,其中示例通信接口106获得与设备102相关联的传感器数据(例如,来自传感器104)。在框504处,示例使用监测器302监测与设备102相关联的使用数据。在框506处,示例上下文确定器304基于传感器数据和/或使用数据并且基于上下文学习模型来确定设备102的上下文。在框508处,示例上下文确定器304更新上下文学习模型。在框510处,示例硬件使用管理器306基于设备102的上下文并且基于操作学习模型来调节设备硬件(例如,数据处理硬件平台112以及其他组件)的操作。在框512处,示例硬件使用管理器306更新操作学习模型。在框514处,图5的示例过程判定是否继续。如果是,则控制返回到框502。否则,图5的示例过程结束。
图6是示出用于实现在视频监测系统的上下文中实现的图1的设备102的示例指令的流程图。图6的程序开始于框602,其中示例通信接口106从与设备102相关联的相机(例如,传感器104)获得视频数据。在框604处,示例存储器108对视频数据进行缓冲。在框606处,示例使用监测器302监测与设备102相关联的使用数据。在框608处,示例上下文确定器304基于使用数据并且基于上下文学习模型来确定用户上下文。在该示例中,用户上下文可以包括设备102的用户的偏好和/或设备102周围的环境因素(例如,周围环境的照明条件等)。在框610处,示例上下文确定器304分析视频数据以基于上下文学习模型来标识由相机捕获的场景的(多个)相关特性。图6的框608和框610两者都对应于如图5的框506中所表达的确定设备102的上下文的不同方面。
在框612处,示例上下文确定器304更新上下文学习模型。在框614处,示例硬件使用管理器306基于所标识的(多个)相关特性来调节捕获视频数据的相机的焦点。在框616处,示例硬件使用管理器306基于所标识的(多个)特性和/或用户上下文并基于操作学习模型来调节图2的渲染视频数据的(对应于图1的数据处理硬件平台112的)图形引擎112的操作。在框618处,示例硬件使用管理器306更新操作学习模型。在框620处,示例显示器114基于由图形引擎112的渲染来显示视频数据。在框622处,示例设备102判定是否继续该过程。如果是,则控制返回到框602。否则,图6的示例过程结束。
图7是示出使用设备简档来实现图1的设备102的示例指令的流程图。图7的程序开始于框702处,其中示例使用监测器302监测与设备102相关联的使用数据。在框704处,示例设备活动分类器308基于使用数据并基于上下文学习模型来确定设备102的当前状态。如上所述,设备102的当前状态对应于设备的上下文的某方面。因此,在一些示例中,框704可以由上下文确定器304而不是由设备活动分类器308来实现。在框706处,示例上下文确定器304基于设备简档(例如,图4的设备简档400)来确定设备102的预测)状态。(在框704处所确定的)当前状态和(在框706处所确定的预测状态两者都对应于如图5的框506中所表达的确定设备102的上下文的多个方面。图7提供了关于设备简档400的生成的进一步细节。在框708处,通信接口106获得与设备102相关联的传感器数据。在框710处,示例上下文确定器304基于传感器数据来确定设备102的附加上下文。在框712处,示例上下文确定器304更新上下文学习模型。
在框714处,示例硬件使用管理器306基于设备102的当前状态和预测状态、设备102的附加上下文、并且基于操作学习模型来调节设备硬件(例如,数据处理硬件平台112以及其他组件)的操作。在框716处,示例硬件使用管理器306更新操作学习模型。在框718处,示例电池寿命估计器312基于与设备102的当前状态和预测状态相关联的设备硬件的操作来估计设备102的电池寿命。在框720处,图7的示例过程判定是否继续。如果是,则控制返回到框702。否则,图7的示例过程结束。
图8是示出用于实现图3的AI引擎116以生成图1的设备102的设备简档的示例指令的流程图。图8的程序开始于框802处,其中使用监测器302监测与设备102相关联的使用数据。在框804处,示例设备活动分类器308基于使用数据并基于上下文学习模型来确定当前设备活动。在框806处,示例设备活动分类器308判定当前设备活动是否从先前活动变化而来。即,设备活动分类器308判定当前设备活动是否是新检测到的活动。如果是,则控制前进到框808,其中示例设备简档生成器310判定当前设备活动是否对应于新的设备状态。如果当前设备活动对应于新的设备状态,则控制前进到框810,其中示例设备简档生成器310将当前设备活动存储为设备102的新状态的发生。如果当前设备活动不对应于新设备状态(框808),则示例设备简档生成器310将当前设备活动存储为设备102的先前所标识状态的新的发生。在框810或框812之后,控制前进到框814,其中示例设备简档生成器存储从对应于先前活动的一个状态到对应于当前设备活动的另一个状态的转变。此后,控制前进到框818,如下文所讨论。
返回到框806,如果示例设备活动分类器308判定了当前设备活动未从先前活动改变而来,则控制前进到框816。在框816处,示例设备简档生成器310存储和/或更新当前设备活动已继续而不改变的持续时间。在框818处,示例设备简档生成器310计算和/或更新定义设备102的不同状态之间的转变的概率的设备简档(例如,图4的设备简档400)。在框820处,示例上下文确定器822更新上下文学习模型。此后,示例AI引擎116判定是否继续。如果是,则控制返回到框802。否则,图8的示例过程结束。
图9是表示用于实现设备102以促进新设备的设计的示例方法的流程图。图9的示例过程开始于框902处,其中示例AI引擎116生成定义设备102的不同状态的设备简档(例如,图4的设备简档400)。以上结合图8提供了框902的示例实现。在框904处,示例硬件使用管理器306确定当设备处于不同状态时用于与设备相关联的硬件的操作参数。
在框906处,示例硬件使用管理器306标识当设备102处于不同状态时硬件内的组件的操作之间的相互关系。在一些示例中,当收集和分析了在框902和904处生成的设备简档和操作参数之后,框906可以由设计工程师和/或个人使用不同设备来完成。作为特定示例,如果设备简档400指示与在一个或多个状态期间参与的特定设备活动相关联的第一硬件组件与在这一个或多个状态期间未被使用的第二硬件组件一起被激活,则设计工程师可以重新设计硬件电路,使得两个硬件组件可以被单独供电或被激活。以这种方式,新设计的设备中的AI引擎可以单独地控制两个组件的操作,使得在相关设备状态期间仅第一组件被激活以降低功耗。
返回图9的流程图,在框908处,设计工程师和/或其他个人基于所标识的相互关系重新设计硬件中的电路。此后,图9的示例过程结束。
图10是被构造用于执行图5至图9的指令以实现图1和/或图2的设备102和/或图1和/或图3的相关联的AI引擎116的示例处理器平台1000的框图。处理器平台1000可以是例如,服务器、个人计算机、工作站、自学习机(例如,神经网络)、移动设备(例如,手机、智能电话、诸如iPadTM的平板)、个人数字助理(PDA)、互联网设备、DVD播放器、CD播放器、数字视频记录仪、蓝光播放器、游戏控制台、个人视频记录仪、机顶盒、头戴式耳机或其他可穿戴设备、或任何其他类型的计算设备。
所图示示例的处理器平台1000包括处理器1012。所图示示例的处理器1012是硬件。例如,处理器1012可以由来自任何所需要的家族或制造商的一个或多个集成电路、逻辑电路、微处理器、GPU、DSP或控制器实现。硬件处理器可以是基于半导体的(例如,硅基)器件。在该示例中,处理器实现示例数据处理硬件平台112和示例AI引擎116(包括示例使用监测器302、示例上下文确定器304、示例硬件使用管理器306、示例设备活动分类器308、示例设备简档生成器310、和示例电池寿命估计器312)。
所图示示例的处理器1012包括本地存储器1013(例如,高速缓存)。所图示示例的处理器1012经由总线1018与包括易失性存储器1014和非易失性存储器1016的主存储器进行通信。易失性存储器1014可由同步动态随机存取存储器(SDRAM)、动态随机存取存储器(DRAM)、动态随机存取存储器和/或任何其他类型的随机存取存储器设备实现。非易失性存储器1016可由闪存和/或任何其他所期望类型的存储器设备实现。由存储器控制器控制对主存储器1014、1016的访问。
所图示示例的处理器平台1000还包括接口电路1020。接口电路1020可由任何类型的接口标准实现,诸如以太网接口、通用串行总线(USB)、接口、进场通信(NFC)接口和/或PCI快速接口。在该示例中,接口1020实现图1的示例通信接口106和示例用户输入接口110。
在所图示的示例中,一个或多个输入设备1022被连接至接口电路1020。(多个)输入设备1022准许用户将数据和/或命令输入至处理器1012中。(多个)输入设备可以由例如音频传感器、麦克风、相机(静止的或视频)、键盘、按钮、鼠标、触屏、轨迹板、轨迹球、等点鼠标和/或语音识别系统实现。
一个或多个输出设备1024(例如,图1的显示器114)也被连接到所示出示例的接口电路1020。输出设备1024可例如由显示设备(例如,发光二极管(LED)、有机发光二极管(OLED)、液晶显示器(LCD)、阴极射线管显示器(CRT)、面内切换(IPS)显示器、触摸屏等)、触觉输出设备、打印机和/或扬声器实现。因此,所图示示例的接口电路1020典型地包括图形驱动器卡、图形驱动器芯片和/或图形驱动器处理器。
所示出示例的接口电路1020还包括诸如发射机、接收机、收发机、调制解调器、住宅网关、无线接入点、和/或网络接口之类的通信设备,以促进经由网络1026与外部机器(例如,任何种类的计算设备)交换数据。通信可经由例如以太网连接、数字订户线路(DSL)连接、电话线连接、同轴电缆系统、卫星系统、直线对传式无线系统、蜂窝电话系统等
所图示示例的处理器平台1000还包括用于存储软件和/或数据的一个或多个大容量存储设备1028。此类大容量存储设备1028的示例包括软盘驱动器、硬盘驱动器、紧凑盘驱动器、蓝光盘驱动器、独立磁盘冗余阵列(RAID)系统和数字多功能盘(DVD)驱动器。
图5至图9的机器可执行指令1032可以被存储在大容量存储设备1028中,存储在易失性存储器1014中,存储在非易失性存储器1016中,和/或存储在诸如CD或DVD的可移除非瞬态计算机可读存储介质上。
从前述内容将理解,已公开能够基于可用信息标识设备的上下文的示例方法、装置和制品。然后,设备的上下文用于调节或控制与设备的硬件相关联的操作参数,以实现增加的功率效率、增加的性能速度、增加的存储器响应时间、和/或任何(多个)其他目标度量,同时仍然在由设备的当前环境所施加的条件和/或限制下适当地操作设备。此外,这些结果是使用AI引擎完成的,该AI引擎学习如何确定上下文并随时间管理硬件使用,从而在AI引擎使用得越多时改善(例如,优化)结果。在一些示例中,AI引擎还学习设备的不同状态以及在此类状态之间转变的概率,以定义可用于预测设备的未来状态的设备简档。通过标识或预测设备的未来状态,可以预期硬件要求的变化以进一步改善设备的高效操作。因此,所公开的方法、装置和制品相应地涉及计算机的运行中的一个或多个改善。
示例1包括一种计算设备,该计算设备包括硬件平台和人工智能(AI)引擎,该AI引擎用于:确定设备的上下文;以及基于设备的上下文的预期变化来调节硬件平台的操作,该调节用于修改设备的计算效率、设备的功率效率、或设备的存储器响应时间中的至少一者。
示例2包括如示例1中所述的计算设备,进一步包括:通信接口,用于从传感器接收传感器数据,该传感器数据用于由硬件平台处理;以及使用监测器,用于监测与该设备相关联的使用数据,该使用数据指示与设备相关联的组件的使用。
示例3包括如示例2中所述的计算设备,进一步包括传感器,该传感器是相机并且传感器数据是视频数据,设备的上下文基于视频数据的内容。
示例4包括如示例3中所述的计算设备,其中设备的上下文基于与设备周围的环境相关联的照明条件,该照明条件由传感器数据定义。
示例5包括如示例3或示例4中任一项所述的计算设备,其中,AI引擎用于:检测视频数据的内容的目标特性,该目标特性由使用数据定义;以及基于目标特性的检测来确定设备的上下文。
示例6包括如示例5中所述的计算设备,其中目标特性对应于视频数据的内容的主题。
示例7包括如示例6中所述的计算设备,其中硬件平台是图形引擎,并且AI引擎用于通过使图形引擎以第一分辨率渲染视频数据的第一部分并且以第二分辨率渲染视频数据的第二部分来调节硬件平台的操作,该第二分辨率低于第一分辨率,视频数据的第一部分与目标特性相关联。
示例8包括如示例7中所述的计算设备,其中AI引擎用于通过调节由图形引擎渲染的视频数据的分辨率来调节硬件平台的操作。
示例9包括如示例3至示例8中任一项所述的计算设备,其中,硬件平台是图形引擎,并且AI引擎用于通过调节图形引擎内的用于渲染视频数据的计算元件的数量来调节硬件平台的操作。
示例10包括如示例3至示例8中任一项所述的计算设备,其中AI引擎用于调节硬件平台的操作以改变相机的焦点。
示例11包括如示例1至示例10中任一项所述的计算设备,其中AI引擎用于通过调节与硬件平台的组件相关联的操作参数来调节硬件平台的操作,该操作参数对应于功率状态、电压电平、功率门控、时钟速率、或频率中的至少一者。
示例12包括如示例1-11中任一项所述的计算设备,其中AI引擎用于:确定设备的当前状态;基于设备的当前状态和简档来确定设备的预测状态,该简档定义设备的不同状态以及这些不同状态中的不同状态之间的转变的概率;以及基于设备的当前状态或设备的预测状态中的至少一者来确定设备的上下文。
示例13包括如示例12中所述的计算设备,其中AI引擎用于基于设备的预测状态来调节硬件平台的操作。
示例14包括如示例12或示例13中任一项所述的计算设备,其中AI引擎用于基于设备的当前状态和预测状态来估计设备的电池寿命。
示例15包括如示例12至示例14中任一项所述的计算设备,其中AI引擎用于通过以下操作来生成设备的简档:标识设备的不同活动;对不同活动进行分类以定义不同的状态;标识这些不同状态中的不同状态之间的转变;以及计算转变的概率。
示例16包括如示例15中所述的计算设备,其中不同活动对应于以下至少一者:硬件平台的不同操作;或在硬件平台上实现的不同软件应用。
示例17包括如示例15或示例16中任一项所述的计算设备,其中,AI引擎用于:监测这些转变中的不同转变之间的不同活动的持续时间;以及基于不同活动的持续时间来计算这些转变中一些转变的不同概率。
示例18包括一种用于计算设备的人工智能(AI)引擎,该AI引擎包括:上下文确定器,用于确定设备的上下文;以及硬件使用管理器,用于基于设备的上下文的预期的变化来调节设备的硬件平台的操作,该调节用于修改设备的计算效率、设备的功率效率、或设备的存储器响应时间中的至少一者。
示例19包括如示例18中所述的AI引擎,进一步包括使用监测器,用于监测与设备相关联的使用数据,该使用数据指示与该设备相关联的组件的使用,该上下文确定器用于基于使用数据并基于从设备的传感器获得的传感器数据来确定该设备的上下文,该传感器数据用于由硬件平台处理。
示例20包括如示例19中所述的AI引擎,其中传感器是相机,并且传感器数据是视频数据,设备的上下文基于视频数据的内容。
示例21包括如示例20中所述的AI引擎,其中设备的上下文基于与设备周围的环境相关联的照明条件,该照明条件由传感器数据定义。
示例22包括如示例20或示例21中任一项所述的AI引擎,其中,上下文确定器用于:检测视频数据的内容的目标特性,该目标特性由使用数据定义;以及基于目标特性的检测来确定设备的上下文。
示例23包括如示例22中所述的AI引擎,其中目标特性对应于视频数据的内容的主题。
示例24包括如示例23中所述的AI引擎,其中硬件平台是图形引擎,并且硬件使用管理器用于通过使图形引擎以第一分辨率渲染视频数据的第一部分并且以第二分辨率渲染视频数据的第二部分来调节硬件平台的操作,该第二分辨率低于第一分辨率,视频数据的第一部分与目标特性相关联。
示例25包括如示例24中所述的AI引擎,其中硬件使用管理器用于通过调节由图形引擎渲染的视频数据的分辨率来调节硬件平台的操作。
示例26包括如示例20至示例25中任一项所述的AI引擎,其中,硬件平台是图形引擎,并且硬件使用管理器用于通过调节图形引擎内用于渲染视频数据的计算元件的数量来调节硬件平台的操作。
示例27包括如示例20至示例26中任一项所述的AI引擎,其中硬件使用管理器用于调节硬件平台的操作以改变相机的焦点。
示例28包括如示例18至示例27中任一项所述的AI引擎,其中硬件使用管理器用于通过调节与硬件平台的组件相关联的操作参数来调节硬件平台的操作,该操作参数对应于功率状态、电压电平、功率门控、时钟速率、或频率中的至少一者。
示例29包括如示例18-27中任一项所述的AI引擎,其中上下文确定器用于:确定设备的当前状态;基于设备的当前状态和简档来确定设备的预测状态,该简档定义设备的不同状态以及这些不同状态中的不同状态之间的转变的概率;以及基于设备的当前状态或设备的预测状态中的至少一者来确定设备的上下文。
示例30包括如示例29中所述的AI引擎,其中硬件使用管理器用于基于设备的预测状态来调节硬件平台的操作。
示例31包括如示例29或示例30中任一项所述的AI引擎,进一步包括电池寿命估计器,用于基于设备的当前状态和预测状态来估计设备的电池寿命。
示例32包括如示例29至示例31中任一项所述的AI引擎,进一步包括设备活动分类器,用于:标识设备的不同活动;对不同活动进行分类以定义不同状态;以及标识这些不同状态中的不同状态之间的转变;以及设备简档生成器,用于:计算转变的概率;以及基于不同状态、转变、和概率来生成设备的简档。
示例33包括如示例32中所述的AI引擎,其中不同活动对应于以下至少一者:硬件平台的不同操作;或在硬件平台上实现的不同软件应用。
示例34包括如示例32或示例33中任一项所述的AI引擎,其中,设备简档生成器用于:监测这些转变中的不同转变之间的不同活动的持续时间;以及基于不同活动的持续时间来计算这些转变中一些转变的不同概率。
示例35包括一种非瞬态计算机可读介质,包括指令,指令当被执行时,使得至少一个处理器用于至少执行人工智能(AI)引擎以:确定设备的上下文;以及基于设备的上下文的预期变化来调节设备的操作,该调节用于修改设备的计算效率、设备的功率效率、或设备的存储器响应时间中的至少一者。
示例36包括如示例35中所述的非瞬态计算机可读介质,其中,该指令使得该至少一个处理器用于:基于从传感器收集的传感器数据和由使用监测器监测的使用数据来确定上下文,传感器数据用于由设备处理,使用数据指示与设备相关联的组件的使用。
示例37包括如示例36中所述的非瞬态计算机可读介质,其中传感器是相机,并且传感器数据是视频数据,该指令使得至少一个处理器用于基于视频数据的内容来确定设备的上下文。
示例38包括如示例37中所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于基于与设备周围的环境相关联的照明条件来确定设备的上下文,该照明条件由传感器数据定义。
示例39包括如示例37或示例38中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:经由AI引擎检测视频数据的内容的目标特性,该目标特性由使用数据定义;以及基于目标特性的检测来确定设备的上下文。
示例40包括如示例39中所述的非瞬态计算机可读介质,其中目标特性对应于视频数据的内容的主题。
示例41包括如示例40中所述的非瞬态计算机可读介质,其中指令进一步使得至少一个处理器用于:通过使设备以第一分辨率渲染视频数据的第一部分并且以第二分辨率渲染视频数据的第二部分来调节硬件平台的操作,该第二分辨率低于第一分辨率,视频数据的第一部分与目标特性相关联。
示例42包括如示例37-41中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:通过调节由设备渲染的视频数据的分辨率来调节该设备的操作。
示例43包括如示例37-42中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:通过调节图形引擎内用于渲染视频数据的计算元件的数量来调节设备的操作。
示例44包括如示例37-43中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:调节设备的操作以改变相机的焦点。
示例45包括如示例35-44中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:通过调节与设备的组件相关联的操作参数来调节该设备的操作,该操作参数对应于功率状态、电压电平、电源门控、时钟速率、或频率中的至少一者。
示例46包括如示例35-45中任一项所述的非瞬态计算机可读介质,其中该指令进一步使得至少一个处理器用于:经由AI引擎确定设备的当前状态;经由AI引擎基于设备的当前状态和简档来确定设备的预测状态,该简档定义设备的不同状态以及这些不同状态中的不同状态之间的转变的概率;以及基于设备的当前状态或设备的预测状态中的至少一者来确定设备的上下文。
示例47包括如示例46中所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:基于设备的预测状态来调节设备的操作。
示例48包括如示例46或示例47中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:基于设备的当前状态和预测状态来估计设备的电池寿命。
示例49包括如示例46-48中任一项所述的非瞬态计算机可读介质,其中该指令进一步使得至少一个处理器用于:经由AI引擎通过以下操作来生成设备的简档:标识设备的不同活动;对不同的活动进行分类以定义不同的状态;标识这些不同状态中的不同状态之间的转变;以及计算转变的概率。
示例50包括如示例49中所述的非瞬态计算机可读介质,其中不同活动对应于以下至少一者:设备的不同操作;或在设备上实现的不同软件应用。
示例51包括如示例49或示例50中任一项所述的非瞬态计算机可读介质,其中,该指令进一步使得至少一个处理器用于:监测这些转变中的不同转变之间的不同活动的持续时间;以及基于不同活动的持续时间来计算这些转变中一些转变的不同概率。
示例52包括一种方法,该方法包括:经由人工智能(AI)引擎确定设备的上下文;以及基于设备的上下文的预期变化来调节设备的操作,该调节用于修改设备的计算效率、设备的功率效率、或设备的存储器响应时间中的至少一者。
示例53包括如示例52中所述的方法,其中上下文基于从传感器收集的传感器数据和由使用监测器监测的使用数据来确定,该传感器数据用于由该设备处理,该使用数据指示与该设备相关联的组件的使用。
示例54包括如示例53中所述的方法,进一步包括:基于视频数据的内容来确定设备的上下文。
示例55包括如示例54中所述的方法,进一步包括:基于与设备周围的环境相关联的照明条件来确定设备的上下文,该照明条件由传感器数据定义。
示例56包括如示例54或示例55中任一项所述的方法,进一步包括:经由AI引擎检测视频数据的内容的目标特性,该目标特性由使用数据定义;以及基于目标特性的检测来确定设备的上下文。
示例57包括如示例56中所述的方法,其中目标特性对应于视频数据的内容的主题。
示例58包括如示例57中所述的方法,其中包括:通过使设备以第一分辨率渲染视频数据的第一部分并且以第二分辨率渲染视频数据的第二部分来调节硬件平台的操作,该第二分辨率低于第一分辨率,视频数据的第一部分与目标特性相关联。
示例59包括如示例54-58中任一项所述的方法,进一步包括:通过调节由设备渲染的视频数据的分辨率来调节设备的操作。
示例60包括如示例54-59中任一项所述的方法,进一步包括:通过调节图形引擎内用于渲染视频数据的计算元件的数量来调节设备的操作。
示例61包括如示例54-60中任一项所述的方法,进一步包括:调节设备的操作以改变相机的焦点。
示例62包括如示例52-61中任一项所述的方法,进一步包括:通过调节与设备的组件相关联的操作参数来调节硬件平台的操作,该操作参数对应于功率状态、电压电平、功率门控、时钟速率、或频率中的至少一者。
示例63包括如示例52-62中任一项所述的方法,进一步包括:确定设备的当前状态;基于设备的当前状态和简档来确定设备的预测状态,该简档定义设备的不同状态以及这些不同状态中的不同状态之间的转变的概率;以及基于设备的当前状态或设备的预测状态中的至少一者来确定设备的上下文。
示例64包括如示例63中所述的方法,进一步包括:基于设备的预测状态来调整设备的操作。
示例65包括如示例63或示例64中任一项所述的方法,进一步包括:基于设备的当前状态和预测状态来估计设备的电池寿命。
示例66包括如示例63-65中任一项所述的方法,进一步包括:经由AI引擎通过以下操作来生成设备的简档:标识设备的不同活动;对不同的活动进行分类以定义不同的状态;标识这些不同状态中的不同状态之间的转变;以及计算转换的概率。
示例67包括如示例66中所述的方法,其中不同活动对应于以下至少一者:设备的不同操作;或在设备上实现的不同软件应用。
示例68包括如示例66或示例67中任一项所述的方法,进一步包括:监测这些转变中的不同转变之间的不同活动的持续时间;以及基于不同活动的持续时间来计算这些转变中的一些转变的不同概率。
示例69包括如示例52-68中任一项所述的方法,进一步包括:经由AI引擎标识设备的设备活动的不同状态,设备的上下文基于从不同状态之中标识的当前状态来确定;确定与不同状态相关联的设备的操作参数;以及基于与在这些不同状态中的不同状态期间操作的设备的不同组件相关联的操作参数的相互关系来为新设备重新设计设备的电路。
示例70包括非瞬态计算机可读介质,包括指令,该指令当被执行时使得机器用于至少执行示例52-69中任一项的方法。
尽管本文中已公开了某些示例方法、设备和制品,但本专利涵盖的范围并不限于此。相反,本专利涵盖落入本专利权利要求范围内的全部方法、设备和制品。
Claims (25)
1.一种计算设备,包括:
硬件平台;以及
人工智能AI引擎,用于:
确定所述设备的上下文;以及
基于所述设备的所述上下文的预期变化来调节所述硬件平台的操作,所述调节用于修改所述设备的计算效率、所述设备的功率效率、或所述设备的存储器响应时间中的至少一者。
2.如权利要求1所述的计算设备,进一步包括:
通信接口,用于从传感器接收传感器数据,所述传感器数据用于由所述硬件平台处理;以及
使用监测器,用于监测与所述设备相关联的使用数据,所述使用数据指示与所述设备相关联的组件的使用。
3.如权利要求2中所述的计算设备,进一步包括所述传感器,所述传感器是相机并且所述传感器数据是视频数据,所述设备的所述上下文基于所述视频数据的内容。
4.如权利要求3所述的计算设备,其特征在于,所述设备的所述上下文基于与所述设备周围的环境相关联的照明条件,所述照明条件由所述传感器数据定义。
5.如权利要求3所述的计算设备,其特征在于,所述AI引擎用于:
检测所述视频数据的所述内容的目标特性,所述目标特性由所述使用数据定义;以及
基于所述目标特性的检测来确定所述设备的所述上下文。
6.如权利要求5所述的计算设备,其特征在于,所述目标特性对应于所述视频数据的所述内容的主题。
7.如权利要求6所述的计算设备,其特征在于,所述硬件平台是图形引擎,并且所述AI引擎用于通过使所述图形引擎以第一分辨率渲染所述视频数据的第一部分并且以第二分辨率渲染所述视频数据的第二部分来调节所述硬件平台的所述操作,所述第二分辨率低于所述第一分辨率,所述视频数据的所述第一部分与所述目标特性相关联。
8.如权利要求7所述的计算设备,其特征在于,所述AI引擎用于通过调节由所述图形引擎渲染的所述视频数据的分辨率来调节所述硬件平台的所述操作。
9.如权利要求3所述的计算设备,其特征在于,所述硬件平台是图形引擎,并且所述AI引擎用于通过调节所述图形引擎内用于渲染所述视频数据的计算元件的数量来调节所述硬件平台的所述操作。
10.如权利要求1-9中任一项所述的计算设备,其特征在于,所述AI引擎用于通过调节与所述硬件平台的组件相关联的操作参数来调节所述硬件平台的所述操作,所述操作参数对应于功率状态、电压电平、功率门控、时钟速率、或频率中的至少一者。
11.如权利要求1-9中任一项所述的计算设备,其特征在于,所述AI引擎用于:
确定所述设备的当前状态;
基于所述设备的所述当前状态和简档来确定所述设备的预测状态,所述简档定义所述设备的不同状态以及所述不同状态中的不同状态之间的转变的概率;以及
基于所述设备的所述当前状态或所述设备的所述预测状态中的至少一者来确定所述设备的所述上下文。
12.如权利要求11所述的计算设备,其特征在于,所述AI引擎用于基于所述设备的所述预测状态来调节所述硬件平台的所述操作。
13.如权利要求11所述的计算设备,其特征在于,所述AI引擎用于基于所述设备的所述当前状态和所述预测状态来估计所述设备的电池寿命。
14.一种非瞬态计算机可读介质,包括指令,所述指令当被执行时使得至少一个处理器至少用于:
执行人工智能AI引擎以确定设备的上下文;以及
基于所述设备的所述上下文的预期变化来调节所述设备的操作,所述调节用于修改所述设备的计算效率、所述设备的功率效率、或所述设备的存储器响应时间中的至少一者。
15.如权利要求14所述的非瞬态计算机可读介质,其特征在于,所述指令使得所述至少一个处理器用于:基于从传感器收集的传感器数据和由使用监测器监测的使用数据来确定所述上下文,所述传感器数据用于由所述设备处理,所述使用数据指示与所述设备相关联的组件的使用。
16.如权利要求14所述的非瞬态计算机可读介质,其特征在于,所述指令进一步使得所述至少一个处理器用于:通过调节与所述设备的组件相关联的操作参数来调节所述设备的所述操作,所述操作参数对应于功率状态、电压电平、电源门控、时钟速率、或频率中的至少一者。
17.如权利要求14-16中任一项所述的非瞬态计算机可读介质,其特征在于,所述指令进一步使得所述至少一个处理器用于:
经由所述AI引擎来确定所述设备的当前状态;
经由所述AI引擎基于所述设备的所述当前状态和简档来确定所述设备的预测状态,所述简档定义所述设备的不同状态以及所述不同状态中的不同状态之间的转变的概率;以及
基于所述设备的所述当前状态或所述设备的所述预测状态中的至少一者来确定所述设备的所述上下文。
18.如权利要求17所述的非瞬态计算机可读介质,其特征在于,所述指令进一步使得所述至少一个处理器用于:基于所述设备的所述预测状态来调节所述设备的所述操作。
19.一种方法,包括:
经由人工智能AI引擎确定设备的上下文;以及
基于所述设备的所述上下文的预期变化来调节所述设备的操作,所述调节用于修改所述设备的计算效率、所述设备的功率效率、或所述设备的存储器响应时间中的至少一者。
20.如权利要求19中所述的方法,其特征在于,所述上下文基于从传感器收集的传感器数据和由使用监测器监测的使用数据来确定,所述传感器数据用于由所述设备处理,所述使用数据指示与所述设备相关联的组件的使用。
21.如权利要求19所述的方法,进一步包括:通过调节与所述设备的组件相关联的操作参数来调节所述设备的所述操作,所述操作参数对应于功率状态、电压电平、功率门控、时钟速率、或频率中的至少一者。
22.如权利要求19或20中的一项所述的方法,进一步包括:
确定所述设备的当前状态;
基于所述设备的所述当前状态和简档来确定所述设备的预测状态,所述简档定义所述设备的不同状态以及所述不同状态中的不同状态之间的转变的概率;以及
基于所述设备的所述当前状态或所述设备的所述预测状态中的至少一者来确定所述设备的所述上下文。
23.如权利要求22所述的方法,进一步包括:基于所述设备的所述预测状态来调节所述设备的所述操作。
24.如权利要求22所述的方法,进一步包括:基于所述设备的所述当前状态和所述预测状态来估计所述设备的电池寿命。
25.如权利要求19或20中的一项所述的方法,进一步包括:
经由所述AI引擎标识所述设备的设备活动的不同状态,所述设备的所述上下文基于从所述不同状态之中标识的当前状态来确定;
确定与所述不同状态相关联的所述设备的操作参数;以及
基于与在所述不同状态中的不同状态期间操作的所述设备的不同组件相关联的操作参数的相互关系来为新设备重新设计所述设备的电路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/146,454 US10942562B2 (en) | 2018-09-28 | 2018-09-28 | Methods and apparatus to manage operation of variable-state computing devices using artificial intelligence |
US16/146,454 | 2018-09-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110968474A true CN110968474A (zh) | 2020-04-07 |
Family
ID=65275166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910789664.3A Pending CN110968474A (zh) | 2018-09-28 | 2019-08-26 | 用于使用人工智能来管理可变状态计算设备的操作的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10942562B2 (zh) |
EP (1) | EP3629297A1 (zh) |
CN (1) | CN110968474A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9147222B2 (en) * | 2010-06-23 | 2015-09-29 | Digimarc Corporation | Detecting encoded signals under adverse lighting conditions using adaptive signal detection |
US11003972B2 (en) * | 2018-06-27 | 2021-05-11 | Intel Corporation | Localizing a vehicle's charging or fueling port—methods and apparatuses |
KR20210099564A (ko) * | 2018-12-31 | 2021-08-12 | 인텔 코포레이션 | 인공 지능을 이용한 보안 시스템 |
GB2597277B (en) * | 2020-07-17 | 2022-07-13 | Sky Cp Ltd | Predictive power management using machine learning |
US11520397B2 (en) * | 2020-10-23 | 2022-12-06 | Microsoft Technology Licensing, Llc | Power management of artificial intelligence (AI) models |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792328B2 (en) * | 2007-01-12 | 2010-09-07 | International Business Machines Corporation | Warning a vehicle operator of unsafe operation behavior based on a 3D captured image stream |
WO2012093324A1 (en) * | 2011-01-06 | 2012-07-12 | Koninklijke Philips Electronics N.V. | Electrical energy distribution apparatus. |
US9164826B2 (en) * | 2013-01-23 | 2015-10-20 | Allegro Microsystems, Llc | Method and apparatus to recover from an erroneous logic state in an electronic system |
US9626227B2 (en) | 2015-03-27 | 2017-04-18 | Intel Corporation | Technologies for offloading and on-loading data for processor/coprocessor arrangements |
US9749528B1 (en) | 2015-06-11 | 2017-08-29 | Ambarella, Inc. | Multi-stage wakeup battery-powered IP camera |
GB2556701C (en) * | 2015-09-15 | 2022-01-19 | Mitsubishi Electric Corp | Image processing apparatus, image processing system, and image processing method |
US10146286B2 (en) | 2016-01-14 | 2018-12-04 | Intel Corporation | Dynamically updating a power management policy of a processor |
CN113413479B (zh) * | 2016-08-03 | 2023-02-28 | 斯肯特桥控股有限公司 | 联网气味扩散装置的方法和系统 |
US20180150124A1 (en) | 2016-11-28 | 2018-05-31 | Qualcomm Incorporated | Wifi memory power minimization |
US10121103B2 (en) | 2016-12-09 | 2018-11-06 | Cisco Technologies, Inc. | Scalable deep learning video analytics |
-
2018
- 2018-09-28 US US16/146,454 patent/US10942562B2/en active Active
-
2019
- 2019-06-25 EP EP19182450.7A patent/EP3629297A1/en active Pending
- 2019-08-26 CN CN201910789664.3A patent/CN110968474A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3629297A1 (en) | 2020-04-01 |
US10942562B2 (en) | 2021-03-09 |
US20190050049A1 (en) | 2019-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10942562B2 (en) | Methods and apparatus to manage operation of variable-state computing devices using artificial intelligence | |
US10579910B2 (en) | Dynamic classifier selection based on class skew | |
US8635475B2 (en) | Application-specific power management | |
KR20190110519A (ko) | 딥 러닝 모델들의 분산 훈련을 위한 시스템들 및 방법들 | |
TW201902226A (zh) | 訊框速率調整方法及圖像處理裝置 | |
US20140317427A1 (en) | Dynamic clock voltage scaling (dcvs) based on application performance in a system-on-a-chip (soc), and related methods and processor-based systems | |
CN110968423A (zh) | 使用机器学习将工作负荷分配给加速器的方法和设备 | |
CN112783307A (zh) | 用于基于用户存在来管理计算设备的功率和性能的方法和装置 | |
WO2012001462A1 (en) | Method and apparatus for providing context-based power consumption control | |
JP2021517697A (ja) | リソーススケジューリング方法および端末デバイス | |
JP5701810B2 (ja) | センサデータ記録装置、方法及びプログラム | |
KR20130122737A (ko) | 설정 변경으로 인한 배터리 수명의 디스플레이 | |
GB2588701A (en) | Predicting a remaining battery life in a device | |
CN107943570B (zh) | 应用管理方法、装置、存储介质及电子设备 | |
WO2019085754A1 (zh) | 应用清理方法、装置、存储介质及电子设备 | |
US20220308922A1 (en) | Method and device of launching an application in background | |
US11489928B2 (en) | Prioritization of processes based on user persona and reinforcement learning | |
WO2019062409A1 (zh) | 后台应用程序管控方法、存储介质及电子设备 | |
US20120331473A1 (en) | Electronic device and task managing method | |
CN107943535B (zh) | 应用清理方法、装置、存储介质及电子设备 | |
JP2015145873A (ja) | センサデータ記録装置、方法及びプログラム | |
CN103853307A (zh) | 电子装置及降低处理器系统功耗的方法 | |
WO2019153993A1 (en) | Video playback energy consumption control | |
US20180004542A1 (en) | Electronic device and half-suspend controlling method applied therein | |
US11830425B2 (en) | Modifying pixel usage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |