CN115904054A - 用于控制显示面板功率和保真度的积极性的方法和装置 - Google Patents
用于控制显示面板功率和保真度的积极性的方法和装置 Download PDFInfo
- Publication number
- CN115904054A CN115904054A CN202211012483.8A CN202211012483A CN115904054A CN 115904054 A CN115904054 A CN 115904054A CN 202211012483 A CN202211012483 A CN 202211012483A CN 115904054 A CN115904054 A CN 115904054A
- Authority
- CN
- China
- Prior art keywords
- circuit
- image
- machine learning
- display
- learning model
- 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/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3265—Power saving in display device
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
-
- 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/3215—Monitoring of peripheral devices
- G06F1/3218—Monitoring of peripheral devices of display devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- 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
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/06—Adjustment of display parameters
- G09G2320/0626—Adjustment of display parameters for control of overall brightness
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/10—Special adaptations of display systems for operation with variable images
- G09G2320/103—Detection of image changes, e.g. determination of an index representative of the image change
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2330/00—Aspects of power supply; Aspects of display protection and defect management
- G09G2330/02—Details of power systems and of start or stop of display operation
- G09G2330/021—Power management, e.g. power saving
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Power Sources (AREA)
Abstract
公开了用于控制显示面板功率节省的积极性的方法、装置、系统和制品。示例装置包括:显示面板;显示控制器,用于调节用于由显示面板显示的图像;以及功率节省控制器,用于:访问被提供给显示控制器的图像,使用图像作为输入来执行机器学习模型以生成积极性值,以及向显示控制器提供该积极性值,显示控制器用于基于积极性值来调节图像。
Description
技术领域
本公开总体上涉及显示控制器,并且更具体地,涉及用于控制显示面板功率和保真度的积极性的方法和装置。
背景技术
计算系统(诸如个人计算机、膝上型电脑、平板电脑、移动设备(例如,手机))包括许多不同的组件。一个此类组件是用于向用户显示信息(例如,图像)的显示器。尽管在过去十年中开发了重要的优化技术,但显示器仍然是此类计算系统的主要功率消耗组件中的一个。
附图说明
图1是示出可能由于使用功率节省算法而引入的示例伪像的图。
图2是使用根据本公开的教导构建的膝上型电脑形状因子实现的示例计算系统的框图。
图3是使用根据本公开的教导构建的平板电脑形状因子实现的示例计算系统的框图。
图4是图示图2和/或图3的示例计算系统的显示控制器、功率节省控制器和显示面板之间的连接的框图。
图5是图示图2和/或图3的示例计算系统的显示控制器、功率节省控制器和显示面板之间的替代性连接的框图。
图6是图示为由显示控制器使用的各种类型的功率节省算法提供积极性值的功率节省控制器的图。
图7是图示模型从模型创建和分发系统到功率节省控制器的分发的系统图。
图8是图2和/或图3的功率节省控制器的示例实现方式的框图。
图9是图7的示例模型创建和分发系统的示例实现方式的框图。
图10是表示可由示例模型创建和分发系统执行以创建和分发机器学习模型的示例机器可读指令的流程图的。
图11是图示训练数据的收集和标注的框图。
图12是表示可由功率节省控制器执行以生成供显示控制器使用的积极性值的示例机器可读指令的流程图。
图13是包括被构造用于执行图10的示例机器可读指令以实现图9的示例模型创建和分发系统的处理器电路的示例处理平台的框图。
图14是包括被构造用于执行图12的示例机器可读指令以实现图8的示例功率节省控制器的处理器电路的示例处理平台的框图。
图15是图13和/或图14的处理器电路的示例实现方式的框图。
图16是图13和/或图14的处理器电路的另一示例实现方式的框图。
附图并未按比例绘制。一般来说,贯穿(一个或多个)附图和所附书面说明书,相同的附图标记将用于指代相同或类似的部分。
除非另有特别说明,否则诸如“第一”、“第二”、“第三”等的描述符在本文中使用而不以任何方式强加或以其他方式指示优先级、物理顺序、列表中的布置和/或排序的任何含义,但仅用作标签和/或任意名称来区分要素以便于理解所公开的示例。在一些示例中,描述符“第一”可以用于指代具体实施方式中的要素,而在权利要求中可以使用诸如“第二”或“第三”之类的不同描述符来指代同一要素。在此类实例中,应当理解,此类描述符仅用于清楚地标识那些可能例如以其他方式共享相同名称的要素。
如本文中所使用,“近似”和“大约”是指由于制造公差和/或其他现实世界缺陷而可能并不精确的尺寸。如本文中所使用,“基本上实时的”是指,认识到针对计算时间、传输等可能存在现实世界延迟,以接近瞬时的方式发生。由此,除非另外指定,否则“基本上实时的”是指实时+/-1秒。
如本文所使用,短语“在通信中”(包括其变体)包含直接通信和/或通过一个或多个中间组件的间接通信,并且不需要直接的物理(例如,有线)通信和/或持续通信,而是附加地包括以周期性间隔、预定间隔、非周期性间隔、和/或一次性事件来进行的选择性通信。
如本文中所使用,“处理器电路”定义为包括(i)一个或多个专用电路,被构造成用于执行(一个或多个)特定操作并包括一个或多个基于半导体的逻辑器件(例如,由一个或多个晶体管实现的电硬件),和/或(ii)一个或多个基于半导体的通用电路,用指令编程以执行特定操作并且包括一个或多个基于半导体的逻辑器件(例如,由一个或多个晶体管实现的电硬件)。处理器电路的示例包括经编程微处理器、可实例化指令的现场可编程门阵列(Field Programmable Gate Arrays,FPGA)、中央处理器单元(Central Processor Units,CPU)、图形处理器单元(Graphics Processor Units,GPU)、数字信号处理器(DigitalSignal Processors,DSP)、XPU或微控制器以及诸如专用集成电路(Application SpecificIntegrated Circuits,ASIC)之类的集成电路。例如,XPU可以由异构计算系统实现,该异构计算系统包括多种类型的处理器电路(例如,一个或多个FPGA、一个或多个CPU、一个或多个GPU、一个或多个DSP等,和/或其组合)和可将(一个或多个)计算任务指派给多种类型的处理电路中最适合执行该(一个或多个)计算任务的(一个或多个)处理电路的(一个或多个)应用编程接口(application programming interface,API)。
具体实施方式
显示组件通常是任何计算系统(诸如个人计算机、平板电脑、移动设备、手机等)中功率消耗最高的设备。液晶显示器(Liquid Crystal Display,LCD)面板使用诸如显示器功率节省技术(Display Power Saving Technology,DPST)和内容自适应背光控制(ContentAdaptive Backlight Control,CABC)之类的技术来降低由显示器消耗的功率量。此类方法依赖于增强所显示图像的对比度并且同时降低显示背光,使得所得到的效果具有相似的用户体验和更低的显示功率。在一些示例中,对于LCD,利用DPST可以实现最多50%的显示背光功率节省。虽然DPST和类似算法具有高的功率节省潜力,但它遇到了一些挑战,例如,包括不一致的图像保真度、视觉伪像、某些类型的移动设备使用场景(例如,浏览网页时)中的低功率节省等。
在一些示例中,显示控制器具有有限数量的功率节省设置(例如,五个级别的功率节省)。较高的功率节省设置以较低的图像保真度为代价带来较高的功率节省,而较低的功率节省设置则以消耗较多功率为代价带来较好的保真度。例如,在五级系统中,第5级以最高的保真度下降实现最大的功率节省,而第1级以较低的保真度下降实现最小的功率节省。基于所选择的级别,功率节省系统使用启发式调整的参数和帧直方图来实时地应用像素亮度增强和背光控制,致力于减少(例如,节约)由显示器消耗的功率。不幸的是,使用该方法,图像保真度取决于内容而急剧地变化。对于某些内容,图像可能被降级到不可接受的质量水平。例如,以第5级,两个图像可以节省相同数量的功率(例如,10%的功率节省),但图像质量可能急剧地不同(例如,这些图像中的一个图像可能存在明显的质量损失和/或可能包括失真)。一般来说,为了节省功率,会遇到一定的质量损失,并且此种质量损失可基于要显示的图像而有所不同。
此外,此类功率节省算法可导致伪像的创建,特别是对于具有色彩渐变的图像。一些功率节省算法试图通过更改图像内像素的值来增强图像,从而使得背光功率可以被降低。一般来说,此类方法对图像质量的影响最小或没有影响。然而,在一些示例中,如果显示的图像包含色彩渐变,如具有蓝天、日出、日落、湖泊等的图像,色彩压缩可导致色带伪像。
图1是图示可能由于使用功率节省算法而引入的示例伪像的图。图1的图示示例示出了计算设备100,其包括呈现图像120的显示器110。图1的图示示例的图像120包括伪像135,这些伪像135被表示为对角线。在一些情况下,这些伪像135变得更加突出,因为当像素增强被应用时,可以看到这些色带在显示器上移动(有时达几秒钟)。色带的滚动称为滚动效果,并且出于进行更平滑过渡而逐渐地应用像素增强的结果(例如,在几帧或几秒钟内,取决于所需的更新)。滚动效果对用户体验产生了负面影响,以至于在一些情况下,用户和/或制造商可简单地禁用其计算系统上的所有功率节省功能。
虽然图1的图示示例中的示例伪像135被图示为跨显示器110的平行对角线,但按任何方向定向的任何数量的伪像可被表明。此外,虽然在图1的图示示例中,伪像被表明为线,但此类伪像也可替代地使用任何其他形状呈现。
除了伪像的创建外,在一些示例中,对于大多数浏览和生产内容,功率节省算法也可能几乎不节省背光功率。例如,对于白色含量较高的内容(例如网页浏览和Outlook场景),DPST算法几乎不提供功率节省。使用报告表明,许多计算系统主要用于网页浏览和/或其中在应用DPST算法时几乎不存在功率节省的场景。
此外,一些功率节省算法缺乏根据内容实时地动态调整和/或调节显示色域的能力,使得无法从较高色域(如90%DCI-P3)受益的内容可以以较低的色域(如100%sRGB)来显示以节省功率。因此,实现全范围色域(或可以从更高的色域受益)的内容将使用更高色域显示以实现同类最佳的用户体验。现有系统使用静态色域,并且没有实时地更改色域的能力。
此外,当前的功率节省算法不提供与有机发光二极管(Organic Light EmittingDiode,OLED)显示器一起使用的功率节省特征。一个示例挑战是OLED是一种不使用背光的发射技术。因此,增加对比度以降低背光对OLED显示器不起作用。相反,OLED需要其他技术来增强图像的局部对比度,从而降低全局亮度以节省功率。然而,降低OLED显示器的全局亮度的局限性在于,它可能影响某些内容的用户体验,从而提供不一致的保真度。
本文公开的示例利用机器学习基于内容来动态更改用于显示器功率节省的算法(如DPST、CABC等)的积极性水平,以改善功率节省前景,并避免功率节省导致保真度降低到可接受的阈值以下的情况。在本文公开的示例中,机器学习模型被训练成用于选择具有最大功率节省并且用户体验高于平均意见评分(mean opinion score,MOS)阈值的功率节省(例如,积极性)级别。MOS代表各功率节省级别下的平均用户体验(例如,用户的意见)。在本文公开的示例中,MOS被表示为在1-5的范围内,并且阈值MOS值为4.5。然而,可以附加地或替代地使用任何其他范围和/或阈值。由于机器学习,在DPST的情况下,可以为具有色彩渐变的内容选择第1级(例如,以避免色带和滚动效果),并且可以为具有较暗场景的媒体播放内容选择第5级,以实现最大的功率节省。本文公开的示例有助于在一致的视觉质量的情况下实现最大的功率节省。
虽然本文公开的示例是在使用DPST功率节省算法的情境下描述的,但提出的机器学习解决方案也可以扩展到其他用于基于内容来动态调整算法的显示器功率节省算法和/或技术。例如这样的算法:该算法通过增加对比度和亮度来提高保真度(增加亮度将增加显示器功率),从而基于内容来动态调整该算法,以便最佳保真度被利用。此外,可以使用基于内容来动态地更改显示器色域的算法,例如针对Adobe Photoshop使用较高的色域(如90%DCI-P3),针对电子邮件和网页浏览使用较低色域(如100%sRGB)。此外,可以使用这样的算法:该算法通过增强局部对比度并降低全局亮度(降低亮度可能影响用户体验)来为OLED显示器提供功率节省,从而基于内容动态地调整算法。因此,节省功率可以通过更好的局部对比度和不可察觉的视觉损失来实现。
包括机器学习(machine learning,ML)、深度学习(deep learning,DL)和/或其他人工机器驱动逻辑的人工智能(Artificial intelligence,AI)使机器(例如,计算机、逻辑电路等)能够使用模型来处理输入数据,以便基于模型先前经由训练过程所学习的模式和/或关联来生成输出。例如,可以利用数据来训练模型来识别模式和/或关联,并且在处理输入数据时,模型可以遵循此类模式和/或关联来控制提供给显示控制器的积极性值。
存在许多不同类型的机器学习模型和/或机器学习体系结构。在本文公开的示例中,使用了卷积神经网络(convolutional neural network,CNN)模型。使用CNN模型实现了对超低功率和低等待时间硬件的使用。一般来说,适合在本文公开的示例方法中使用的机器学习模型/体系结构将能够在低功率和低等待时间环境中执行。然而,可以附加地或替代地使用其他类型的机器学习模型和/或体系结构,诸如深度神经网络(Deep NeuralNetwork,DNN)、长短期记忆(Long Short-Term Memory,LSTM)、支持向量机(SupportVector Machine,SVM)等。
一般而言,实现ML/AI系统涉及两个阶段:学习/训练阶段和推断阶段。在学习/训练阶段,使用训练算法基于例如训练数据将模型训练成根据模式和/或关联来操作。一般而言,模型包括引导输入数据如何被变换成输出数据的内部参数,诸如通过模型内的一系列节点和连接来将输入数据变换成输出数据。另外,将超参数用作训练过程的一部分,以学习如何被执行(例如,学习率、机器学习模型中要使用的层数等)。超参数被定义为是在发起训练过程之前被确定的训练参数。
可以基于ML/AI模型的类型和/或期望输出来执行不同类型的训练。例如,有监督训练使用输入和相对应的期望(例如,标注的)输出来选择用于ML/AI模型的减少模型误差的参数(例如,通过在选择参数的组合上进行迭代)。如本文所使用,标注是指机器学习模型的期望输出(例如,分类、期望输出值、期望积极性值等)。
在本文所公开的示例中,使用随机梯度下降来训练ML/AI模型。然而,可附加地或替代地使用任何其他训练算法。在本文所公开的示例中,训练被执行直到达到可接受的训练误差量。在本文所公开的示例中,训练在模型创建和分发系统处执行。使用控制学习如何被执行的超参数(例如,学习率、要在机器学习模型中使用的层数等)来执行训练。在一些示例中,可以执行重新训练。此类重新训练可响应于新训练数据可用的指示、用户请求、要控制的新功率节省算法的开发等而执行。
使用训练数据来执行训练。在本文所公开的示例中,训练数据源自用户测试。由于有监督训练被使用,因此训练数据被标注。标注通过选择功率节省评分和平均意见评分(MOS)而被应用于训练数据,该功率节省评分和平均意见评分(MOS)根据多个用户表示图像质量、用于结合图像而被使用。
一旦训练完成,就将该模型部署为用作可执行构造,该可执行构造基于模型中定义的节点和连接的网络来处理输入并提供输出。该模型存储在功率节省控制器的存储器处。然后,该模型可以由功率节省控制器执行,以选择要由显示控制器使用的积极性级别。
一旦被训练,所部署的模型就可以在推断阶段中被操作以处理数据。在推断阶段,将要分析的数据(例如,实况数据)输入到模型,并且该模型执行以创建输出。该推断阶段可以被认为是AI“思考”以便基于其从训练中学习到的来生成输出(例如,通过执行模型以将所学习的模式和/或关联应用于实况数据)。在一些示例中,输入数据在被用作至机器学习模型的输入之前经历预处理。此外,在一些示例中,输出数据在由AI模型生成之后可以经历后处理,以将该输出变换成有用的结果(例如,数据的显示、要由机器执行的指令,等等)。
在一些示例中,可以捕获所部署模型的输出并将其作为反馈来提供。通过分析该反馈,能够确定所部署模型的准确性。如果反馈指示所部署的模型的准确性低于阈值或其他标准,则可以使用反馈和更新的训练数据集、超参数等来触发更新的模型的训练,以生成更新的所部署模型。
图2是根据本公开的教导构建的、使用膝上型电脑形状因子实现的示例计算系统的框图。图2的图示示例的示例膝上型电脑200包括经由铰链203连接的较高部分201和较低部分202。较高部分201包括显示面板205、显示控制器210、功率节省控制器220、扬声器240、241、麦克风244和相机248。在一些示例中,较高部分201被称为盖。
较低部分202包括处理器255、存储器260、触控板265、电池270、图形处理单元(graphics processing unit,GPU)、和键盘280。在图2的图示示例中,GPU 275向显示控制器210提供图像,以供经由显示面板205进行显示。示例功率节省控制器220还接收来自GPU275的图像,并向显示控制器210提供积极性值,以控制显示控制器210的功率节省操作。虽然图2的示例膝上型电脑200的特定组件示出在较高部分201或较低部分202中,但此类组件可以在膝上型电脑200内的任何位置实现。例如,功率节省控制器220可以在较低部分202中实现。
图3是根据本公开的教导构建的、使用平板电脑形状因子实现的示例计算系统的框图。图示示例的示例平板电脑300包括示例显示控制器210、示例功率节省控制器220、显示面板305、扬声器310、麦克风320、相机330、处理器355、存储器360、电池370、GPU 375和输入设备380。在一些示例中,输入设备380可以作为触摸屏来实现。
虽然在图2和/或图3的图示示例中,GPU被示出为与处理器分开的组件,但在一些示例中,GPU和处理器可以被实现在一起(例如,被实现为片上系统(system-on-a-chip,SOC))。在一些示例中,功率节省控制器220和/或显示控制器210可以附加地与处理器和/或GPU被实现一起。
图4是图示图2和/或图3的示例计算系统的显示控制器、功率节省控制器和显示面板之间的连接的框图。在图4的图示示例中,示例显示控制器210接收帧(例如,图像)和背光值(例如,来自GPU)。示例显示控制器210还从功率节省控制器220接收积极性控制值。功率节省控制器220访问帧(例如,图像),并使用机器学习模型生成要被提供给显示控制器210的积极性控制值。在图4的图示示例中,积极性控制值被周期性地(例如,响应于定时器期满、每帧、每n帧等)提供给显示控制器210。然而,在一些示例中,积极性控制值可被非周期性地提供。使用积极性控制值,显示控制器210修改帧和/或背光,并向显示面板205提供修改后的帧和背光值。然后显示面板205呈现修改后的帧。
图5是图示图2和/或图3的示例计算系统的显示控制器210、功率节省控制器220和显示面板205之间的替代性连接的框图。在图5的图示示例中,在由功率节省控制器220生成积极性控制值之前,使用下变换器电路510来对帧下变换。对帧下变换(例如,从4K图像(例如,3840x2160像素)到VGA图像(例如,640x480像素))减少了要由功率节省控制器220处理的信息量。在图5的图示示例中,下变换器电路510与功率节省控制器220分开实现。然而,在一些示例中(诸如下文所述的图8的图示示例),下变换器电路作为功率节省控制器220的组件来实现。
此外,在图5的图示示例中,功率节省控制器220从显示控制器210接收场景变化事件触发。场景变化事件触发功率节省控制器220生成新的积极性控制值,并向显示控制器210提供新生成的积极性控制值。
图6是图示功率节省控制器向由显示控制器使用的各种类型的功率节省算法提供积极性值的图。存在不同类型的功率节省算法供显示控制器使用,这些功率节省算法包括例如,显示功率节省技术(DPST)、局部化自适应对比度增强(Localized AdaptiveContrast Enhancement,LACE)、内容自适应背光控制(CABC)、动态显示色域(DynamicDisplay Color Gamut,DDCG)等。在许多此类示例中,功率节省算法使用一个或多个输入来控制尝试降低显示面板的功耗而执行的校正和/或修改量。在一些示例中,显示控制器可以执行一个或多个不同类型的功率节省算法。
在图6的图示示例中,第一示例610表示功率节省控制器提供用于控制要由显示控制器应用的保真度增强量的积极性值。第二示例620表示功率节省控制器提供用于控制要由显示控制器应用的功率节省量的积极性值。第三示例630表示功率节省控制器提供用于控制要由显示控制器应用的保真度和功率节省量的积极性值。第四示例640表示功率节省控制器提供用于控制要由显示控制器应用的保真度增强、功率节省和色域调节的量的积极性值。第五示例650表示功率节省控制器提供用于控制要由显示控制器在控制OLED显示器时应用的功率节省量的积极性值。在一些示例中,功率节省控制器输出要由显示控制器使用的多个不同的积极性值。
图7是图示模型从模型创建和分发系统到功率节省控制器的分发的框图。图7的图示示例包括模型创建和分发系统710,该系统将模型711、712分发给相应计算设备200、300的功率节省控制器。在图7的图示示例中,此类分发经由互联网720执行。
在图7的图示示例中,不同的模型被提供给不同的计算设备200、300中的每个。例如,第一模型711被提供给第一计算设备200(例如,膝上型电脑),而第二模型712被提供给第二计算设备300(例如,平板电脑)。虽然在图7的图示示例中示出了两个模型,但在一些示例中,可以向不同的计算设备提供同一模型。此外,在一些示例中,不同的模型可能不仅基于形状因子而且附加地或替代地基于计算设备的其他特征而被分发给不同的计算系统,这些特征包括例如,计算设备的品牌和/或型号、计算设备中所包括的显示面板的类型、计算设备中所包括的显示控制器的类型、由计算设备的显示控制器支持的功率节省算法等)。
在图7的图示示例中,(一个或多个)模型经由互联网720被分发。然而,模型可以以任何其他方式分发给计算设备200、300。例如,(一个或多个)模型可以经由局域网(localarea network,LAN)、虚拟专用网络(virtual private network,VPN)、物理连接等提供给计算设备。在一些示例中,在制造计算设备200、300时将(一个或多个)模型提供给计算设备200、300。然而,可以在任何其他时间(例如,在出售计算设备200、300后)将(一个或多个)模型提供给计算设备200、300。例如,这使得可以对计算设备进行更新,以提高显示器和/或与之相关联的功率节省的质量。
图8是图2和/或图3的功率节省控制器220的示例实现方式的框图。图8的图示示例的示例功率节省控制器220包括触发检测器电路810、图像访问器电路820、下变换器电路830、模型执行器电路840、模型数据存储850、模型控制器电路860和积极性提供器电路870。
图8的图示示例的示例触发检测器电路810判定是否生成积极性值。示例触发检测器电路810可以基于例如事件(例如,由显示控制器210向功率节省控制器220提供的场景变化事件)做出此类判定。或者,触发检测器电路810可以分析由图像访问器电路820访问的图像,以判定是否发生场景变化。
在一些示例中,触发检测器电路810确定积极性值要周期性地被生成。例如,示例触发检测器电路810可以确定积极性值要每帧、每三帧、每秒、每十秒、每分钟等被生成。让触发检测器电路810使用短周期(例如,触发以每帧产生积极性值)可导致由功率节省控制器消耗额外的功率,但是消耗的该额外功率可能被由于使用积极性值而能够实现的节省超过。
图8的图示示例的示例图像访问器电路820访问被提供给显示控制器210的图像。在一些示例中,通过监测从GPU到显示控制器210的数据行来访问图像。在一些示例中,通过读取显示控制器210的存储器来访问图像。
图8的图示示例的示例下变换器电路830对所访问的图像执行下变换。在本文公开的示例中,所访问的图像的下变换将所访问的图像从第一分辨率转换为相比于第一分辨率具有更少的像素的第二分辨率。在一些示例中,使用双三次图像下变换。然而,可附加地或替代地使用任何其他下变换算法。在一些示例中,下变换器电路830可与功率节省控制器220分开实现。在此类示例中,示例图像访问器电路820可替代地访问来自下变换器电路的经下变换的图像。附加地或替代地,图像的下变换可被完整地省略。
图8的图示示例的示例模型执行器电路840使用存储在模型数据存储850中的模型和由下变换器电路830提供的经下变换的图像来生成积极性值。在一些示例中,单个积极性值被生成。然而,在一些其他示例中,多个积极性值被生成以提供给显示控制器210。例如,此类多个积极性值可对应于可由显示控制器210实现的不同类型的功率节省算法。
图8的图示示例的示例模型数据存储850由用于存储数据的任何存储器、存储设备和/或存储盘实现,诸如例如,闪存、磁性介质、光学介质、固态存储器、(一个或多个)硬驱动器、(一个或多个)拇指驱动器等。此外,存储在示例模型数据存储850中的数据可以采用任何数据格式,诸如例如,二进制数据、逗号分隔数据、制表符分隔数据、结构化查询语言(structured query language,SQL)结构等。虽然在图示示例中模型数据存储850被图示为单个设备,但示例模型数据存储850和/或本文描述的任何其他数据存储设备可以通过任何数量和/或(一个或多个)类型的存储器实现。在图8的图示示例中,示例模型数据存储850存储由模型控制器电路860获得的、供模型执行器电路840使用的机器学习模型。
图8的图示示例的示例模型控制器电路860从模型创建和分发系统710获得模型。在一些示例中,模型控制器电路860周期性地与模型创建和分发系统710通信,例如,以判定是否有任何(一个或多个)更新的模型可用。如果是,则模型控制器电路860可下载更新的模型(例如,无论是否有用户参与)。因此,更新的模型然后可由示例模型执行器电路840使用来生成后续的(一个或多个)积极性值。
图8的图示示例的示例积极性提供器电路870向显示控制器210提供生成的(一个或多个)积极性值。在本文公开的示例中,(一个或多个)积极性值作为一个或多个数字值被提供。然而,在一些示例中,可以替代地向显示控制器210提供(一个或多个)模拟积极性值。
在一些示例中,功率节省控制器220包括用于访问的装置。例如,用于访问的装置可由示例图像访问器电路820实现。在一些示例中,示例图像访问器电路820可以由机器可执行指令(诸如图12的至少框1220实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图13的示例处理器电路1312、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(Field Programmable Gate Array,FPGA)电路1600实现。在其他示例中,示例图像访问器电路820由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例图像访问器电路820可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(operational-amplifier,op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,功率节省控制器220包括用于执行的装置。例如,用于执行的装置可由示例模型执行器电路840实现。在一些示例中,示例模型执行器电路840可以由机器可执行指令(诸如由图12的至少框1240实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图13的示例处理器电路1312、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例模型执行器电路840由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例模型执行器电路840可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,功率节省控制器220包括用于提供的装置。例如,用于提供的装置可由示例积极性提供器电路870实现。在一些示例中,示例积极性提供器电路870可以由机器可执行指令(诸如由图12的至少框1250实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图13的示例处理器电路1312、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例积极性提供器电路870由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例积极性提供器电路870可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,功率节省控制器220包括用于触发的装置。例如,用于触发的装置可由示例触发检测器电路810实现。在一些示例中,示例触发检测器电路810可以由机器可执行指令(诸如由图12的至少框1210实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图13的示例处理器电路1312、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例触发检测器电路810由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例触发检测器电路810可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,功率节省控制器220包括用于下变换的装置。例如,用于下变换的装置可由示例下变换器电路830实现。在一些示例中,示例下变换器电路830可以由机器可执行指令(诸如由图12的至少框1230实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图13的示例处理器电路1312、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例下变换器电路830由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例下变换器电路830可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
图9是图7的示例模型创建和分发系统的示例实现方式的框图。图9的图示示例的示例模型创建和分发系统710包括训练数据收集器电路910、训练数据标注器电路915、训练数据数据存储920、训练控制器电路930、模型数据存储940和模型分发器电路950。
图9的图示示例的示例训练数据收集器电路910收集用于机器学习模型的训练的训练数据。在本文公开的示例中,训练数据通过在特定的积极性值被使用的情况下向用户呈现图像并从用户获得评分来收集。还记录了因使用的积极性值而节省的功率量。在本文所公开的示例中,从用户获得的评分是代表所显示的图像的质量的评级。许多不同的图像跨许多不同的用户被采样,每个图像以多个不同的积极性值设置进行采样。在一些示例中,不同的图像代表典型计算设备的不同使用场景,例如,包括办公生产应用、网页浏览、游戏等。在本文公开的示例中,获得的训练数据存储在训练数据数据存储930中。
图9的图示示例的示例训练数据标注器电路915分析收集的训练数据,以标识引起最大功率节省同时至少保持阈值的质量水平的训练图像和积极性对。使用训练数据收集器电路910获得的观看者的评分和功率节省值,示例训练数据标注器电路915计算每个帧的平均评分(针对每个图像和积极性值对的用户意见评分的平均值),该平均评分被表示为平均意见评分(MOS)。对于每个图像,示例训练数据标注器电路915选择积极性值,使得MOS高于预定的阈值(例如,4.5)并且引起最大量的显示器功率节省。在本文公开的示例中,阈值质量水平为4.5(不超过5)的MOS。然而,可附加地或替代地使用任何其他阈值质量水平。如果修改后的帧中均不满足MOS阈值,则选择积极性值0,这意味着针对该特定输入帧应禁用功率节省。所选择的训练数据被标注为已被选择用于训练过程。
图9的图示示例的示例训练数据数据存储920由用于存储数据的任何存储器、存储设备和/或存储盘实现,诸如例如,闪存、磁性介质、光学介质、固态存储器、(一个或多个)硬驱动器、(一个或多个)拇指驱动器等。此外,存储在示例训练数据数据存储920中的数据可以采用任何数据格式,诸如例如,二进制数据、逗号分隔数据、制表符分隔数据、结构化查询语言(SQL)结构等。虽然在图示示例中训练数据数据存储920被图示为单个设备,但示例训练数据数据存储920和/或本文描述的任何其他数据存储设备可以通过任何数量和/或(一个或多个)类型的存储器实现。在图9的图示示例中,示例训练数据数据存储920存储由训练数据收集器电路910获得的和/或由训练数据标注器电路915标注(例如,选择的)训练数据。
图9的图示示例的示例训练控制器电路930基于存储在训练数据数据存储920中的选择的训练图像和积极性对来训练机器学习模型。通过该方式,选择的图像被用作至机器学习模型的输入,并且其相对应的积极性值被用作机器学习模型的(一个或多个)期望的输出。为此,经训练的机器学习模型被设计成用于:基于给定的输入图像来选择引起最大量的功率节省同时还保持阈值量的图像保真度(例如,质量)的积极性值。在本文公开的示例中,机器学习模型使用卷积神经网络(CNN)实现,并使用随机梯度下降进行训练。然而,可以附加地或替代地使用任何其他机器学习模型体系结构和/或训练算法。然后,经训练的模型存储在模型数据存储940中。
图9的图示示例的示例模型数据存储940由用于存储数据的任何存储器、存储设备和/或存储盘实现,诸如例如,闪存、磁性介质、光学介质、固态存储器、(一个或多个)硬驱动器、(一个或多个)拇指驱动器等。此外,存储在示例模型数据存储940中的数据可以采用任何数据格式,诸如例如,二进制数据、逗号分隔数据、制表符分隔数据、结构化查询语言(SQL)结构等。虽然在图示示例中模型数据存储940被图示为单个设备,但示例模型数据存储940和/或本文描述的任何其他数据存储设备可以通过任何数量和/或(一个或多个)类型的存储器实现。在图9的图示示例中,示例模型数据存储940存储由示例训练控制器电路930训练的模型。在一些示例中,多个模型可被存储,对应于计算设备的不同品牌和/或型号、显示控制器的不同类型、显示面板的不同类型、使用的不同功率节省算法等。存储在示例模型数据存储940中的示例模型由模型分发器电路950分发到计算设备。
图9的图示示例的示例模型分发器电路950将经训练的机器学习模型分发到计算设备200、300,供功率节省控制器220使用。在一些示例中,模型分发器950响应于来自计算设备的功率节省控制器220的请求而分发经训练的模型。通过该方式,每个计算设备的功率节省控制器220可以周期性地和/或非周期性地与模型分发器电路950校验,以判定更新的模型是否被取回。附加地或替代地,模型分发器电路950可将模型向外推送至功率节省控制器220。
在一些示例中,模型训练和分发系统710包括用于收集的装置。例如,用于收集的装置可由示例训练数据收集器电路910实现。在一些示例中,示例训练数据收集器电路910可以由机器可执行指令(诸如由图10的至少框1010实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图14的示例处理器电路1412、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例训练数据收集器电路910由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例训练数据收集器电路910可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,模型训练和分发系统710包括用于标识的装置。在一些示例中,用于标识的装置可以附加地或替代地称为用于标注的装置。例如,用于标识的装置可由示例训练数据标注器电路915实现。在一些示例中,示例训练数据标注器电路915可以由机器可执行指令(诸如由图10的至少框1020实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图14的示例处理器电路1412、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例训练数据标注器电路915由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例训练数据标注器电路915可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,模型训练和分发系统710包括用于训练的装置。例如,用于训练的装置可由示例训练控制器电路930实现。在一些示例中,示例训练控制器电路930可以由机器可执行指令(诸如由图10的至少框1030实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图14的示例处理器电路1412、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例训练控制器电路930由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例训练控制器电路930可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
在一些示例中,模型训练和分发系统710包括用于分发的装置。例如,用于分发的装置可由示例模型分发器电路950实现。在一些示例中,示例模型分发器电路950可以由机器可执行指令(诸如由图10的至少框1040实现的机器可执行指令)来实现,该机器可执行指令由处理器电路执行,该处理器电路可由图14的示例处理器电路1412、图15的示例处理器电路1500和/或图16的示例现场可编程门阵列(FPGA)电路1600实现。在其他示例中,示例模型分发器电路950由其他硬件逻辑电路、硬件实现的状态机、和/或硬件、软件和/或固件的任何其他组合来实现。例如,示例模型分发器电路950可以由被构造成用于在不执行软件或固件的情况下执行相对应的操作的至少一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、专用集成电路(ASIC)、比较器、运算放大器(op-amp)、逻辑电路等)来实现,但其他结构也同样适用。
虽然图8图示出实现图2的示例功率节省控制器220的示例方式,但图8中所图示的元件、过程和/或设备中的一个或多个可以被组合、拆分、重新布置、省略、消除和/或以任何其他方式被实现。进一步地,图8的示例触发检测器电路810、示例图像访问器电路820、示例下变换器电路830、示例模型执行器电路840、示例模型控制器电路860、示例积极性提供器电路870和/或更一般地,示例功率节省控制器220可以由硬件、软件、固件、和/或硬件、软件和/或固件的任意组合实现。因此,例如,图8的示例触发检测器电路810、示例图像访问器电路820、示例下变换器电路830、示例模型执行器电路840、示例模型控制器电路860、示例积极性提供器电路870和/或更一般地,示例功率节省控制器220中的任一者可由处理器电路、(一个或多个)模拟电路、(一个或多个)数字电路、(一个或多个)逻辑电路、(一个或多个)可编程处理器、(一个或多个)可编程微控制器、(一个或多个)图形处理单元(GPU)、(一个或多个)数字信号处理器(DSP)、(一个或多个)专用集成电路(ASIC)、(一个或多个)可编程逻辑器件(programmable logic device,PLD)和/或(一个或多个)现场可编程逻辑器件(fieldprogrammable logic device,FPLD)(诸如现场可编程门阵列(FPGA))来实现。当阅读到本专利的涵盖纯软件和/或固件实现的装置或系统权利要求中的任一项时,示例触发检测器电路810、示例图像访问器电路820、示例下变换器电路830、示例模型执行器电路840、示例模型控制器电路860、示例积极性提供器电路870中的至少一者由此被明确地定义为包括包含该软件和/或固件的非暂态计算机可读存储设备或存储盘(诸如存储器、数字多功能盘(digital versatile disk,DVD)、致密盘(compact disk,CD)、蓝光盘等等)。更进一步地,图8的示例功率节省控制器220可包括作为图8中所图示的那些元件、过程和/或设备的附加或替代的一个或多个元件、过程和/或设备,和/或可包括多于一个的所图示的元件、过程和/或设备中任一者或全部。
此外,尽管图9中图示出实现图7的示例模型训练和分发系统710的示例方式,但是图9中所图示的元件、过程和/或设备中的一者或多者可以被组合、拆分、重新布置、省略、消除和/或以任何其他方式实现。进一步地,示例训练数据收集器电路910、示例训练数据标注器电路915、示例训练控制器电路930、示例模型分发器电路950和/或更一般地,图7的示例模型训练和分发系统710可以由硬件、软件、固件、和/或硬件、软件和/或固件的任意组合实现。因此,例如,示例训练数据收集器电路910、示例训练数据标注器电路915、示例训练控制器电路930、示例模型分发器电路950和/或更一般地,图7的示例模型训练和分发系统710中的任一者可由处理器电路、(一个或多个)模拟电路、(一个或多个)数字电路、(一个或多个)逻辑电路、(一个或多个)可编程处理器、(一个或多个)可编程微控制器、(一个或多个)图形处理单元(GPU)、(一个或多个)数字信号处理器(DSP)、(一个或多个)专用集成电路(ASIC)、(一个或多个)可编程逻辑器件(PLD)和/或(一个或多个)现场可编程逻辑器件(FPLD)(诸如现场可编程门阵列(FPGA))来实现。当阅读到本专利的涵盖纯软件和/或固件实现的装置或系统权利要求中的任一项时,示例训练数据收集器电路910、示例训练数据标注器电路915、示例训练控制器电路930、示例模型分发器电路950中的至少一者由此被明确地定义为包括包含该软件和/或固件的非暂态计算机可读存储设备或存储盘(诸如存储器、数字多功能盘(DVD)、致密盘(CD)、蓝光盘等)。更进一步地,图7的示例模型训练和分发系统710可包括作为图9中所图示的那些元件、过程和/或设备的附加或替代的一个或多个元件、过程和/或设备,和/或可包括多于一个的所图示的元件、过程和/或设备中任一者或全部。
在图12中示出了表示用于实现图8的功率节省控制器220的示例硬件逻辑电路、机器可读指令、硬件实现的状态机和/或其任何组合的流程图。在图10中示出了表示用于实现图9的模型训练和分发系统710的示例硬件逻辑电路、机器可读指令、硬件实现的状态机和/或其任何组合的流程图。机器可读指令可以是用于由处理器电路执行的一个或多个可执行程序或可执行程序的(一个或多个)部分,处理器电路诸如下文结合图13和/或图14所讨论的示例处理器平台1300、1400中示出的处理器电路1312、1412和/或下文结合图15和/或图16所讨论的示例处理器电路。程序可以被具体化在存储在与位于一个或多个硬件设备中的处理器电路相关联的一个或多个非暂态计算机可读存储介质上的软件中,非暂态计算机可读存储介质诸如CD、软盘、硬盘驱动器(hard disk drive,HDD)、DVD、蓝光盘、易失性存储器(例如,任何类型的随机存取存储器(Random Access Memory,RAM)等)、或非易失性存储器(例如,闪存存储器、HDD等),但完整的程序和/或其中的部分可以替代地由除处理器电路外的一个或多个硬件设备执行,和/或被具体化在固件或专用硬件中。机器可读指令可跨多个硬件设备分布和/或由两个或更多个硬件设备(例如,服务器和客户端硬件设备)执行。例如,客户端硬件设备可以由端点客户端硬件设备(例如,与用户相关联的硬件设备)或中间客户端硬件设备(例如,可促进服务器与端点客户端硬件设备之间通信的无线电接入网络(radio access network,RAN)网关)来实现。类似地,非暂态计算机可读存储介质可包括位于一个或多个硬件设备中的一个或多个介质。进一步地,虽然参照图10和/或图12中图示的流程图描述了示例程序,但是可替代地使用实现示例功率节省控制器220和/或示例模型训练和分发系统710的许多其他方法。例如,可以改变框的执行次序,和/或可改变、消除或组合所描述的框中的一些框。附加地或替代地,框中的任何框或所有框可以由被构造成用于在不执行软件或固件的情况下执行相应的操作的一个或多个硬件电路(例如,处理器电路、分立的和/或集成的模拟和/或数字电路、FPGA、ASIC、比较器、运算放大器(op-amp)、逻辑电路等)来实现。处理器电路可以分布在不同的网络位置和/或在一个或多个硬件设备本地(例如,单核心处理器(例如,单核心中央处理器单元(central processor unit,CPU))、单个机器中的多核心处理器(例如,多核心CPU等)、跨服务器机架的多个服务器分布的多个处理器、跨一个或多个服务器机架分布的多个处理器、位于同一封装中的CPU和/或FPGA(例如,同一集成电路(integrated circuit,IC)封装或在两个或更多个单独的壳体中等)。
本文中描述的机器可读指令能以压缩格式、加密格式、分段格式、编译格式、可执行格式、封装格式等中的一种或多种来存储。如本文描述的机器可读指令可以作为可用于创建、制造和/或产生机器可行指令的数据或数据结构(例如,指令的部分、代码、代码表示等)来存储。例如,机器可读指令可以被分段并被存储在位于网络或网络集合中(例如,在云中、在边缘设备中等)的相同或不同位置处的一个或多个存储设备和/或计算设备(例如,服务器)上。机器可读指令可能需要安装、修改、适配、更新、组合、补充、配置、解密、解压缩、拆包、分发、重新指派、编译等中的一项或多项,以使得它们由计算设备和/或其他机器直接可读取、可解释、和/或可执行。例如,机器可读指令可以存储在多个部分中,这些部分被单独压缩、加密和/或存储在单独的计算设备上,其中,这些部分在被解密、解压缩和/或组合时形成实现诸如本文中描述的可以一起形成程序的一个或多个操作的一组机器可执行指令。
在另一示例中,机器可读指令可以以它们可被处理器电路读取的状态存储,但是需要添加库(例如,动态链接库(dynamic link library,DLL))、软件开发工具包(softwaredevelopment kit,SDK)、应用编程接口(application programming interface,API)等,以便在特定的计算设备或其他设备上执行机器可读指令。在另一示例中,在可整体或部分地执行机器可读指令和/或对应的(一个或多个)程序之前,可能需要配置机器可读指令(例如,存储的设置、数据输入、记录的网络地址等)。因此,如本文中所使用,机器可读介质可包括机器可读指令和/或(一个或多个)程序,而不管机器可读指令和/或(一个或多个)程序在被存储时或以其他方式处于静态或在途中时的特定格式或状态如何。
本文中所描述的机器可读指令可以由任何过去、现在或未来的指令语言、脚本语言、编程语言等表示。例如,机器可读指令可以用以下语言中的任何语言来表示:C、C++、Java、C#、Perl、Python、JavaScript、超文本标记语言(HyperText Markup Language,HTML)、结构化查询语言(SQL)、Swift等。
如上所述,可使用存储在一个或多个非暂态计算机和/或机器可读介质上的可执行指令(例如,计算机和/或机器可读指令)来实现图10和/或图12的示例操作,这一个或多个非暂态计算机和/或机器可读介质诸如光学存储设备、磁存储设备、HDD、闪存、只读存储器(read-only memory,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。
如本文所使用,单数引用(例如,“一(a、an)”、“第一”、“第二”等)不排除复数。本文所使用的术语“一(a、an)”对象是指一个或多个该对象。术语“一”(“a”(或“an”))、“一个或多个”和“至少一个”在本文中可互换地使用。此外,尽管单独列出,但多个装置、元件或方法动作可由例如同一实体或对象来实现。另外,虽然各个特征可以被包括在不同的示例或权利要求中,但是这些特征可能可以被组合,并且在不同的示例或权利要求中的此种包括并不暗示特征的组合不可行和/或不是有利的。
图10是表示可被执行以创建和分发机器学习模型的示例机器可读指令的流程图。图10的图示示例的示例过程1000开始于示例训练数据收集器电路910收集训练数据时。(框1010)。在本文公开的示例中,通过在特定积极性值被使用的情况下向用户呈现图像并从用户获得评分和使用的积极性值引起的功率节省量来收集训练数据。在本文所公开的示例中,评分是代表所显示图像的质量的评级。许多不同的图像跨许多不同的用户被采样,每个图像使用多个不同的积极性值设置进行采样。在一些示例中,不同的图像代表典型计算设备的不同使用场景,例如,包括办公生产应用、网页浏览、游戏等。在本文公开的示例中,获得的训练数据存储在训练数据数据存储930中。下文结合图11更详细地描述了示例数据收集过程。
示例训练数据标注器电路915分析收集的训练数据,以标识引起最大功率节省同时至少保持阈值质量水平的训练图像和积极性对。(框1020)。使用由训练数据收集器电路910获得的观看者的评分和功率节省值,示例训练数据标注器电路915计算每个帧的平均评分(针对每个图像和积极性值对的用户意见评分的平均值),该平均评分表示为平均意见评分(MOS)。对于每个图像,示例训练数据标注器电路915选择积极性值,使得MOS高于预定的阈值(例如,4.5),并且引起最大量的显示器功率节省。在本文公开的示例中,阈值质量水平为4.5(不超过5)的MOS。然而,可附加地或替代地使用任何其他阈值质量水平。如果修改后的帧均不满足MOS阈值,则选择积极性值,这意味着针对该特定输入帧应禁用功率节省。所选择的训练数据被标注为已选择用于训练过程。
示例训练控制器电路930基于所选择的训练图像和积极性对来训练机器学习模型。(框1030)。通过该方式,图像被用作至机器学习模型的输入,并且积极性被用作机器学习模型的期望的输出。为此,经训练的机器学习模型被设计成用于:基于给定的输入图像来选择引起最大量的功率节省同时还保持阈值量的图像保真度(例如,质量)的积极性值。在本文公开的示例中,机器学习模型使用卷积神经网络(CNN)实现,并使用随机梯度下降进行训练。然而,可以附加地或替代地使用任何其他机器学习模型体系结构和/或训练算法。然后,经训练的模型存储在模型数据存储940中。
示例模型分发器电路950然后将经训练的机器学习模型分发到计算设备200、300,供功率节省控制器220使用。(框1040)。在一些示例中,模型分发器950响应于来自计算设备的功率节省控制器220的请求而分发经训练的模型。通过该方式,每个计算设备的功率节省控制器220可以周期性地和/或非周期性地与模型分发器电路950校验,以判定更新的模型是否被取回。附加地或替代地,模型分发器电路950可将模型向外推送到功率节省控制器220。
然后,图10的示例过程1000终止,但可以被重复以例如训练另一个模型。一种新模型可被设计成用于与由显示控制器使用的特定类型的显示器和/或特定类型的功率节省算法一起使用。
图11是图示训练数据的收集和标注的框图1100。例如,考虑一种功率节省算法(诸如DPST),其接受帧(例如,未经修改的图像)以及积极性值。在本文公开的示例中,积极性值使用从0到k的范围中的整数值来表示,其中值0表示不应用功率节省,并且k表示最大功率节省被应用。训练集中的每个帧将被传递通过显示控制器,从而实现以每个可能的积极性值实现所选择的功率节省算法。因为可以存在k个不同的积极性值,所以针对每个原始帧1110存在‘k’个修改后的帧1115、1120。每个修改后的帧产生值‘p’,其代表功率节省的量。然后这些帧与功率节省算法推荐的背光调光一起显示给观看者1130、1135。观看者相对于原始帧在1到5的范围内对这些修改后的帧进行评分。根据观看者的评分,计算每帧的平均评分,该平均评分被表示为平均意见评分(MOS)。选择图像和积极性对以使MOS高于规定阈值(例如,4.5)并提供最大显示器功率节省。如果修改后的帧均不满足MOS阈值,则选择积极性值0,这意味着针对该特定输入帧应禁用功率节省。
图11的图示示例包括表1150,该表代表每个图像和积极性对的意见评分的平均的结果。示例表1150包括图像标识符列1151、积极性值列1152、质量列1153和功率节省列1154。图像标识符列1151标识图像。积极性值列1152代表积极性值。质量列1153代表图像和积极性对的MOS值。功率节省列1154代表与图像和积极性对相关联的功率节省。示例表包括第一行1155、第二行1156、第三行1157和第四行1158。在图11的图示示例中,由第三行1157表示的图像和积极性对被选择,因为它至少产生阈值MOS值(例如,大于或等于4.5的MOS值),并产生比第一行1155和第二行1156(也满足阈值MOS 4.5)所代表的图像和积极性对产生的更大的功率节省。因此,在训练机器学习模型时,积极性值2用于与图像“A”相关联。
图12是表示可被执行以生成供显示控制器使用的积极性值的示例机器可读指令的流程图。图12的图示示例的示例过程1200开始于示例触发检测器电路810判定积极性值是否被生成时。(框1210)。示例触发检测器电路810可以基于例如事件(例如,由显示控制器210向功率节省控制器220提供的场景变化事件)做出此类判定。或者,触发检测器电路810可以分析由图像访问器电路820访问的图像,以判定是否发生场景变化。
在一些示例中,触发检测器电路810可确定积极性值要周期性地被生成。例如,示例触发检测器电路810可以确定积极性值要每帧、每三帧、每秒、每十秒、每分钟等生成。让触发检测器电路810使用短周期(例如,触发以每帧生成积极性值)可导致由功率节省控制器消耗额外的功率,但是消耗的该额外功率可能被由于使用积极性值而能够实现的节省超过。
在触发检测器电路810确定积极性值要被创建(例如,框1210返回结果“是”)后,示例图像访问器电路820然后访问被提供给显示控制器210的图像。(框1220)。在一些示例中,图像通过监测从GPU到显示控制器210的数据行来访问。在一些示例中,图像通过读取显示控制器210的存储器来访问。
示例下变换器电路830对访问的图像执行下变换。(框1230)。在本文公开的示例中,访问的图像的下变换将访问的图像从第一分辨率转换为具有比第一分辨率少的像素的第二分辨率。在一些示例中,使用双三次图像下变换。然而,可附加地或替代地使用任何其他下变换算法。在一些示例中,下变换器电路830可与功率节省控制器220分开实现。在此类示例中,示例图像访问器电路820可替代地访问来自下变换器电路的经下变换的图像。附加地或替代地,图像的下变换可被完整地省略。
示例模型执行器电路840使用存储在模型数据存储850中的模型和由下变换器电路830提供的经下变换的图像来生成积极性值。(框1240)。在一些示例中,单个积极性值被生成。然而,在一些其他示例中,多个积极性值被生成以提供给显示控制器210。例如,此类多个积极性值可对应于可由显示控制器210实现的不同类型的功率节省算法。
示例积极性提供器电路870向显示控制器210提供生成的(一个或多个)积极性值。(框1250)。在本文公开的示例中,(一个或多个)积极性值作为一个或多个数字值被提供。然而,在一些示例中,可替代地向显示控制器提供(一个或多个)模拟积极性值。然后重复图示示例的示例过程1200。
图13是被构造以执行和/或实例化图12的机器可读指令和/或操作以实现图8的示例功率节省控制器220的示例处理器平台1300的框图。处理器平台1300可以是例如,服务器、个人计算机、工作站、自学习机(例如,神经网络)、移动设备(例如,手机、智能电话、诸如iPadTM之类的平板电脑)、个人数字助理(personal digital assistant,PDA)、互联网设备、DVD播放器、CD播放器、数字视频记录仪、蓝光播放器、游戏控制台、个人视频记录仪、机顶盒、耳机(例如,增强现实(augmented reality,AR)耳机、虚拟现实(virtual reality,VR)耳机等)或其他可穿戴设备、或任何其他类型的计算设备。
所图示示例的处理器平台1300包括处理器电路1312。所图示示例的处理器电路1312是硬件。例如,处理器电路1312可由来自任何所期望的系列或制造商的一个或多个集成电路、逻辑电路、FPGA、微处理器、CPU、GPU、DSP和/或微控制器实现。处理器电路1312可由一个或多个基于半导体的(例如,基于硅的)器件来实现。在该示例中,处理器电路1312实现示例触发检测器电路810、示例图像访问器电路820、示例下变换器电路830、示例模型执行器电路840、示例模型控制器电路860和示例积极性提供器电路870。
所图示示例的处理器电路1312包括本地存储器1313(例如,缓存、寄存器等)。所图示示例的处理器电路1312经由总线1318而与包括易失性存储器1314和非易失性存储器1316的主存储器进行通信。易失性存储器1314可以由同步动态随机存取存储器(Synchronous Dynamic Random Access Memory,SDRAM)、动态随机存取存储器(DynamicRandom Access Memory,DRAM)、动态随机存取存储器(DynamicRandom Access Memory,)和/或任何其他类型的RAM设备实现。非易失性存储器1316可以由闪存和/或任何其他所期望类型的存储器设备实现。由存储器控制器1317控制对所图示示例的主存储器1314、1316的访问。
所图示示例的处理器平台1300还包括接口电路1320。接口电路1320可以由根据任何类型的接口标准的硬件实现,诸如以太网接口、通用串行总线(universal serial bus,USB)接口、接口、近场通信(near field communication,NFC)接口、PCI接口和/或PCIe接口。
在所图示的示例中,一个或多个输入设备1322被连接至接口电路1320。(一个或多个)输入设备1322准许用户将数据和/或命令输入到处理器电路1312中。(一个或多个)输入设备1322可以由例如音频传感器、麦克风、相机(静态或视频)、键盘、按钮、鼠标、触摸屏、轨迹板、轨迹球、等点鼠标设备和/或语音识别系统实现。
一个或多个输出设备1324也被连接至所图示示例的接口电路1320。输出设备1324可以例如由显示设备(例如,发光二极管(LED)、有机发光二极管(OLED)、液晶显示器(LCD)、阴极射线管(cathode ray tube,CRT)显示器、面内切换(in-place switching,IPS)显示器、触摸屏等)、触觉输出设备、打印机和/或扬声器实现。因此,所图示示例的接口电路1320典型地包括图形驱动器卡、图形驱动器芯片和/或诸如GPU之类的图形处理器电路。
所图示示例的接口电路1320还包括诸如发射器、接收器、收发器、调制解调器、住宅网关、无线接入点、和/或网络接口之类的通信设备,以促进经由网络1326与外部机器(例如,任何种类的计算设备)交换数据。通信可以经由例如,以太网连接、数字订户线路(digital subscriber line,DSL)连接、电话线连接、同轴电缆系统、卫星系统、直线对传式无线系统、蜂窝电话系统、光连接等。
所图示示例的处理器平台1300还包括用于存储软件和/或数据的一个或多个大容量存储设备1328。此类大容量存储设备1328的示例包括磁性存储设备、光学存储设备、软盘驱动器、HDD、CD、蓝光盘驱动器、独立磁盘冗余阵列(redundant array of independentdisks,RAID)系统、固态存储设备(诸如,闪存设备)和DVD驱动器。
可以由图12的机器可读指令来实现的机器可执行指令1332可以被存储在大容量存储设备1328中,存储在易失性存储器1314中,存储在非易失性存储器1316中,和/或存储在诸如CD或DVD之类的可移除非暂态计算机可读存储介质上。
图14是被构造以执行和/或实例化图10的机器可读指令和/或操作以实现图9的模型训练和分发系统710的示例处理器平台1400的框图。处理器平台1400可以是例如,服务器、个人计算机、工作站、自学习机(例如,神经网络)、移动设备(例如,手机、智能电话、诸如iPadTM之类的平板电脑)、个人数字助理(PDA)、互联网设备、DVD播放器、CD播放器、数字视频记录仪、蓝光播放器、游戏控制台、个人视频记录仪、机顶盒、耳机(例如,增强现实(AR)耳机、虚拟现实(VR)耳机等)或其他可穿戴设备、或任何其他类型的计算设备。
所图示示例的处理器平台1400包括处理器电路1412。所图示示例的处理器电路1412是硬件。例如,处理器电路1412可由来自任何所期望的系列或制造商的一个或多个集成电路、逻辑电路、FPGA、微处理器、CPU、GPU、DSP和/或微控制器实现。处理器电路1412可由一个或多个基于半导体的(例如,基于硅的)器件来实现。在该示例中,处理器电路1412实现示例训练数据收集器电路910、示例训练数据标注器电路915、示例训练控制器电路930和示例模型分发器电路950。
所图示示例的处理器电路1412包括本地存储器1413(例如,缓存、寄存器等)。所图示示例的处理器电路1412经由总线1418而与包括易失性存储器1414和非易失性存储器1416的主存储器进行通信。易失性存储器1414可以由同步动态随机存取存储器(SDRAM)、动态随机存取存储器(DRAM)、动态随机存取存储器和/或任何其他类型的RAM设备实现。非易失性存储器1416可以由闪存和/或任何其他所期望类型的存储器设备实现。由存储器控制器1417控制对所图示示例的主存储器1414、1416的访问。
所图示示例的处理器平台1400还包括接口电路1420。接口电路1420可以由根据任何类型的接口标准的硬件实现,诸如以太网接口、通用串行总线(USB)接口、接口、近场通信(NFC)接口、PCI接口和/或PCIe接口。
在所图示的示例中,一个或多个输入设备1422被连接至接口电路1420。(一个或多个)输入设备1422准许用户将数据和/或命令输入到处理器电路1412中。(一个或多个)输入设备1422可以由例如音频传感器、麦克风、相机(静态或视频)、键盘、按钮、鼠标、触摸屏、轨迹板、轨迹球、等点鼠标设备和/或语音识别系统实现。
一个或多个输出设备1424也被连接至所图示示例的接口电路1420。输出设备1424可以例如由显示设备(例如,发光二极管(LED)、有机发光二极管(OLED)、液晶显示器(LCD)、阴极射线管(CRT)显示器、面内切换(IPS)显示器、触摸屏等)、触觉输出设备、打印机和/或扬声器实现。因此,所图示示例的接口电路1420典型地包括图形驱动器卡、图形驱动器芯片和/或诸如GPU之类的图形处理器电路。
所图示示例的接口电路1420还包括诸如发射器、接收器、收发器、调制解调器、住宅网关、无线接入点、和/或网络接口之类的通信设备,以促进经由网络1426与外部机器(例如,任何种类的计算设备)交换数据。通信可以经由例如,以太网连接、数字订户线路(DSL)连接、电话线连接、同轴电缆系统、卫星系统、直线对传式无线系统、蜂窝电话系统、光连接等。
所图示示例的处理器平台1400还包括用于存储软件和/或数据的一个或多个大容量存储设备1428。此类大容量存储设备1428的示例包括磁性存储设备、光学存储设备、软盘驱动器、HDD、CD、蓝光盘驱动器、独立磁盘冗余阵列(RAID)系统、固态存储设备(诸如,闪存设备)和DVD驱动器。
可由图10和/或图12的机器可读指令来实现的机器可执行指令1432可以被存储在大容量存储设备1428中,存储在易失性存储器1414中,存储在非易失性存储器1416中,和/或存储在诸如CD或DVD之类的可移除非暂态计算机可读存储介质上。
图15是图13的处理器电路1312和/或图14的处理器电路1412的示例实现方式的框图。在该示例中,图13的处理器电路1312和/或图14的处理器电路1412由微处理器1500来实现。例如,微处理器1500可以实现多核心硬件电路,诸如CPU、DSP、GPU、XPU等。尽管它可以包括任意数量的示例核心1502(例如,1个核心),但本示例的微处理器1500是包括N个核心的多核心半导体器件。微处理器1500的核心1502可以独立操作,或者可以协作,以执行机器可读指令。例如,与固件程序、嵌入式软件程序或软件程序相对应的机器代码可以由核心1502中的一个核心来执行,或者可以由核心1502中的多个核心在相同或不同的时间执行。在一些示例中,与固件程序、嵌入式软件程序或软件程序相对应的机器代码被拆分成线程,并由两个或更多个核心1502并行地执行。软件程序可与由图15的流程图表示的机器可读指令和/或操作的部分或全部相对应。
核心1502可通过示例总线1504进行通信。在一些示例中,总线1504可实现通信总线,以用于实行与核心1502中的(一个或多个)核心相关联的通信。例如,总线1504可以实现内部集成电路(Inter-Integrated Circuit,I2C)总线、串行外围接口(Serial PeripheralInterface,SPI)总线、PCI总线或PCIe总线中的至少一个。附加地或替代地,总线1504可以实现任何其他类型的计算或电气总线。核心1502可以通过示例接口电路1506从一个或多个外部设备获得数据、指令和/或信号。核心1502可以通过接口电路1506向一个或多个外部设备输出数据、指令和/或信号。尽管该示例的核心1502包括示例本地存储器1520(例如,第一级(L1)缓存,其可被拆分为L1数据缓存和L1指令缓存),但微处理器1500还包括可由核心共享的示例共享存储器1510(例如,第二级(L2缓存)),以用于对数据和/或指令的高速访问。数据和/或指令可以通过向共享存储器1510写入和/或从共享存储器1510读取来传输(例如,共享)。核心1502中的每个核心的本地存储器1520和共享存储器1510可以是包括多级缓存存储器和主存储器(例如,图13的主存储器1314、1316,图14的主存储器1414、1416)的存储设备的层次体系的部分。典型地,相比于较低级别的存储器,层次体系中的较高级别的存储器表现出更低的访问时间并具有更小的存储容量。缓存层次体系的各级别的改变由缓存一致性策略管理(例如,协调)。
每个核心1502可以被称为CPU、DSP、GPU等,或任何其他类型的硬件电路。每个核心1502包括控制单元电路1514、算术和逻辑(arithmetic and logic,AL)电路(有时称为ALU)1516、多个寄存器1518、L1缓存1520和示例总线1522。可以存在其他结构。例如,每个核心1502可以包括向量单元电路、单指令多数据(single instruction multiple data,SIMD)单元电路、加载/存储单元(load/store unit,LSU)电路、分支/跳转单元电路、浮点单元(floating-point unit,FPU)电路等。控制单元电路1514包括基于半导体的电路,其被构造成用于控制(例如,协调)相对应核心1502内的数据移动。AL电路1516包括被构造成用于在对应核心1502内对数据执行一个或多个数学和/或逻辑操作的基于半导体的电路。一些示例的AL电路1516执行基于整数的操作。在其他示例中,AL电路1516还执行浮点操作。在另外的其他示例中,AL电路1516可包括执行基于整数的操作的第一AL电路和执行浮点操作的第二AL电路。在一些示例中,AL电路1516可以被称为算术逻辑单元(Arithmetic Logic Unit,ALU)。寄存器1518是用于存储数据和/或指令(诸如,由对应核心1502的AL电路1516执行的操作中的一个或多个操作的结果)的基于半导体的结构。例如,寄存器1518可以包括(一个或多个)向量寄存器、(一个或多个)SIMD寄存器、(一个或多个)通用寄存器、(一个或多个)标志寄存器、(一个或多个)段寄存器、(一个或多个)机器特定寄存器、(一个或多个)指令指针寄存器、(一个或多个)控制寄存器、(一个或多个)调试寄存器、(一个或多个)存储器管理寄存器、(一个或多个)机器检查寄存器等。寄存器1518可按如图15中所示的区块来布置。替代地,寄存器1518可以按任何其他布置、格式或结构来组织,包括贯穿核心1502分布以缩短访问时间。总线1504可以实现I2C总线、SPI总线、PCI总线或PCIe总线中的至少一者。
每个核心1502(和/或更一般地,微处理器1500)可以包括上文示出和描述的那些结构的附加和/或替代结构。例如,可以存在一个或多个时钟电路、一个或多个功率供应、一个或多个功率门、一个或多个缓存归属地代理(cache home agents,CHA)、一个或多个聚合/公共网格站点(converged/common mesh stop,CMS)、一个或多个移位器(例如,(一个或多个)桶形移位器)和/或其他电路。微处理器1500是被制造成包括许多晶体管的半导体器件,这些晶体管被互连以在被包含在一个或多个封装中的一个或多个集成电路(IC)中实现上文所描述的结构。处理器电路可包括一个或多个加速器,和/或与一个或多个加速器协作。在一些示例中,加速器由逻辑电路来实现,从而可以相比于由通用处理器能够完成的更快和/或更高效地执行某些任务。加速器的示例包括ASIC和FPGA,诸如,本文中所讨论的那些。GPU或其他可编程器件也可以是加速器。加速器可以板载于处理器电路上,与处理器电路在同一芯片封装中,和/或在与处理器电路分开的一个或多个单独的封装中。
图16是图13的处理器电路1312和/或图4的处理器电路1412的另一示例实现方式的框图。在此示例中,处理器电路1312、1412由FPGA电路1600实现。例如,FPGA电路1600可用于执行可以以其他方式通过图15的示例微处理器1500执行对应的机器可读指令来执行的操作。然而,一旦被配置,FPGA电路1600就在硬件中实例化机器可读指令,并且由此通常可以比操作可能通过通用微处理器执行对应软件来执行更快地执行这些操作。
更具体地,与上文描述的图15的微处理器1500(微处理器1500是通用设备,其可被编程为用于执行由图10和/或图12的流程图表示的机器可读指令中的一些或全部,但其互连和逻辑电路一旦被制造就是固定的)形成对照,图16的示例的FPGA电路1600包括这样互连和逻辑电路:该互连和逻辑电路可以在制造之后以不同的方式被配置和/或互连,以实例化例如由图10和/或图12的流程图表示的机器可读指令中的一些或全部。具体而言,FPGA1600可以被认为是逻辑门、互连和开关的阵列。开关可以被编程为用于改变逻辑门如何通过互连进行互连,从而有效地形成一个或多个专用逻辑电路(除非和直到FPGA电路1600被重新编程)。经配置的逻辑电路使逻辑门能够以不同的方式协作,从而对由输入电路接收的数据执行不同的操作。那些操作可与由图10和/或图12的流程图表示的软件中的一些或全部相对应。由此,FPGA电路1600可以被构造成用于有效地将图10和/或图12的流程图的机器可读指令中的一些或全部实例化为专用逻辑电路,以便以类似于ASIC的专用方式执行与那些软件指令对应的操作。因此,FPGA电路1600可以执行与图16的机器可读指令中的一些或全部相对应的操作的速度快于通用微处理器执行相同的操作的速度。
在图16的示例中,FPGA电路1600被构造成用于由终端用户通过诸如Verilog之类的硬件描述语言(HDL)编程(和/或重新编程一次或多次)。图16的FPGA电路1600包括示例输入/输出(input/output,I/O)电路1602,该示例输入/输出(I/O)电路1602用于从示例配置电路1604和/或外部硬件(例如,外部硬件电路)1606获得数据和/或向示例配置电路1604和/或外部硬件(例如,外部硬件电路)1606输出数据。例如,配置电路1604可以实现接口电路,该接口电路可获得用于配置FPGA电路1600或其(一个或多个)部分的机器可读指令。在一些此类示例中,配置电路1604可以从用户、机器(例如,可以实现人工智能/机器学习(Artificial Intelligence/Machine Learning,AI/ML)模型以生成指令的硬件电路(例如,经编程的或专用电路))等获取机器可读指令。在一些示例中,外部硬件1606可以实现图15的微处理器1500。FPGA电路1600还包括示例逻辑门电路1608、多个示例可配置互连1610和示例存储电路1612的阵列。逻辑门电路1608和互连1610可配置成用于实例化一个或多个操作,这一个或多个操作可与图10和/或图12的机器可读指令中的至少一些机器可读指令和/或其他期望的操作相对应。图16中示出的逻辑门电路1608是按组或块制造的。每个块包括可以配置为逻辑电路的基于半导体的电气结构。在一些示例中,电气结构包括为逻辑电路提供基本构建块的逻辑门(例如,与(And)门、或(Or)门、非(Nor)门等)。电可控开关(例如,晶体管)存在于逻辑门电路1608中的每个逻辑门电路1608内,以使得电气结构和/或逻辑门能够配置成形成用于执行期望的操作的电路。逻辑门电路1608可以包括其他电气结构,诸如,查找表(look-up table,LUT)、寄存器(例如,触发器或锁存器)、多路复用器等。
所图示示例的互连1610是导电路径、迹线、通孔等,其可以包括其状态可以通过编程(例如,使用HDL指令语言)来改变以激活或解除激活逻辑门电路1608中的一个或多个逻辑门电路1608之间的一个或多个连接从而对期望的逻辑电路编程的电可控开关(例如,晶体管)。
所图示示例的存储电路1612被构造成用于存储由对应的逻辑门执行的操作中的一个或多个操作的(一个或多个)结果。存储电路1612可以由寄存器等来实现。在所图示的示例中,存储电路1612分布在逻辑门电路1608之间,以促进访问并提高执行速度。
图16的示例FPGA电路1600还包括示例专用操作电路1614。在该示例中,专用操作电路1614包括专用电路1616,该专用电路1616可以被调用以实现常用功能,从而避免需要在现场对那些功能编程。此类专用电路1616的示例包括存储器(例如,DRAM)控制器电路、PCIe控制器电路、时钟电路、收发器电路、存储器和乘法器-累加器电路。可以存在其他类型的专用电路。在一些示例中,FPGA电路1600还可以包括示例通用可编程电路1618,诸如,示例CPU 1620和/或示例DSP 1622。可以附加地或替代地存在可以被编程为用于执行其他操作的其他通用可编程电路1618,诸如,GPU、XPU等。
尽管图15和16图示出图13的处理器电路1312和/或图14的处理器电路1412的两种示例实现方式,但构想了许多其他方式。例如,如上文所提及,现代FPGA电路可以包括板载CPU,诸如,图16的示例CPU 1620中的一个或多个。因此,图13的处理器电路1312和/或图14的处理器电路1412可附加地通过组合图15的示例微处理器1500和图16的示例FPGA电路1600来实现。在一些此类混合式示例中,由图10和/或图12的流程图表示的机器可读指令的第一部分可由图15的核心1502中的一个或多个执行并且图10和/或图12的流程图表示的机器可读指令的第二部分可由图16的FPGA电路1600执行。
在一些示例中,图13的处理器电路1312和/或图14的处理器电路1412可以在一个或多个封装中。例如,图15的处理器电路1500和/或图16的FPGA电路1600可以在一个或多个封装中。在一些示例中,XPU可通过图13的处理器电路1312和/或图14的处理器电路1412来实现,图13的处理器电路1312和/或图14的处理器电路1412可以在一个或多个封装中。例如,XPU可包括一个封装中的CPU、另一封装中的DSP、又一封装中的GPU、以及再另一封装中的FPGA。
从前文将会领会,已经公开了使得能够对显示控制器所使用的功率节省算法的积极性进行低等待时间控制的示例系统、方法、装置和制品。使用此类功率节省系统减少在其中实现该功率节省系统的计算设备所消耗的能量,从而延长电池寿命。所公开的系统、方法、装置和制品通过降低功耗来提高使用计算设备的效率,同时保持至少阈值水平的显示保真度。所公开的系统、方法、装置和制品相应地针对诸如计算机或其他电子和/或机械设备之类的机器的操作的一个或多个改进。
本文中公开了用于控制显示面板功率节省的积极性的示例方法、装置、系统和制品。进一步的示例及其组合包括以下内容:
示例1包括一种装置,该装置包括:显示面板;显示控制器,该显示控制器用于调节用于由显示面板显示的图像;以及处理器电路,该处理器电路包括以下各项中的一项或多项:中央处理单元、图形处理单元或数字信号处理器中的至少一个,该中央处理单元、图形处理单元或数字信号处理器中的至少一个具有用于控制处理器电路内的数据移动的控制电路、用于执行与指令相对应的一个或多个第一操作的算术和逻辑电路、以及用于存储一个或多个第一操作的结果、装置中的指令的一个或多个寄存器;现场可编程门阵列(FPGA),该FPGA包括逻辑门电路、多个可配置的互连和存储电路,逻辑门电路和互连用于执行一个或多个第二操作,存储电路用于存储一个或多个第二操作的结果;或专用集成电路(ASIC),该ASIC包括用于执行一个或多个第三操作的逻辑门电路;用于执行第一操作、第二操作或第三操作中的至少一个以进行实例化的处理器电路:图像访问器电路,该图像访问器电路用于访问被提供给显示控制器的图像;模型执行器电路,该模型执行器电路用于使用图像作为输入来执行机器学习模型以生成积极性值;以及积极性提供器电路,该积极性提供器电路用于向显示控制器提供积极性值,显示控制器用于在显示面板显示调节后的图像之前基于积极性值调节图像。
示例2包括示例1的装置,进一步包括下变换器电路,该下变换器电路用于在由模型执行器电路执行机器学习模型之前对图像进行下变换。
示例3包括示例2的装置,其中下变换器电路与处理器电路分开地实现。
示例4包括示例3的装置,其中模型执行器电路用于响应于定时器的期满而执行机器学习模型。
示例5包括示例1的装置,其中处理器电路进一步用于实例化触发检测器电路,并且模型执行器电路用于响应于场景变化事件而执行机器学习模型。
示例6包括示例5的装置,其中显示控制器用于向触发检测器电路提供场景改变事件。
示例7包括至少一种非暂态计算机可读介质,包括指令,该指令在被执行时,使得至少一个处理器用于:访问用于由显示控制器显示的图像;使用该图像作为输入来执行机器学习模型,以生成积极性值;以及向显示控制器提供该积极性值,显示控制器用于在由显示面板显示图像之前根据积极性值修改该图像。
示例8包括示例7的至少一种非暂态计算机可读介质,进一步包括在执行机器学习模型之前对图像进行下变换。
示例9包括示例7的至少一种非暂态计算机可读介质,其中机器学习模型的执行响应于定时器的期满而被执行。
示例10包括示例7的至少一种非暂态计算机可读介质,其中机器学习模型的执行响应于场景变化事件而被执行。
示例11包括示例7的至少一种非暂态计算机可读介质,进一步包括从模型训练和分发系统获得机器学习模型。
示例12包括为显示控制器创建控制输入的方法,该方法包括:访问用于由显示控制器显示的图像;使用该图像作为输入来执行机器学习模型,以生成积极性值;以及向显示控制器提供该积极性值,显示控制器用于在由显示面板显示图像之前根据积极性值调节该图像。
示例13包括示例12的方法,进一步包括在执行机器学习模型之前对图像进行下变换。
示例14包括示例12的方法,其中机器学习模型的执行响应于定时器的期满而被执行。
示例15包括示例12的方法,其中机器学习模型的执行响应于场景变化事件而被执行。
示例16包括示例12的方法,进一步包括从模型训练和分发系统获得机器学习模型。
示例17包括一种设备,包括:用于访问用于由显示面板显示的图像的装置;用于使用该图像作为输入来执行机器学习模型以生成积极性值的装置;以及用于向显示控制器提供积极性值的装置,图像由显示控制器在由显示面板显示之前修改。
示例18包括示例17的装置,进一步包括用于在机器学习模型的执行之前对图像进行下变换的用于下变换的装置。
示例19包括示例17的装置,其中用于执行的装置用于响应于定时器的期满而执行机器学习模型。
示例20包括示例17的装置,其中用于执行的装置用于响应于由用于触发的装置检测到的场景变化事件而执行机器学习模型。
示例21包括示例20的装置,其中显示控制器用于向用于触发的装置提供场景变化事件。
示例22包括一种计算设备,该计算设备包括:显示面板;显示控制器,该显示控制器用于调节用于由显示面板显示的图像;以及功率节省控制器,该功率节省控制器用于:访问被提供给显示控制器的图像,使用该图像作为输入来执行机器学习模型以生成积极性值,以及向显示控制器提供积极性值,显示控制器用于基于积极性值来调节图像。
示例23包括示例22的计算设备,进一步包括下变换器,该下变换器用于在由功率节省控制器执行机器学习模型之前对图像进行下变换。
示例24包括示例23的计算设备,其中下变换器与功率节省控制器分开地实现。
示例25包括示例22的计算设备,其中功率节省控制器用于响应于定时器的期满而执行机器学习模型。
示例26包括示例22的计算设备,其中功率节省控制器用于响应于场景变化事件而执行机器学习模型。
示例27包括示例26的计算设备,其中显示控制器用于向功率节省控制器提供场景变化事件。
尽管本文中已公开了某些示例系统、方法、装置和制品,但本专利涵盖的范围并不限于此。相反,本专利涵盖落入本专利权利要求范围内的全部系统、方法、装置和制品。
所附的权利要求由此通过本参考被并入到本具体实施方式中,其中每一项权利要求其本身作为本公开的单独的实施例。
Claims (24)
1.一种装置,包括:
显示面板;
显示控制器,所述显示控制器用于调节用于由所述显示面板显示的图像;以及
处理器电路,所述处理器电路包括以下各项中的一项或多项:
中央处理单元、图形处理单元或数字信号处理器中的至少一个,所述中央处理单元、所述图形处理单元或所述数字信号处理器中的所述至少一个具有用于控制所述处理器电路内的数据移动的控制电路、用于执行与指令相对应的一个或多个第一操作的算术和逻辑电路、以及用于存储所述一个或多个第一操作的结果和所述装置中的所述指令的一个或多个寄存器;
现场可编程门阵列FPGA,所述FPGA包括逻辑门电路、多个可配置的互连、以及存储电路,所述逻辑门电路和所述互连用于执行一个或多个第二操作,所述存储电路用于存储所述一个或多个第二操作的结果;或者
专用集成电路ASIC,所述ASIC包括用于执行一个或多个第三操作的逻辑门电路;
用于执行所述第一操作、所述第二操作或所述第三操作中的至少一个以进行实例化的所述处理器电路:
图像访问器电路,所述图像访问器电路用于访问被提供给所述显示控制器的图像;
模型执行器电路,所述模型执行器电路用于使用所述图像作为输入来执行机器学习模型以生成积极性值;以及
积极性提供器电路,所述积极性提供器电路用于向所述显示控制器提供所述积极性值,所述显示控制器用于在由所述显示面板显示调节后的图像之前基于所述积极性值调节所述图像。
2.如权利要求1所述的装置,进一步包括下变换器电路,所述下变换器电路用于在由所述模型执行器电路执行所述机器学习模型之前对所述图像进行下变换。
3.如权利要求2所述的装置,其中所述下变换器电路与所述处理器电路分开地实现。
4.如权利要求1至3中任一项所述的装置,其中所述模型执行器电路用于响应于定时器的期满而执行所述机器学习模型。
5.如权利要求1所述的装置,其中所述处理器电路进一步用于实例化触发检测器电路,并且所述模型执行器电路用于响应于场景变化事件而执行所述机器学习模型。
6.如权利要求5所述的装置,其中所述显示控制器用于向所述触发检测器电路提供所述场景变化事件。
7.至少一种计算机可读介质,包括指令,所述指令在被执行时使至少一个处理器至少用于:
访问用于由显示控制器显示的图像;
使用所述图像作为输入来执行机器学习模型,以生成积极性值;以及
向所述显示控制器提供所述积极性值,所述显示控制器用于在由显示面板显示所述图像之前根据所述积极性值修改所述图像。
8.如权利要求7所述的至少一种计算机可读介质,进一步包括在执行所述机器学习模型之前对所述图像进行下变换。
9.如权利要求7或8中任一项所述的至少一种计算机可读介质,其中所述机器学习模型的执行响应于定时器的期满而被执行。
10.如权利要求7所述的至少一种计算机可读介质,其中所述机器学习模型的执行响应于场景变化事件而被执行。
11.如权利要求7所述的至少一种计算机可读介质,进一步包括从模型训练和分发系统获得所述机器学习模型。
12.一种用于为显示控制器创建控制输入的方法,所述方法包括:
访问用于由所述显示控制器显示的图像;
使用所述图像作为输入来执行机器学习模型,以生成积极性值;以及
向所述显示控制器提供所述积极性值,所述显示控制器用于在由显示面板显示所述图像之前根据所述积极性值调节所述图像。
13.如权利要求12所述的方法,进一步包括在执行所述机器学习模型之前对所述图像进行下变换。
14.如权利要求12或13中任一项所述的方法,其中所述机器学习模型的执行响应于定时器的期满而被执行。
15.如权利要求12所述的方法,其中所述机器学习模型的执行响应于场景变化事件而被执行。
16.如权利要求12所述的方法,进一步包括从模型训练和分发系统获得所述机器学习模型。
17.一种设备,包括:
用于访问用于由显示面板显示的图像的装置;
用于使用所述图像作为输入来执行机器学习模型以生成积极性值的装置;以及
用于向显示控制器提供所述积极性值的装置,所述图像用于由所述显示控制器在由所述显示面板显示之前修改。
18.如权利要求17所述的设备,进一步包括用于在所述机器学习模型的执行之前对所述图像进行下变换的用于下变换的装置。
19.如权利要求17所述的装置,其中所述用于执行的装置用于响应于定时器的期满而执行所述机器学习模型。
20.如权利要求17所述的装置,其中所述用于执行的装置用于响应于由用于触发的装置检测到的场景变化事件而执行所述机器学习模型。
21.如权利要求20所述的设备,其中所述显示控制器用于向所述用于触发的装置提供所述场景变化事件。
22.一种计算设备,包括:
显示面板;
显示控制器,所述显示控制器用于调节用于由所述显示面板显示的图像;以及
功率节省控制器,所述功率节省控制器用于:
访问被提供给所述显示控制器的图像;
使用所述图像作为输入来执行机器学习模型,以生成积极性值;以及
向所述显示控制器提供所述积极性值,所述显示控制器用于基于所述积极性值来调节所述图像。
23.如权利要求22所述的计算设备,进一步包括下变换器,所述下变换器用于在由所述功率节省控制器执行所述机器学习模型之前对所述图像进行下变换。
24.如权利要求23所述的计算设备,其中所述下变换器与所述功率节省控制器分开地实现。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/448,692 | 2021-09-23 | ||
US17/448,692 US20220011848A1 (en) | 2021-09-23 | 2021-09-23 | Methods and apparatus to control an aggressiveness of display panel power savings and fidelity |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115904054A true CN115904054A (zh) | 2023-04-04 |
Family
ID=79173618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211012483.8A Pending CN115904054A (zh) | 2021-09-23 | 2022-08-23 | 用于控制显示面板功率和保真度的积极性的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220011848A1 (zh) |
CN (1) | CN115904054A (zh) |
DE (1) | DE102022119614A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113568659B (zh) * | 2021-09-18 | 2022-02-08 | 深圳比特微电子科技有限公司 | 参数配置模型的训练方法、参数配置方法和参数配置设备 |
-
2021
- 2021-09-23 US US17/448,692 patent/US20220011848A1/en active Pending
-
2022
- 2022-08-04 DE DE102022119614.3A patent/DE102022119614A1/de active Pending
- 2022-08-23 CN CN202211012483.8A patent/CN115904054A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102022119614A1 (de) | 2023-03-23 |
US20220011848A1 (en) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210319317A1 (en) | Methods and apparatus to perform machine-learning model operations on sparse accelerators | |
KR20200143479A (ko) | 스케일러블 뉴럴 네트워크 프로세싱 엔진 | |
CN112074846A (zh) | 用于在神经网络处理器中分配任务的系统和方法 | |
CN110968423A (zh) | 使用机器学习将工作负荷分配给加速器的方法和设备 | |
CN115861031A (zh) | 用于使用变换器块来执行密集预测的方法和设备 | |
US20220291930A1 (en) | Methods, apparatus, and articles of manufacture to improve performance of a compute device by detecting a scene change | |
US20220092738A1 (en) | Methods and apparatus for super-resolution rendering | |
CN104937551B (zh) | 用于管理设备中的功率的计算机实现的方法和用于管理设备中的功率的系统 | |
KR20230000943A (ko) | 머신 러닝 가속기 내에서 데이터를 로딩하기 위한 방법들 및 장치들 | |
CN115904054A (zh) | 用于控制显示面板功率和保真度的积极性的方法和装置 | |
US20220107777A1 (en) | Content fidelity adjustment based on user interaction | |
CN115410023A (zh) | 为神经网络分类器实现并行体系结构的方法和装置 | |
US20240062391A1 (en) | Methods, systems, articles of manufacture and apparatus for static and dynamic separation mask estimation | |
CN117616428A (zh) | 用于在资源受约束的图像识别应用中执行并行双批自蒸馏的方法和装置 | |
US12039421B2 (en) | Deep learning numeric data and sparse matrix compression | |
EP4300947A1 (en) | Systems, apparatus, articles of manufacture, and methods for eye gaze correction in camera image streams | |
US20220334888A1 (en) | Methods and apparatus to synchronize threads | |
US20220113781A1 (en) | Methods and apparatus for bi-directional control of computing unit frequency | |
US20220206591A1 (en) | Methods and apparatus for adaptive keyboard scanning | |
US20220014740A1 (en) | Methods and apparatus to perform dirty region reads and writes to reduce memory bandwidth usage | |
CN116468078A (zh) | 面向人工智能芯片的智能引擎处理方法和装置 | |
US20220114451A1 (en) | Methods and apparatus for data enhanced automated model generation | |
US20220189418A1 (en) | Methods and apparatus to perform platform agnostic control of a display using a hardware agent | |
US20210326191A1 (en) | Methods and apparatus to align media workloads | |
US20230153068A1 (en) | Electronic apparatus and control method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |