CN115525138A - 设备上基于功率的自适应硬件可靠性 - Google Patents

设备上基于功率的自适应硬件可靠性 Download PDF

Info

Publication number
CN115525138A
CN115525138A CN202210587517.XA CN202210587517A CN115525138A CN 115525138 A CN115525138 A CN 115525138A CN 202210587517 A CN202210587517 A CN 202210587517A CN 115525138 A CN115525138 A CN 115525138A
Authority
CN
China
Prior art keywords
reliability
power
edge
adjustable
workload
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
Application number
CN202210587517.XA
Other languages
English (en)
Inventor
F·圭姆伯纳特
K·库马
M·E·卡兰扎
C·马丁内斯-斯佩索特
M·哈吉尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN115525138A publication Critical patent/CN115525138A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Sources (AREA)

Abstract

本申请公开了设备上基于功率的自适应硬件可靠性。本文描述了用于设备上基于功率的自适应硬件可靠性的系统和技术。硬件平台被划分为多个分区。这里,每个分区包括具有可调节可靠性特征的硬件组件。若干分区被放入多个可靠性类别中的一个可靠性类别中。具有可靠性需求的工作负荷被获得并且在满足该可靠性需求的可靠性类别中的分区上执行。检测设备的操作参数的变化,并且基于该设备的操作参数的变化来修改分区的可调节可靠性特征。

Description

设备上基于功率的自适应硬件可靠性
技术领域
本文描述的实施例通常涉及计算机功率控制,并且更具体地,涉及设备上基于功率的自适应硬件可靠性。
背景技术
边缘计算将计算资源放在服务的消费者附近,以便例如,满足这些服务的超低等待时间需求。因此,计算服务器通常位于数据源物理上的附近。例如,服务器可能位于蜂窝基站中。这些类型的操作环境通常是独特的,因为它们是资源受限的环境。资源限制可包括处理或存储限制,以及功率限制。通常主功率(例如,由商业电网运营商提供的功率)不可用,因此可以使用电池或环境功率生成(例如,风能或太阳能)功率。环境和电池功率可能随时间波动,在边缘处运行的应用的功率使用(例如,对边缘服务的需求)也可能随时间波动。
可靠性、可用性和可维护性(RAS)特征是提高工作负荷的性能的硬件和软件。示例RAS特征可包括存储器误差校正(例如,误差校正编码(ECC)、存储器巡逻、刷新率等)、(硬件、连接等的)冗余等等。通常,RAS特征的干预或冗余越大,发生的误差就越少,并且使用的功率也就越大。
附图说明
在附图中(这些附图不一定是按比例绘制的),同样的数字可描述不同视图中的类似组件。具有不同的字母后缀的同样的数字可表示类似组件的不同实例。附图总的来说通过示例的方式而不是限制的方式来图示在本文档中所讨论的各实施例。
图1是根据实施例的环境的示例的框图,该环境包括用于设备上基于功率的自适应硬件可靠性的系统。
图2图示出根据实施例的用于设备上基于功率的自适应硬件可靠性的架构的示例。
图3图示出根据实施例的用于设备上基于功率的自适应硬件可靠性的系统中的组件交互的示例。
图4图示出根据实施例的在节点上维护不同RAS池的示例。
图5图示出根据实施例的在不同节点上维护不同RAS池的示例。
图6图示出用于边缘计算的边缘云配置的概览。
图7图示出端点、边缘云和云计算环境之间的操作层。
图8图示出用于边缘计算系统中的联网和服务的示例方法。
图9图示出在多个边缘节点和多个租户之间操作的边缘计算系统中的虚拟边缘配置的部署。
图10图示出在边缘计算系统中部署容器的各种计算布置。
图11A提供用于边缘计算系统中的计算节点处所部署的计算的示例组件的概览。
图11B提供边缘计算系统中的计算设备内的示例组件的进一步的概览。
图12图示出用于分发软件的示例软件分发平台。
图13图示出根据实施例的用于设备上基于功率的自适应硬件可靠性的方法的示例的流程图。
图14是图示出可在其上实现一个或多个实施例的机器的示例的框图。
具体实施方式
相对于数据中心部署,边缘计算通常涉及功率管理、运营效率等方面的独特约束。边缘计算代表动态的操作环境。例如,在白天,通常可以使用环境功率源,从而围绕这些机会安排操作来利用多余的环境功率。以下是这些环境中的考虑因素。考虑具有不同RAS需求的应用。边缘计算环境可能主控具有不同的RAS需求的各种各样的应用。例如,视频分析可能具有低RAS需求,而来自效用管理服务的控制回路通常具有高RAS需求。
这些部署中硬件的可靠性各不相同。边缘部署中硬件的可靠性可能根据周围环境或情境而异。影响硬件可靠性的因素可包括位置、对天气的暴露或一天中的时间等等。动态环境(例如,高温或风引起的物理移动)可能影响服务器中的误差数量,因此使用更高级别的RAS特征来解决此类变化。
使用硬件技术(例如,RAS特征或可配置的RAS特征)可以补偿可靠性或可靠性不足,这通常有成本(例如,更大的功耗)。例如,易失性存储器系统通常由于存储器误差而表现出较低的可靠性。例如,为了校正这些误差,可以使用ECC或巡逻擦除来标识和修复位错误。然而,如果在给定的区域内存在多个位错误,那么标识和修复这一点就会变得更加困难。位错误的数量通常是巡逻擦除之间时间的函数。因此,给定足够的时间而不进行巡逻擦除/ECC,则第二或第三位翻转的概率变得更高,并导致多个位错误。进一步的技术可包括使用更多的ECC位、积极的校正算法等。
执行这些校正技术的“成本”通常是功耗,因为由于巡逻擦除,刷新率增加或ECC会消耗额外的带宽和资源。在具有功率或资源限制的边缘部署中,使用这些技术提高可靠性可能是有挑战性的。
为了解决这些问题,包括满足应用的不同可靠性需求和边缘系统上不同的资源约束,边缘系统被配置成用于将其资源划分为通过RAS特征选择实现的不同可靠性的RAS区域。可靠性预测或估计(例如,基于环境温度、一天中的时间、年份、天气报告、使用模式等)与RAS特征选择或配置(例如,可靠性控制)的组合使不同的可靠性区域能够暴露于边缘应用。尽管本文中的许多示例描述了存储器可靠性和存储器RAS特征,但这些技术也可适用于具有可配置RAS特征的任何硬件,诸如存储(例如,速度不足以维持系统状态的非易失性存储器,诸如闪存设备、硬驱动器、存储类存储器等)、冗余网络接口等。
RAS区域的指定、配置和分配可包括许多因素。例如,为了节省功耗,来自应用的RAS服务质量(QoS)需求(例如,来自视频流的数据可容忍1%到2%的误差)可以连同热或环境条件的影响和RAS特征需求(例如,刷新率或巡逻擦除)和功率封顶及管理技术(这些技术考虑了应用QoS需求和环境情境的影响)一起来考虑。为了实现这些方面,在示例中,对标准边缘计算平台的三种架构更改可被采用。
边缘资源RAS特征可被扩展为将资源分区为不同的区域或部分,在这些区域或部分中RAS是独立管理的。例如,使用存储器双列直插式存储器模块(DIMM),将多个存储器范围映射到不同的存储器列(memory rank)通常是可能的。每个RAS分区可能具有映射到不同的可靠性QoS级别的不同级别的RAS配置,诸如较低的存储器刷新率或较低的存储器带宽巡逻擦除。例如,具有标准服务器RAS能力的高QoS或具有一定程度潜在数据损坏的中等QoS。
边缘平台可被扩展为包括用于预测环境情境、功率收集的分析,或者可用功率可随时间演进。因此,根据预期的可用功率量,边缘平台可以增加映射到中等或低RAS QoS等级(其中能够被定义多个等级或级别)的RAS特征,以例如解决在阳光照射时高温下增加的误差率。可以向软件栈提供分配更改有效性的预测,以更好地管理数据或计算分配。为此,在示例中,边缘平台被配置成用于向软件栈披露新接口,以便访问该信息。以下提供了附加的细节和示例。
图1是根据实施例的环境的示例的框图,该环境包括用于设备上基于功率的自适应硬件可靠性的系统。如图所示,边缘平台105包括具有可调节RAS特征的硬件(RAS硬件125),诸如存储器、处理核、输入输出(I/O)、媒体存储或其他附接设备(DEV N)。在示例中,RAS硬件可被分区,使得可以在RAS硬件125的不同分区上采用不同的RAS特征。
边缘平台105还包括RAS QoS控制器110、RAS预测电路系统115和情境预测电路系统120。情境预测电路系统120被配置成用于预测或估计边缘平台105的温度、振动、污染(例如,湿气、灰尘等)的未来状况。RAS预测电路系统115被配置成用于确定给定在RAS硬件125上启用的RAS特征集合和情境预测电路系统120的输出的情况下RAS QoS级别或等级的效果。RAS控制器110被配置成用于定义RAS分区、满足RAS QoS等级的RAS分区的配置的RAS特征,并向应用披露这些RAS QoS等级。通常,目标在于保持最低的RAS特征,同时满足应用正确操作的期望的QoS。
因此,RAS QoS控制器110被配置成用于将硬件平台(例如,RAS硬件125)划分为若干分区。同样,分区包括具有可调节可靠性特征的硬件组件(诸如存储器体或存储器列)。在示例中,若干分区被放入多个可靠性类别中的一个。这些可靠性类别(例如,RAS QoS级别或等级)代表一定级别的可靠性(例如,存储器读取中的位错误百分比),可与应用的可靠性需求相匹配。
在示例中,RAS QoS控制器110被配置成用于获得(例如,检取或接收)具有可靠性需求的工作负荷。可靠性需求可以指定位错误的容差、等待时间或其他方面或对应用的处理误差。在示例中,可靠性需求是通过对工作负荷进行概况分析获得的。在示例中,可靠性需求是通过随工作负荷一起被分发的元数据获得的。例如,在其中开发人员尚未测试工作负荷以便提供可靠性需求的环境中,概况分析实现可靠性需求。进一步地,虽然提供的可靠性需求可能是保守的,但简档可能表明可靠性需求过于狭窄并且因此效率很低。然而,通过自动化的概况分析,可能很难确定对误差更大的容差实际上是否可接受。
边缘平台105被配置成用于在满足可靠性需求的可靠性类别中的若干分区中的分区上执行工作负荷。这里,满足可靠性需求的、具有最低成本(例如,最少的RAS特征被启用)RAS硬件125分区被选择。这确保了在保持工作负荷QoS预期的同时整体消耗的功率更少。
情境预测电路系统120被配置成用于检测或预测边缘平台105的操作参数的变化。在示例中,受变化的操作参数包括功率。在示例中,变化是在于功率的减少。在这里,功率的减少是由于电池资源耗尽或缺乏环境功率生成。然而,可能存在以下情况:主功率(诸如通过滚动断电或滚动局部断电)被中断,或者甚至是由于一天或一年中的某些时间(例如,夏季月份白天期间)的高功率成本而导致的计划的中断。在示例中,变化是预测的功率减少。在示例中,预测的功率减少基于历史功率供应和当前情境。在示例中,当前情境包括时间、温度或天气中的至少一个。例如,由于太阳能板和晴天预测而引起的功率增加也是边缘平台105的操作参数的变化。
可能可用的功率源包括主功率(例如,来自商业电网运营商),其可能来自核能、煤炭、天然气、太阳能、风能、地热、电网级电池、潮汐发电机或水电等;设备105处的环境功率,诸如太阳能(例如,来自设备105上的太阳能板)、风能或地热;以及设备105的临时功率,诸如电池、燃料电池或发电机(例如,汽油或柴油发电机)。功率可用性的预测技术可能在这些不同的功率源之间各不相同。例如,诸如核能或水电之类的基线功率源通常不能根据需求改变输出。因此,预测功率可用性可包括预测电网需求,诸如可能因使用空调而对功率电网征税的热浪。与环境相关的功率生成(诸如风能或太阳能)可能涉及确定风速预测或云量的输出,这些输出应用于历史数据的统计分析,以确定这些状况下的平均功率输出。临时功率源功率可用性预测可涉及燃料容量和效率或电池性能(例如,退化),以从这些源将有多少功率是可用的。
在示例中,受变化的操作参数包括温度。在示例中,变化表现为温度的升高或预测的温度升高。在示例中,预测的温度升高基于温度测量和当前情境。在示例中,当前情境包括时间、温度或天气中的至少一个。温度升高通常导致更多误差。因此,通常需要在RAS硬件125上增加RAS特征,以便在温度升高时保持相同的可靠性类别。其他可能表现出这种行为的因素包括污染或振动。该调节通常由RAS预测电路系统115处置。
在示例中,检测设备的操作参数的变化包括监测工作负荷的执行期间的误差,并确定误差超出可靠性类别的阈值。这里,各种RAS硬件125处的RAS边缘QoS块操作以发送超出正常操作参数的误差率信号。这种额外的洞察力使得RAS预测电路系统115能够以动态方式调节可靠性类别需求(例如,RAS硬件125需要什么RAS特征来满足特定的可靠性类别)。
RAS QoS控制器110被配置成用于基于设备的操作参数的变化来调节分区的可调节可靠性特征。在示例中,在操作参数改变是功率减少的情况下,修改可调节参数包括通过禁用可调节参数或降低可调节参数的干预率来降低功耗。在示例中,可调节参数是存储器刷新率或巡逻擦除操作。在这些示例中,可靠性被降低以便节省功率。
在示例中,在操作参数改变是温度升高的情况下,修改可调节参数包括通过启用可调节参数或增加可调节参数的干预率来提高可靠性。在示例中,可调节参数是存储器刷新率或巡逻擦除操作。在这里,功率被消耗以抵消由于温度升高导致的可靠性下降。
在示例中,边缘平台110被配置成用于响应于修改可调节参数而将分区移动到第二可靠性类别。因此,如果可靠性被降低以节省功率,则分区的可靠性类别被更改以向工作负荷反映这一点。在示例中,工作负荷被移动到第二分区,该第二分区具有工作负荷所期望的可靠性类别。
图2图示出根据实施例的用于设备上基于功率的自适应硬件可靠性的架构205的示例。架构205包括硬件或软件组件,其监测(例如,传感器度量210)和关联(例如,经由学习模型215)RAS特征如何随时间相对于环境条件(例如,环境情境)和正在执行的工作负荷类型被断言(例如,用以检测或校正误差),例如由通过分析、内容交付等提供工作负荷的类型的提示的工作负荷确定。
架构205披露这样的接口:使得正在被部署到架构205中的工作负荷能够选择工作负荷的类型(诸如通过将工作负荷类型或特征映射到RAS特征的列表或模板),或者与工作负荷相关的RAS特征的列表,以及在什么级别(例如,类别)(诸如关键、非关键、无相关性等)。
架构205包括考虑工作负荷可靠性和环境情境的电路系统来确定哪些RAS特征可以被完全停用或者哪些RAS特征可以被停用但是可以被不时地跟踪的电路系统。
对于可能不关键但可能有助于在发生误差时捕捉误差的特征,电路系统可以不时地激活这些特征,并跟踪它们是否被断言(例如,被使用)。根据这些特征与在架构205中运行的服务或应用的相关性水平,如果误差再次开始增加,则电路系统可以确定重新激活这些特征。
相关RAS特征的示例是存储器巡逻擦除器。在正常操作中,当由核或其他活动系统读取特定存储器区域时,巡逻擦除器将进行擦除以检查潜在的误差。然而,根据工作负荷的性质和误差的可能性,巡逻擦除器的活动(例如,动作的频率)可能动态地增加或减少。巡逻擦除器活动的减少可大大节省功率。其他示例可包括用于误差管理的外围组件互连(PCI)express(PCIE)链路降级和降级的操作模式。
图3图示出根据实施例的用于设备上基于功率的自适应硬件可靠性的系统中的组件交互的示例。通常,RAS需求被指定用于硬件310,以在资源受限的环境中做出高效的决策。所示的交互使工作负荷能够提供RAS需求(例如,经由编排器315),并使RAS控制器能够基于它们正在使用的资源来启用或禁用它们。
如图所示,自适应RAS接口305用于使软件栈(例如,编排器315)能够针对特定工作负荷指定特定RAS需求以及用于该工作负荷的资源。如上所述,RAS接口305可被配置成用于提供与应用的性能受保证的服务ID和应用的资源列表相匹配的需求的详细列表。在示例中,每个资源包括与该应用和资源相关的RAS特征的列表,以及该特征的相关性级别(诸如关键、高、相关、中等、宜人、低、不相关等)。
RAS接口305可替代地或附加地提供工作负荷可与之匹配的简档类型(例如,由其自身或由编排器315提供)。这里,RAS接口305可包括基于应用类型的具有某些RAS特征的应用的简档集合。在这种情况下,制造商可以定义随架构提供的预定义配置列表。
RAS功能也可以基于工作负荷部署的当前状态被跟踪。这里,RAS特征可能与映射到环境变量(诸如温度、振动等)的灵敏度集合相关,这些环境变量用于确定这些特征是否需要或有用。对于非关键但相关的特征,这些特征可以定期(例如,在某些间隔期间,但并非始终)跟踪,以提供数据进行分析,从而确定这些特征是否需要激活。
总之,给定具有不同RAS灵敏度、特征或配置的资源池,基于遥测,工作负荷与RAS区域匹配以降低功耗,同时保持可接受的工作负荷性能。池的不同部分可以基于遥测动态地调节。然后,工作负荷可以使用RAS接口305在硬件310中选择适当的RAS区域。
图4图示出根据实施例的在节点上维护不同的RAS池425的示例。可以基于遥测电路系统410和RAS控制器405来在具有不同RAS能力的存储器池内维护资源池425。例如,资源池RAS-1可能将所有ECC位积极用于存储器恢复,而不将任何ECC位用于目录一致性。这得到高可恢复性、高消耗(例如,由于监听带宽使用)池。相比之下,资源池RAS-2可能用于在存储器误差发生的情况下不需要被恢复的数据。在这里,针对误差可恢复性的ECC位的最小使用可被采用,以利于使用元数据位来实现目录一致性,或将标记存储在高速缓存的层次结构中。在示例中,RAS控制器405可以将工作负荷420分派给池425。RAS控制器405还可以基于处理来自传感器415的数据的遥测电路系统410的使用或来自该遥测电路系统410的遥测来调节池425。
图5图示出根据实施例的在不同节点上维护不同的RAS池的示例。在这里,数据由组遥测设备515从节点510收集。然后,遥测可以由组控制器520使用。这代表更大的组级别RAS管理基础设施,其更全面的决定能够在网格或数据中心级别以及在每个节点或存储器池内做出。在这里,组可能是相关节点的网格,诸如功率网格、电信网格等。
图6是示出用于边缘计算的配置的概览的框图,该配置包括在以下许多示例中被称为“边缘云”的处理层。如图所示,边缘云610共同定位在边缘位置(诸如接入点或基站640、本地处理中枢650、或中央局620),并且因此可以包括多个实体、设备、和装备实例。与云数据中心630相比,边缘云610被定位成更靠近端点(消费者和生产者)数据源660(例如,自主交通工具661、用户装备662、商业和工业装备663、视频捕捉设备664、无人机665、智慧城市和建筑设备666、传感器和IoT设备667等)。在边缘云610中的边缘处提供的计算、存储器、和存储资源对于为由端点数据源660使用的服务和功能提供超低等待时间的响应时间以及减少从边缘云610朝向云数据中心630的网络回程通信量(由此改善能耗和整体网络使用等益处)至关重要。
计算、存储器和存储是稀缺资源,并且通常根据边缘位置而减少(例如,在消费者端点设备处可用的处理资源比在基站处、比在中央局处可用的处理资源更少)。然而,边缘位置越靠近端点(例如,用户装备(UE)),空间和功率通常就越受限。因此,边缘计算试图通过分配被定位成既在地理上更靠近又在网络访问时间上更靠近的更多的资源来减少网络服务所需的资源量。以此种方式,边缘计算试图在适当的情况下将计算资源带到工作负荷数据,或者,将工作负荷数据带到计算资源。
以下描述了边缘云架构的各方面,该架构涵盖多种潜在的部署,并解决了一些网络运营商或服务提供商在其自身基础设施中可能具有的限制。这些包括以下的变体:基于边缘位置的配置(例如,因为处于基站级别的边缘在多租户场景中可能具有更受限制的性能和能力);基于对边缘位置、位置的层、或位置的组可用的计算、存储器、存储、结构、加速等资源的类型的配置;服务、安全性、以及管理和编排能力;以及实现端服务的可用性和性能的相关目标。取决于等待时间、距离、和定时特征,这些部署可以在网络层中完成处理,这些网络层可以被视为“接近边缘”层、“靠近边缘”层、“本地边缘”层、“中间边缘”层、或“远边缘”层。
边缘计算是一种开发范式,其中计算在网络的“边缘”处或靠近于网络的“边缘”被执行,典型地通过使用在基站、网关、网络路由器、或与产生和消耗数据的端点设备靠近得多得多的其他设备处实现的计算平台(例如,x86或ARM计算硬件架构)来执行。例如,边缘网关服务器可装配有存储器池和存储资源,以针对连接的客户端设备的低等待时间用例(例如,自主驾驶或视频监控)实时地执行计算。或者作为示例,基站可被扩充有计算和加速资源,以直接为连接的用户装备处理服务工作负荷,而无需进一步经由回程网络传输数据。或者作为另一示例,中央局网络管理硬件能以标准化计算硬件来代替,该标准化计算硬件执行虚拟化网络功能,并为服务的执行提供计算资源并且为连接的设备提供消费者功能。在边缘计算网络内,可能存在计算资源将被“移动”到数据的服务中的场景,以及其中数据将被“移动”到计算资源的场景。或者作为示例,基站计算、加速和网络资源可以提供服务,以便通过激活休眠容量(订阅、按需容量)来根据需要缩放至工作负荷需求,以便管理极端情况、紧急情况或为部署的资源在显著更长的实现的生命周期中提供长寿命。
图7图示出端点、边缘云和云计算环境之间的操作层。具体而言,图7描绘了在网络计算的多个说明性层之间利用边缘云610的计算用例705的示例。这些层开始于端点(设备和事物)层700,该端点层700访问边缘云610以进行数据创建、分析、和数据消耗活动。边缘云610可以跨越多个网络层,诸如边缘设备层710,该边缘设备层710具有网关、自有(on-premise)服务器、或位于物理上邻近边缘系统中的网络装备(节点715);网络接入层720,该网络接入层720涵盖基站、无线电处理单元、网络中枢、区域数据中心(DC)、或本地网络装备(装备725);以及位于它们之间的任何装备、设备或节点(在层712中,未详细图示出)。边缘云610内和各层之间的网络通信可以经由任何数量的有线或无线介质来实现,包括经由未描绘出的连接性架构和技术来实现。
由于网络通信距离和处理时间约束而导致的等待时间的示例的范围可以从在端点层700之间时的小于毫秒(ms),在边缘设备层710处的低于5ms到当与网络接入层720处的节点通信时的甚至10ms到40ms之间。在边缘云610之外是核心网络730层和云数据中心740层,它们各自均具有增加的等待时间(例如,在核心网络层730处的50ms-60ms、到在云数据中心层处的100ms或更多ms之间)。因此,在核心网络数据中心735或云数据中心745处的、具有至少50ms至100ms或更长的等待时间的操作将无法完成用例705的许多时间关键的功能。出于说明和对比的目的,提供这些等待时间值中的每一个等待时间值;将会理解,使用其他接入网络介质和技术可以进一步降低等待时间。在一些示例中,相对于网络源和目的地,网络的各个部分可以被分类为“靠近边缘”层、“本地边缘”层、“接近边缘”层、“中间边缘”层或“远边缘”层。例如,从核心网络数据中心735或云数据中心745的角度来看,中央局或内容数据网络可以被视为位于“接近边缘”层内(“接近”云,具有在与用例705的设备和端点通信时的高等待时间值),而接入点、基站、自有服务器或网络网关可以被视为位于“远边缘”层内(“远”离云,具有在与用例705的设备和端点通信时的低等待时间值)。将会理解,构成“靠近”、“本地”、“接近”、“中间”或“远”边缘的特定网络层的其他分类可以基于等待时间、距离、网络跳数或其他可测量的特性,如从网络层700-740中的任一层中的源所测量的特性。
由于多个服务利用边缘云,因此各种用例705可能在来自传入流的使用压力下访问资源。为了实现低等待时间的结果,在边缘云610内执行的服务在以下方面平衡了不同的要求:(a)优先级(吞吐量或等待时间)和服务质量(QoS)(例如,在响应时间要求方面,用于自主汽车的通信量可能比温度传感器具有更高的优先级;或者取决于应用,性能灵敏度/瓶颈可能存在于计算/加速器、存储器、存储、或网络资源上);(b)可靠性和复原性(例如,取决于应用,一些输入流需要被作用并且以任务关键型可靠性来路由通信量,而一些其他输入流可以容忍偶尔的故障;以及(c)物理约束(例如,功率、冷却和形状因子)。
这些用例的端对端服务视图涉及服务流的概念,并且与事务相关联。事务详细说明了用于消费服务的实体的整体服务要求、以及用于资源、工作负荷、工作流的相关联的服务、以及业务功能和业务水平要求。根据所描述的“条款”执行的服务能以确保事务在服务的生命周期期间的实时和运行时合约合规性的方式在每层处被管理。当事务中的组件缺失其约定的SLA时,系统作为整体(事务中的组件)可以提供以下能力:(1)理解SLA违反的影响,以及(2)增强系统中的其他组件以恢复整体事务SLA,以及(3)实现补救的步骤。
因此,考虑到这些变化和服务特征,边缘云610内的边缘计算可以提供实时或接近实时地服务和响应于用例705的多个应用(例如,对象跟踪、视频监控、连接的汽车等)的能力,并满足这些多个应用的超低等待时间要求。这些优势使全新类别的应用(虚拟网络功能(VNF)、功能即服务(FaaS)、边缘即服务(EaaS)、标准过程等)得以实现,这些应用由于等待时间或其他限制而无法利用传统的云计算。
然而,伴随边缘计算的优势而来的有以下注意事项。位于边缘处的设备通常是资源受限的,并且因此存在对边缘资源的使用的压力。典型地,这是通过对供多个用户(租户)和设备使用的存储器和存储资源的池化来解决的。边缘可能是功率受限且冷却受限的,并且因此需要由消耗最多功率的应用对功率使用作出解释。在这些经池化的存储器资源中可能存在固有的功率-性能权衡,因为它们中的许多可能使用新兴的存储器技术,在这些技术中,更多的功率需要更大的存储器带宽。同样,还需要改善的硬件安全性和信任根受信任的功能,因为边缘位置可以是无人(控制)的,并且可能甚至需要经许可的访问(例如,当被容纳在第三方位置时)。在多租户、多所有者、或多访问设置中,此类问题在边缘云610中被放大,此类设置中,由许多用户请求服务和应用,特别是当网络使用动态地波动以及多个相关者、用例、和服务的组成改变时。
在更一般的级别上,边缘计算系统可以被描述为涵盖在先前讨论的、在边缘云610(网络层700-740)中操作的层处的任何数量的部署,这些层提供来自客户端和分布式计算设备的协调。一个或多个边缘网关节点、一个或多个边缘聚合节点和一个或多个核心数据中心可以跨网络的各个层而分布,以由电信服务提供商(“电信公司”或“TSP”)、物联网服务提供商、云服务提供商(CSP)、企业实体或任何其他数量的实体提供边缘计算系统的实现,或者代表电信服务提供商(“电信公司”或“TSP”)、物联网服务提供商、云服务提供商(CSP)、企业实体或任何其他数量的实体提供边缘计算系统的实现。诸如当进行编排以满足服务目标时,可以动态地提供边缘计算系统的各种实现方式和配置。
与本文提供的示例一致,客户端计算节点可以被具体化为任何类型的端点组件、设备、装置或能够作为数据的生产者或消费者进行通信的其他事物。进一步地,如边缘计算系统中所使用的标签“节点”或“设备”不一定意指此类节点或设备以客户端或代理/仆从/跟随者角色操作;相反,边缘计算系统中的节点或设备中的任一者指代包括分立的或连接的硬件或软件配置以促进或使用边缘云610的各个实体、节点或子系统。
由此,边缘云610由网络层710-730之间的边缘网关节点、边缘聚合节点或其他边缘计算节点操作并在网络层710-730之间的边缘网关节点、边缘聚合节点或其他边缘计算节点内被操作的网络组件和功能特征形成。因此,边缘云610可被具体化为提供边缘计算或存储资源的任何类型的网络,这些边缘计算或存储资源被定位成接近具有无线电接入网络(RAN)能力的端点设备(例如,移动计算设备、IoT设备、智能设备等),这在本文中进行讨论。换言之,边缘云610可被预想为连接端点设备和传统网络接入点、同时还提供存储或计算能力的“边缘”,这些传统网络接入点充当进入到包括移动运营商网络(例如,全球移动通信系统(GSM)网络、长期演进(LTE)网络、5G/6G网络等)的服务提供商核心网络中的入口点。其他类型和形式的网络接入(例如,Wi-Fi、长程无线、包括光学网络的有线网络)也可替代此类3GPP运营商网络被利用或与此类3GPP运营商网络组合来利用。
边缘云610的网络组件可以是服务器、多租户服务器、装置计算设备或任何其他类型的计算设备。例如,边缘云610可以包括作为包括壳体、机壳、机箱或外壳的自包含电子设备的装置计算设备。在一些情况下,可以针对便携性来确定壳体尺寸,以使得其可由人类携载或被运输。示例壳体可包括形成一个或多个外表面的材料,该一个或多个外表面部分地或完整地保护装置的内容物,其中,保护可包括天气保护、危险环境保护(例如,EMI、振动、极端温度)或使得能够浸入水中。示例壳体可包括用于为固定式或便携式实现方式提供功率的功率电路系统,诸如AC功率输入、DC功率输入、(多个)AC/DC或DC/AC转换器、功率调节器、变压器、充电电路系统、电池、有线输入或无线功率输入。示例壳体或其表面可包括或连接至安装硬件,以实现到诸如建筑物、电信结构(例如,杆、天线结构等)或机架(例如,服务器机架、刀片支架等)之类的结构的附接。示例壳体或其表面可支持一个或多个传感器(例如,温度传感器、振动传感器、光传感器、声学传感器、电容传感器、接近度传感器等)。一个或多个此类传感器可被包含在装置的表面中、由装置的表面承载、或以其他方式被嵌入在装置的表面中或被安装至装置的表面。示例壳体或其表面可支持机械连接性,诸如推进硬件(例如,轮子、螺旋桨等)或铰接硬件(例如,机械臂、可枢转附件等)。在一些情况下,传感器可包括任何类型的输入设备,诸如用户接口硬件(例如,按键、开关、拨号盘、滑块等)。在一些情况下,示例壳体包括包含在其中、由其携载、嵌入其中或附接于其的输出设备。输出设备可包括显示器、触摸屏、灯、LED、扬声器、I/O端口(例如,USB)等。在一些情况下,边缘设备是为特定目的而被呈现在网络中、但是可具有可用于其他目的的处理或其他能力的设备(例如,红绿灯)。此类边缘设备可以独立于其他联网设备,并且可设置有具有适合其主要目的的形状因子的壳体;但对于不干扰其主要任务的其他计算任务仍然是可用的。边缘设备包括物联网设备。装置计算设备可包括用于管理诸如设备温度、振动、资源利用率、更新、功率问题、物理和网络安全之类的本地问题的硬件和软件组件。结合图11B描述用于实现装置计算设备的示例硬件。边缘云610还可以包括一个或多个服务器或一个或多个多租户服务器。此类服务器可包括操作系统并实现虚拟计算环境。虚拟计算环境可包括管理(例如,生成、部署、损毁等)一个或多个虚拟机、一个或多个容器等的管理程序。此类虚拟计算环境提供其中一个或多个应用或其他软件、代码或脚本可在与一个或多个其他应用、软件、代码或脚本隔离的同时进行执行的执行环境。
在图8中,(以移动设备、计算机、自主交通工具、业务计算装备、工业处理装备的形式的)各种客户端端点810交换特定于端点网络聚合类型的请求和响应。例如,客户端端点810可以通过借助于自有网络系统832交换请求和响应822,经由有线宽带网络获得网络接入。一些客户端端点810(诸如移动计算设备)可以通过借助于接入点(例如,蜂窝网络塔)834交换请求和响应824,经由无线宽带网络获得网络接入。一些客户端端点810(诸如自主交通工具)可通过街道定位网络系统836,经由无线机载网络获得请求和响应826的网络接入。然而,无论网络接入的类型如何,TSP可以在边缘云610内部署聚合点842、844来聚合通信量和请求。因此,在边缘云610内,TSP可以(诸如在边缘聚合节点840处)部署各种计算和存储资源以提供请求的内容。边缘聚合节点840和边缘云610的其他系统被连接至云或数据中心860,该云或数据中心860使用回程网络850来满足来自云/数据中心对网站、应用、数据库服务器等的更高等待时间请求。边缘聚合节点840和聚合点842、844的附加或合并的实例(包括部署在单个服务器框架上的那些实例)也可以存在于边缘云610或TSP基础设施的其他区域内。
图9图示出跨在多个边缘节点和使用此类边缘节点的多个租户(例如,用户、提供商)之间操作的边缘计算系统的虚拟化和基于容器的边缘配置的部署和编排。具体而言,图9描绘了边缘计算系统中的第一边缘节点922和第二边缘节点924的协调,以实现对接入各种虚拟边缘实例的各种客户端端点910(例如,智慧城市/建筑系统、移动设备、计算设备、商业/物流系统、工业系统等)的请求和响应。在此,虚拟边缘实例932、934通过接入云/数据中心940以获得对网站、应用、数据库服务器等的更高等待时间的请求来提供边缘云中的边缘计算能力和处理。然而,边缘云使得能够协调用于多个租户或实体的多个边缘节点之间的处理。
在图9的示例中,这些虚拟边缘实例包括:提供给第一租户(租户1)的第一虚拟边缘932,该第一虚拟边缘932提供边缘存储、计算、和服务的第一组合;以及第二虚拟边缘934,提供边缘存储、计算、和服务的第二组合。虚拟边缘实例932、934分布在边缘节点922、924之间,并且可以包括其中从相同或不同的边缘节点满足请求和响应的场景。用于以分布式但协调的方式操作的边缘节点922、924的配置基于边缘供应功能950来发生。用于在多个租户之间为应用和服务提供协调的操作的边缘节点922、924的功能基于编排功能960而发生。
应当理解,910中的设备中的一些设备是多租户设备,其中租户1可以在租户1‘片’内运行,而租户2可以在租户2片内运行(并且,在进一步的示例中,可能存在附加的租户或子租户;并且每个租户甚至可以对特定特征组具体地享有权利并且在事务上被绑定至特定特征组,一直到对特定的硬件特征具体地享有权利并且在事务上被绑定至特定的硬件特征)。受信任的多租户设备可以进一步包含租户专用的加密密钥,使得密钥和切片的组合可以被视为“信任根”(RoT)或租户专用的RoT。可以进一步计算使用DICE(设备身份组合引擎)架构动态地组成的RoT,使得单个DICE硬件构建块可用于构造用于对设备能力(诸如现场可编程门阵列(FPGA))进行分层的分层受信任的计算基础情境。RoT可进一步用于受信任计算情境,以启用对支持多租赁有用的“扇出”。在多租户环境内,相应的边缘节点922、924可以作为针对每个节点被分配给多个租户的本地资源的安全性特征实施点。附加地,租户运行时和应用执行(例如,在实例932、934中)可以用作安全性特征的实施点,该安全性特征创建跨越潜在多个物理主管平台的资源的虚拟边缘抽象。最后,编排实体处的编排功能960可以作为用于沿着租户边界对资源进行列队的安全性特征实施点来操作。
边缘计算节点可对资源(存储器、中央处理单元(CPU)、图形处理单元(GPU)、中断控制器、输入/输出(I/O)控制器、存储器控制器、总线控制器等)分区,其中,相应的分区可包含RoT能力,并且其中根据DICE模型的扇出和分层可进一步应用于边缘节点。云计算节点通常使用容器、FaaS引擎、小型服务程序、服务器、或可以根据DICE分层和扇出结构进行分区,以支持每个节点的RoT情境的其他计算抽象。因此,跨越设备910、922和940的相应的RoT可以协调分布式受信任计算基础(DTCB)的建立,使得可以建立端到端链接所有要素的租户专用的虚拟受信任安全信道。
进一步地,将理解,容器可具有保护其内容不受先前边缘节点影响的数据或工作负荷特定的密钥。作为容器迁移的一部分,源边缘节点处的舱控制器可以从目标边缘节点舱控制器获得迁移密钥,其中迁移密钥用于包装容器特定的密钥。当容器/舱迁移到目标边缘节点时,解包裹密钥被暴露于舱控制器,然后该舱控制器对经包裹的密钥进行解密。密钥现在可用于对容器特定的数据执行操作。迁移功能可以由被适当地证明的边缘节点和舱管理器(如上所述)来选通。
在进一步的示例中,边缘计算系统被扩展以通过在多所有方、多租户环境中使用容器(提供代码和所需依赖关系的被容纳的、可部署的软件单元)来提供多个应用的编排。多租户编排器可用于执行密钥管理、信任锚管理以及与图9中的受信任的‘片’概念的供应和生命周期相关的其他安全性功能。例如,边缘计算系统可被配置成用于满足来自多个虚拟边缘实例(以及,来自云或远程数据中心)的各种客户端端点的请求和响应。这些虚拟边缘实例的使用可以同时支持多个租户和多个应用(例如,增强现实(AR)/虚拟现实(VR)、企业应用、内容交付、游戏、计算迁移)。此外,虚拟边缘实例内可存在多种类型的应用(例如,普通应用;等待时间敏感的应用;等待时间关键的应用;用户平面应用;联网应用等)。虚拟边缘实例还可以横跨处于不同地理位置的多个所有方的系统(或者由多个所有方共同拥有或共同管理的相应的计算系统和资源)。
例如,每个边缘节点922、924可以实现容器的使用,诸如使用提供一个或多个容器的组的容器“舱”926、928。在使用一个或多个容器舱的设置中,舱控制器或编排器负责舱中容器的本地控制和编排。根据每个容器的需要对为相应边缘切片932、934提供的各种边缘节点资源(例如,以六边形描绘的存储、计算、服务)进行分区。
凭借容器舱的使用,舱控制器监督容器和资源的分区和分配。舱控制器从编排器(例如,编排器960)接收指令,该编排器指令控制器如何最佳地对物理资源进行分区以及在什么持续时间内,诸如通过基于SLA合约接收关键性能指标(KPI)目标。舱控制器确定哪个容器需要哪些资源,以及为了完成工作负荷并满足SLA需要多久。舱控制器还管理容器生命周期操作,诸如创建容器、为容器供应资源和应用、协调在分布式应用上一起工作的多个容器之间的中间结果、当工作负荷完成时拆除容器等。附加地,舱控制器可以充当安全角色,该安全角色阻止资源分配,直到正确的租户进行认证,或者阻止向容器供应数据或工作负荷,直到满足证明结果。
而且,通过使用容器舱,租户边界仍然可以存在,但存在于容器的每一个舱的情境中。如果每个租户特定的舱都有租户特定的舱控制器,则将存在对资源分配请求进行合并的共享舱控制器,以避免典型的资源短缺情况。可提供进一步的控制,以确保舱和舱控制器的证明和可信度。例如,编排器960可以向执行证明验证的本地舱控制器供应证明验证策略。如果证明满足第一租户舱控制器而不是第二租户舱控制器的策略,则第二舱可以迁移到确实满足该策略的不同边缘节点。替代地,可以允许第一舱执行,并且在第二舱执行之前安装和调用不同的共享舱控制器。
图10图示出在边缘计算系统中部署容器的附加计算布置。作为简化示例,系统布置1010、1020描述了其中舱控制器(例如,容器管理器1011、1021和容器编排器1031)适于通过经由计算节点(布置1010中的1015)的执行来启动容器化舱、功能、和功能即服务实例,或适于通过经由计算节点(布置1020中的1023)的执行来单独地执行容器化虚拟化的网络功能。该布置适于在(使用计算节点1037的)系统布置1030中使用多个租户,其中容器化舱(例如,舱1012)、功能(例如,功能1013、VNF 1022、1036)、和功能即服务实例(例如,FaaS实例1014)在专用于相应的租户的虚拟机(例如,用于租户1032、1033的VM 1034、1035)内被启动(除了执行虚拟化网络功能)。该布置进一步适于在系统布置1040中使用,该系统布置1040提供容器1042、1043、或各种功能、应用和功能在计算节点1044上的执行,如由基于容器的编排系统1041所协调。
图10中描绘的系统布置提供了在应用组成方面平等地对待VM、容器和功能的架构(并且得到的应用是这三个组成部分的组合)。每个组成部分可涉及使用一个或多个加速器(FPGA、ASIC)组件作为本地后端。以此方式,应用可以跨多个边缘所有方被划分,如由编排器进行协调。
在图10的上下文中,舱控制器/容器管理器、容器编排器和各个节点可以提供安全性实施点。然而,在其中分配给一租户的资源与分配给第二租户的资源是不同的但边缘所有方合作以确保资源分配不跨租户边界被共享的情况下,可以编排租户隔离。或者,资源分配可以跨租户边界而被隔离,因为租户可以允许经由订阅或事务/合约基础的“使用”。在这些情境中,可由边缘所有者使用虚拟化、容器化、飞地和硬件分区方案来实施租赁。其他隔离环境可包括:裸金属(专用)装备、虚拟机、容器、容器上虚拟机、或其组合。
在进一步的示例中,软件定义的或受控的硅硬件以及其他可配置的硬件的各方面可以与边缘计算系统的应用、功能、和服务集成。软件定义的硅(SDSi)可用于基于某一资源或硬件组成部分(例如,通过升级、重新配置或在硬件配置本身内预设新的特征)修复自身或工作负荷的一部分的能力来确保该组成部分履行合约或服务水平协议的能力。
在进一步的示例中,参考当前的边缘计算系统和环境讨论的计算节点或设备中的任一者可以基于图11A和图11B中所描绘的组件来实现。相应的边缘计算节点可以被具体化为能够与其他边缘组件、联网组件或端点组件进行通信的设备、装置、计算机或其他“物”的类型。例如,边缘计算设备可以被具体化为个人计算机,服务器,智能手机,移动计算设备,智能装置,机载计算系统(例如,导航系统),具有外箱、外壳的自包含设备等,或能够执行所描述的功能的其他设备或系统。
在图11A中描绘的简化示例中,边缘计算节点1100包括计算引擎(本文中也称为“计算电路系统”)1102、输入/输出(I/O)子系统1108、数据存储1110、通信电路子系统1112,以及任选地,一个或多个外围设备1114。在其他示例中,相应的计算设备可以包括其他或附加组件,诸如通常在计算机中发现的那些组件(例如,显示器、外围设备等)。附加地,在一些示例中,说明性组件中的一个或多个可被并入到另一组件中,或以其他方式形成另一组件的部分。
计算节点1100可被具体化为能够执行各种计算功能的任何类型的引擎、设备、或设备集合。在一些示例中,计算节点1100可被具体化为单个设备,诸如集成电路、嵌入式系统、现场可编程门阵列(FPGA)、芯片上系统(SOC)或者其他集成系统或设备。在说明性示例中,计算节点1100包括或被具体化为处理器1104和存储器1106。处理器1104可被具体化为能够执行本文中所描述的功能(例如,执行应用)的任何类型的处理器。例如,处理器1104可被具体化为(多个)多核处理器、微控制器、处理单元、专门或专用处理单元、或其他处理器或处理/控制电路。
在一些示例中,处理器1104可被具体化为、包括或耦合至FPGA、专用集成电路(ASIC)、可重新配置的硬件或硬件电路系统、或用于促进本文中所描述的功能的执行的其他专用硬件。而且在一些示例中,处理器1104可被具体化为专用x处理单元(xPU),也称为数据处理单元(DPU)、基础设施处理单元(IPU)或网络处理单元(NPU)。此类xPU可具体化为独立电路或电路封装、集成在SOC内或与联网电路系统(例如,在智能NIC或增强型智能NIC中)集成、加速电路系统、存储设备或AI硬件(例如,GPU或编程FPGA)。在CPU或通用处理硬件之外,此类xPU可被设计成用于接收编程以处理一个或多个数据流并执行针对数据流的特定任务和动作(诸如主控微服务、执行服务管理或编排、组织或管理服务器或数据中心硬件、管理服务网格、或收集和分发遥测)。然而,将理解,xPU、SOC、CPU和处理器1104的其他变体可以彼此协调工作,以在计算节点1100内并代表计算节点1100执行许多类型的操作和指令。
存储器1106可被具体化为能够执行本文中所述的功能的任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器或数据存储。易失性存储器可以是需要功率来维持由该介质存储的数据的状态的存储介质。易失性存储器的非限制性示例可包括各种类型的随机存取存储器(RAM),诸如DRAM或静态随机存取存储器(SRAM)。可以在存储器模块中使用的一种特定类型的DRAM是同步动态随机存取存储器(SDRAM)。
在示例中,存储器设备是块可寻址存储器设备,诸如基于NAND或NOR技术的那些存储器设备。存储器设备还可包括三维交叉点存储器设备(例如,
Figure BDA0003662082800000201
3D XPointTM存储器)或其他字节可寻址的原位写入非易失性存储器设备。存储器设备可指代管芯本身或指代封装的存储器产品。在一些示例中,3D交叉点存储器(例如,
Figure BDA0003662082800000202
3D XPointTM存储器)可包括无晶体管的可堆叠的交叉点架构,其中存储单元位于字线和位线的交点处,并且可单独寻址,并且其中位存储基于体电阻的变化。在一些示例中,存储器1106的全部或部分可以被集成到处理器1104中。存储器1106可以存储在操作期间使用的各种软件和数据,诸如一个或多个应用、通过(多个)应用、库以及驱动程序操作的数据。
计算电路系统1102经由I/O子系统1108通信地耦合到计算节点1100的其他组件,该I/O子系统1108可被具体化为用于促进与计算电路系统1102(例如,与处理器1104或主存储器1106)以及计算电路系统1102的其他组件的输入/输出操作的电路系统或组件。例如,I/O子系统1108可被具体化为或以其他方式包括存储器控制器中枢、输入/输出控制中枢、集成传感器中枢、固件设备、通信链路(即,点对点链路、总线链路、线路、电缆、光导、印刷电路板迹线等)或用于促进输入/输出操作的其他组件和子系统。在一些示例中,I/O子系统1108可以形成芯片上系统(SoC)的部分,并可连同计算电路系统1102的处理器1104、存储器1106、和其他组件中的一者或多者一起被并入到计算电路系统1102中。
一个或多个说明性数据存储设备1110可被具体化为被配置成用于数据的短期或长期存储的任何类型的设备,诸如例如,存储器设备和电路、存储器卡、硬盘驱动器、固态驱动器或其他数据存储设备。各个数据存储设备1110可包括存储用于数据存储设备1110的数据以及固件代码的系统分区。各个数据存储设备1110还可包括根据例如计算节点1100的类型来存储用于操作系统的数据文件和可执行文件的一个或多个操作系统分区。
通信电路系统1112可被具体化为能够实现通过网络在计算电路系统1102与其他计算设备(例如,边缘计算系统的边缘网关)之间进行的通信的任何通信电路、设备或其集合。通信电路系统1112可以被配置成使用任何一种或多种通信技术(例如,有线或无线通信)和相关联的协议(例如,蜂窝联网协议(诸如3GPP 4G或5G标准)、无线局域网协议(诸如IEEE 802.11/
Figure BDA0003662082800000211
)、无线广域网协议,以太网、
Figure BDA0003662082800000212
蓝牙低能量、IoT协议(诸如IEEE802.15.4或
Figure BDA0003662082800000213
)、低功率广域网(LPWAN)或低功率广域网(LPWA)协议等)来实行此类通信。
说明性通信电路系统1112包括网络接口控制器(NIC)1120,其也可被称为主机结构接口(HFI)。NIC 1120可被具体化为一个或多个插入式板、子卡、网络接口卡、控制器芯片、芯片组或可由计算节点1100用来与另一计算设备(例如,边缘网关节点)连接的其他设备。在一些示例中,NIC 1120可被具体化为包括一个或多个处理器的芯片上系统(SoC)的部分,或NIC 1120可被包括在也包含一个或多个处理器的多芯片封装上。在一些示例中,NIC1120可包括本地处理器(未示出)或本地存储器(未示出),这两者均位于NIC 1120本地。在此类示例中,NIC 1120的本地处理器可以能够执行本文中描述的计算电路系统1102的功能中的一个或多个功能。附加地或替代地,在此类示例中,NIC 1120的本地存储器可以在板级、插座级、芯片级或其他层级上被集成到客户端计算节点的一个或多个组件中。
附加地,在一些示例中,相应的计算节点1100可以包括一个或多个外围设备1114。取决于计算节点1100的特定类型,此类外围设备1114可包括在计算设备或服务器中发现的任何类型的外围设备,诸如音频输入设备、显示器、其他输入/输出设备、接口设备或其他外围设备。在进一步的示例中,计算节点1100可以由边缘计算系统中的相应的边缘计算节点(无论是客户端、网关还是聚合节点)来具体化,或者由类似形式的装置、计算机、子系统、电路系统或其他组件来具体化。
在更详细的示例中,图11B图示出可以存在于边缘计算节点1150中的组件的示例的框图,该组件用于实现本文所描述的技术(例如,操作、过程、方法和方法论)。该边缘计算节点1150在被实现为计算设备(例如,移动设备、基站、服务器、网关等)或计算设备(例如,移动设备、基站、服务器、网关等)的一部分时提供节点1100的相应组件的更靠近的视图。边缘计算节点1150可包括本文中所引用的硬件或逻辑组件的任何组合,并且该边缘计算节点1150可包括可与边缘通信网络或此类网络的组合一起使用的任何设备或与该任何设备耦合。这些组件可被实现为集成电路(IC)、IC的部分、分立电子器件,或其他模块、指令集、可编程逻辑或算法、硬件、硬件加速器、软件、固件或其适用于边缘计算节点1150中的组合,或作为以其他方式被并入在更大的系统的底座内的组件。
边缘计算设备1150可包括处理器1152形式的处理电路系统,该处理电路系统可以是微处理器、多核处理器、多线程处理器、超低电压处理器、嵌入式处理器、xPU/DPU/IPU/NPU、专用处理单元、专门处理单元,或其他已知的处理元件。处理器1152可以是芯片上系统(SoC)的部分,在该SoC中,处理器1152和其他组件形成为单个集成电路或单个封装,诸如来自加利福尼亚州圣克拉拉市的英特尔公司的爱迪生TM(EdisonTM)或伽利略TM(GalileoTM)SoC板。作为示例,处理器1152可包括基于
Figure BDA0003662082800000231
架构酷睿TM(CoreTM)的CPU处理器(诸如夸克TM(QuarkTM)、凌动TM(AtomTM)、i3、i5、i7、i9或MCU类处理器)、或可从
Figure BDA0003662082800000232
获得的另一此类处理器。然而,可使用任何数量的其他处理器,诸如可从加利福尼亚州桑尼威尔市的超微半导体公司
Figure BDA0003662082800000233
获得的处理器、来自加利福尼亚州桑尼威尔市的MIPS技术公司的基于
Figure BDA0003662082800000234
的设计、许可自ARM控股有限公司的基于
Figure BDA0003662082800000235
的设计,或从上述各公司的客户、被许可方或采纳方获得的处理器。处理器可包括诸如以下单元:来自
Figure BDA0003662082800000236
公司的A5-A13处理器、来自
Figure BDA0003662082800000237
技术公司的骁龙TM(SnapdragonTM)处理器或来自德州仪器公司的OMAPTM处理器。处理器1152和伴随的电路系统可以以单插座形状因子、多插座形状因子或各种其他格式提供,包括以有限的硬件配置或以包括少于图11B中所示的所有元件的配置来提供。
处理器1152可通过互连1156(例如,总线)来与系统存储器1154通信。可使用任何数量的存储器设备来提供给定量的系统存储器。作为示例,存储器1154可以是根据联合电子器件工程委员会(JEDEC)设计的随机存取存储器(RAM),诸如DDR或移动DDR标准(例如,LPDDR、LPDDR2、LPDDR3或LPDDR4)。在特定示例中,存储器组件可符合JEDEC颁布的DRAM标准,诸如DDR SDRAM的JESD79F、DDR2 SDRAM的JESD79-2F、DDR3 SDRAM的JESD79-3F、DDR4SDRAM的JESD79-4A、低功率DDR(LPDDR)的JESD209、LPDDR2的JESD209-2、LPDDR3的JESD209-3和LPDDR4的JESD209-4。此类标准(和类似的标准)可被称为基于DDR的标准,而存储设备的实现此类标准的通信接口可被称为基于DDR的接口。在各种实现方式中,单独的存储器设备可以是任何数量的不同封装类型,诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(Q17P)。在一些示例中,这些设备可以直接焊接到主板上,以提供薄型解决方案,而在其他示例中,设备被配置为一个或多个存储器模块,这一个或多个存储器模块进而通过给定的连接器耦合至主板。可使用任何数量的其他存储器实现方式,诸如其他类型的存储器模块,例如,不同种类的双列直插存储器模块(DIMM),包括但不限于microDIMM(微DIMM)或MiniDIMM(迷你DIMM)。
为了提供对信息(诸如数据、应用、操作系统等)的持久性存储,存储1158还可经由互连1156而耦合至处理器1152。在示例中,存储1158可经由固态盘驱动器(SSDD)来实现。可用于存储1158的其他设备包括闪存存储器卡(诸如安全数字(SD)卡、microSD卡、极限数字(XD)图片卡,等等)和通用串行总线(USB)闪存驱动器。在示例中,存储器设备可以是或者可以包括使用硫属化物玻璃的存储器设备、多阈值级别NAND闪存存储器、NOR闪存存储器、单级或多级相变存储器(PCM)、电阻式存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、包含忆阻器技术的磁阻随机存取存储器(MRAM)、包括金属氧化物基底、氧空位基底和导电桥随机存取存储器(CB-RAM)的电阻式存储器、或自旋转移力矩(STT)-MRAM、基于自旋电子磁结存储器的设备、基于磁隧穿结(MTJ)的设备、基于DW(畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或者任何上述或其他存储器的组合。
在低功率实现方式中,存储1158可以是与处理器1152相关联的管芯上存储器或寄存器。然而,在一些示例中,存储1158可使用微硬盘驱动器(HDD)来实现。此外,附加于或替代所描述的技术,可将任何数量的新技术用于存储1158,诸如阻变存储器、相变存储器、全息存储器或化学存储器,等等。
组件可通过互连1156进行通信。互连1156可包括任何数量的技术,包括工业标准架构(ISA)、扩展ISA(EISA)、外围组件互连(PCI)、外围组件互连扩展(PCIx)、PCI express(PCI快速,PCIe)或任何数量的其他技术。互连1156可以是例如在基于SoC的系统中使用的专有总线。其他总线系统可被包括,诸如集成电路间(I2C)接口、串行外围设备接口(SPI)接口、点对点接口、以及功率总线,等等。
互连1156可将处理器1152耦合至收发器1166,以用于例如与连接的边缘设备1162通信。收发器1166可使用任何数量的频率和协议,诸如IEEE 802.15.4标准下的2.4千兆赫兹(GHz)传输,使用如由
Figure BDA0003662082800000241
特别兴趣小组定义的
Figure BDA0003662082800000242
低能量(BLE)标准、或
Figure BDA0003662082800000243
标准,等等。为特定的无线通信协议配置的任何数量的无线电可用于到连接的边缘设备1162的连接。例如,无线局域网(WLAN)单元可用于根据电气和电子工程师协会(IEEE)802.11标准实现
Figure BDA0003662082800000251
通信。另外,例如根据蜂窝或其他无线广域协议的无线广域通信可经由无线广域网(WWAN)单元发生。
无线网络收发器1166(或多个收发器)可以使用用于不同范围的通信的多种标准或无线电来进行通信。例如,边缘计算节点1150可使用基于蓝牙低能量(BLE)或另一低功率无线电的本地收发器与接近的(例如,在约10米内的)设备通信以节省功率。更远的(例如,在约50米内的)连接的边缘设备1162可通过
Figure BDA0003662082800000252
或其他中间功率的无线电而联络到。这两种通信技术能以不同的功率水平通过单个无线电发生,或者可通过分开的收发器而发生,分开的收发器例如使用BLE的本地收发器和分开的使用
Figure BDA0003662082800000253
的网格收发器。
可包括无线网络收发器1166(例如,无线电收发器),以经由局域网协议或广域网协议来与云(例如,边缘云1195)中的设备或服务通信。无线网络收发器1166可以是遵循IEEE 802.15.4或IEEE 802.15.4g标准等的低功率广域(LPWA)收发器。边缘计算节点1150可使用由Semtech和LoRa联盟开发的LoRaWANTM(长距离广域网)在广域上通信。本文中所描述的技术不限于这些技术,而是可与实现长距离、低带宽通信(诸如Sigfox和其他技术)的任何数量的其他云收发器一起使用。进一步地,可使用其他通信技术,诸如在IEEE802.15.4e规范中描述的时分信道跳。
除了针对如本文中所描述的无线网络收发器1166而提及的系统之外,还可使用任何数量的其他无线电通信和协议。例如,收发器1166可包括使用扩展频谱(SPA/SAS)通信以实现高速通信的蜂窝收发器。进一步地,可使用任何数量的其他协议,诸如用于中速通信和供应网络通信的
Figure BDA0003662082800000254
网络。收发器1166可包括与任何数量的3GPP(第三代合作伙伴计划)规范(诸如在本公开的末尾处进一步详细讨论的长期演进(LTE)和第五代(5G)通信系统)兼容的无线电。网络接口控制器(NIC)1168可被包括以提供到边缘云1195的节点或到其他设备(诸如(例如,在网格中操作的)连接的边缘设备1162)的有线通信。有线通信可提供以太网连接,或可基于其他类型的网络,诸如控制器区域网(CAN)、本地互连网(LIN)、设备网络(DeviceNet)、控制网络(ControlNet)、数据高速路+、现场总线(PROFIBUS)或工业以太网(PROFINET),等等。附加的NIC 1168可被包括以启用到第二网络的连接,例如,第一NIC1168通过以太网提供到云的通信,并且第二NIC 1168通过另一类型的网络提供到其他设备的通信。
鉴于从设备到另一组件或网络的可适用通信类型的多样性,由设备使用的可适用通信电路系统可以包括组件1164、1166、1168或1170中的任何一个或多个,或由组件1164、1166、1168或1170中的任何一个或多个来具体化。因此,在各示例中,用于通信(例如,接收、传送等)的可适用装置可由此类通信电路系统来具体化。
边缘计算节点1150可以包括或被耦合到加速电路系统1164,该加速电路系统1164可以由一个或多个人工智能(AI)加速器、神经计算棒、神经形态硬件、FPGA、GPU的布置、一个或多个SoC、一个或多个CPU、一个或多个数字信号处理器、专用ASIC、或被设计用于完成一个或多个专有任务的其他形式的专用处理器或电路系统来具体化。这些任务可以包括AI处理(包括机器学习、训练、推断、和分类操作)、视觉数据处理、网络数据处理、对象检测、规则分析等。这些任务还可包括用于本文档中其他地方讨论的服务管理和服务操作的特定边缘计算任务。
互连1156可将处理器1152耦合至用于连接附加的设备或子系统的传感器中枢或外部接口1170。设备可包括传感器1172,诸如加速度计、水平传感器、流量传感器、光学光传感器、相机传感器、温度传感器、全球定位系统(例如,GPS)传感器、压力传感器、气压传感器,等等。中枢或接口1170可进一步用于将边缘计算节点1150连接至致动器1174,诸如功率开关、阀致动器、可听声音发生器、视觉警告设备等。
在一些任选的示例中,各种输入/输出(I/O)设备可存在于边缘计算节点1150内,或可连接至边缘计算节点1150。例如,可包括显示器或其他输出设备1184来显示信息,诸如传感器读数或致动器位置。可以包括输入设备1186(诸如触摸屏或小键盘)来接受输入。输出设备1184可包括任何数量的音频或视觉显示形式,包括:简单视觉输出,诸如二进制状态指示器(例如,发光二极管(LED));多字符视觉输出;或更复杂的输出,诸如显示屏(例如,液晶显示器(LCD)屏),其具有从边缘计算节点1150的操作生成或产生的字符、图形、多媒体对象等的输出。在本系统的情境中,显示器或控制台硬件可用于:提供边缘计算系统的输出并接收边缘计算系统的输入;管理边缘计算系统的组件或服务;标识边缘计算组件或服务的状态;或进行任何其他数量的管理或管理功能或服务用例。
电池1176可为边缘计算节点1150供电,但是在其中边缘计算节点1150被安装在固定位置的示例中,该边缘计算节点1150可具有耦合至电网的电源,或者电池可以用作备用或用于临时功能。电池1176可以是锂离子电池、金属-空气电池(诸如锌-空气电池、铝-空气电池、锂-空气电池),等等。
电池监测器/充电器1178可被包括在边缘计算节点1150中以跟踪电池1176(如果包括的话)的充电状态(SoCh)。电池监测器/充电器1178可用于监测电池1176的其他参数以提供失效预测,诸如电池1176的健康状态(SoH)和功能状态(SoF)。电池监测器/充电器1178可包括电池监测集成电路,诸如来自线性技术公司(Linear Technologies)的LTC4020或LTC2990、来自亚利桑那州的凤凰城的安森美半导体公司(ON Semiconductor)的ADT7488A、或来自德克萨斯州达拉斯的德州仪器公司的UCD90xxx族的IC。电池监测器/充电器1178可通过互连1156将关于电池1176的信息传输至处理器1152。电池监测器/充电器1178也可包括使处理器1152能够直接监视电池1176的电压或来自电池1176的电流的模数(ADC)转换器。电池参数可被用于确定边缘计算节点1150可执行的动作,诸如传输频率、网格网络操作、感测频率,等等。
功率块1180或耦合至电网的其他电源可与电池监测器/充电器1178耦合以对电池1176充电。在一些示例中,功率块1180可用无线功率接收机代替,以便例如通过边缘计算节点1150中的环形天线来无线地获得功率。无线电池充电电路(诸如来自加利福尼亚州的苗比达市的线性技术公司的LTC4020芯片,等等)可被包括在电池监测器/充电器1178中。可以基于电池1176的尺寸并且因此基于所要求的电流来选择特定的充电电路。可使用由无线充电联盟(Airfuel Alliance)颁布的Airfuel标准、由无线电力协会(Wireless PowerConsortium)颁布的Qi无线充电标准、或由无线电力联盟(Alliance for Wireless Power)颁布的Rezence充电标准等等来执行充电。
存储1158可包括用于实现本文中公开的技术的软件、固件或硬件命令形式的指令1182。虽然此类指令1182被示出为被包括在存储器1154和存储1158中的代码块,但是可以理解,可用例如被建立到专用集成电路(ASIC)中的硬连线电路来代替代码块中的任一个。
在示例中,经由存储器1154、存储1158或处理器1152提供的指令1182可被具体化为非瞬态机器可读介质1160,该非瞬态机器可读介质1160包括用于引导处理器1152执行边缘计算节点1150中的电子操作的代码。处理器1152可通过互连1156来访问非瞬态机器可读介质1160。例如,非瞬态机器可读介质1160可由针对存储1158所描述的设备来具体化,或者可包括特定的存储单元,诸如光盘、闪存驱动器或任何数量的其他硬件设备。非瞬态机器可读介质1160可包括用于指示处理器1152执行例如像参照上文中描绘的操作和功能的(多个)流程图和(多个)框图而描述的特定的动作序列或动作流的指令。如本文中所使用,术语“机器可读介质”和“计算机可读介质”是可互换的。
而且,在特定示例中,处理器1152上的指令1182(单独地或与机器可读介质1160的指令1182结合)可以配置受信任执行环境(TEE)1190的执行或操作。在示例中,TEE 1190作为处理器1152可访问的保护区域来操作,以用于指令的安全执行和对数据的安全访问。例如,可以通过使用
Figure BDA0003662082800000284
软件防护扩展(SGX)或
Figure BDA0003662082800000281
硬件安全扩展、
Figure BDA0003662082800000282
管理引擎(ME)或
Figure BDA0003662082800000283
融合安全可管理性引擎(CSME)来提供TEE 1190的各种实现方式以及处理器1152或存储器1154中伴随的安全区域。安全强化、硬件信任根、和受信任或受保护操作的其他方面可以通过TEE 1190和处理器1152在设备1150中实现。
图12图示出用于将软件分发至一个或多个设备的软件分发平台1205,该软件诸如图12的示例计算机可读指令1282,该一个或多个设备诸如(多个)示例处理器平台1200或连接的边缘设备。示例软件分发平台1205可以由能够存储软件并将软件传送到其他计算设备(例如,第三方、或连接的边缘设备)的任何计算机服务器、数据设施、云服务等来实现。示例连接的边缘设备可以是消费方、客户端、管理设备(例如,服务器)、第三方(例如,拥有或操作软件分发平台1205的实体的消费方)。示例连接的边缘设备可在商业或家庭自动环境中操作。在一些示例中,第三方是诸如图12的示例计算机可读指令1282之类的软件的开发方、销售方、许可方。第三方可以是购买或许可软件以用于使用或转售或分许可的消费方、用户、零售商、OEM等。在一些示例中,所分发的软件引起一个或多个用户界面(UI)或图形用户界面(GUI)的显示,以标识地理上或逻辑上彼此分离的一个或多个设备(例如,连接的边缘设备)(例如,被特许负责配水控制(例如,泵)、配电控制(例如,继电器)等的物理上分离的IoT设备)。
在图12的所图示示例中,软件分发平台1205包括一个或多个服务器以及一个或多个存储设备。如上文所描述,存储设备存储计算机可读指令1282,该计算机可读指令1282可以与附图中所图示和本文所描述的示例计算机可读指令相对应。示例软件分发平台1205的一个或多个服务器与网络1210通信,该网络1210可以与因特网或本文中所描述的示例网络中的任何示例网络中的任何一者或多者相对应。在一些示例中,作为商业事务的一部分,一个或多个服务器响应于将软件传送到请求方的请求。可以由软件分发平台的一个或多个服务器或经由第三方支付实体来处置针对软件的交付、销售、或许可的支付。服务器使购买者或许可者能够从软件分发平台1205下载计算机可读指令1282。例如,软件(其可与本文所述的示例计算机可读指令相对应)可被下载到(多个)示例处理器平台1200(例如,示例连接的边缘设备),该(多个)示例处理器平台1200用于执行计算机可读指令1282以实现技术。在一些示例中,软件分发平台1205的一个或多个服务器通信地连接至一个或多个安全域或安全设备,示例计算机可读指令1282的请求和传送必须穿过该一个或多个安全域和/或安全设备。在一些示例中,软件分发平台1205的一个或多个服务器周期性地提供、传送或强制进行软件(例如,图12的示例计算机可读指令1282)更新以确保改善、补丁、更新等被分发并应用于终端用户设备处的软件。
在图12的所图示示例中,计算机可读指令1282以特定的格式被存储在软件分发平台1205的存储设备上。计算机可读指令的格式包括但不限于,特定的代码语言(例如,Java、JavaScript、Python、C、C#、SQL、HTML等)或特定的代码状态(例如,未经编译的代码(例如,ASCII)、经解释的代码、链接的代码、可执行代码(例如,二进制文件)等)。在一些示例中,软件分发平台1205上所存储的计算机可读指令1282在被传送至(多个)处理器平台1200时采用第一格式。在一些示例中,第一格式是特定类型的(多个)处理器平台1200可以按其来执行的可执行二进制文件。然而,在一些示例中,第一格式是未经编译的代码,其要求一个或多个准备任务将第一格式转换为第二格式以使得能够在(多个)示例处理器平台1200上执行。例如,(多个)接收处理器平台1200可能需要对采用第一格式的计算机可读指令1282进行编译,以生成能够在(多个)处理器平台1200上执行的采用第二格式的可执行代码。在另外的其他示例中,第一格式是经解释的代码,其在到达(多个)处理器平台1200后由解释器进行解释以促进指令的执行。
图13图示出根据实施例的设备上基于功率的自适应硬件可靠性的方法1300的示例的流程图。方法1300的操作由计算硬件(诸如上文或下文描述的计算硬件(例如,处理电路系统))执行。
在操作1305处,硬件平台被划分为若干分区。这里,每个分区包括具有可调节可靠性特征(例如,RAS特征)的硬件组件。在示例中,若干分区被放入多个可靠性类别中的一个可靠性类别中。
在操作1310处,获得具有可靠性需求的工作负荷。在示例中,可靠性需求是通过对工作负荷进行概况分析获得的。在示例中,可靠性需求是通过随工作负荷被分发的元数据获得的。
在操作1315处,在满足可靠性需求的可靠性类别中的若干分区中的分区上执行工作负荷。
在操作1320处,检测设备的操作参数发生变化。在示例中,受变化的操作参数包括功率。在示例中,变化是在于功率的减少。
在示例中,变化是预测的功率减少。在示例中,预测的功率较少基于历史功率供应和当前情境。在示例中,当前情境包括时间、温度或天气中的至少一个。
在示例中,受变化的操作参数包括温度。在示例中,变化是温度升高。
在示例中,变化是预测的温度升高。在示例中,预测的温度升高基于温度测量和当前情境。在示例中,当前情境包括时间、温度或天气中的至少一个。
在示例中,检测设备的操作参数的变化包括监测工作负荷的执行期间的误差并确定误差超出可靠性类别的阈值。
在操作1325处,分区的可调可靠性特征基于设备的操作参数的变化来调节。在示例中,在操作参数改变是功率减少的情况下,修改可调节参数包括通过禁用可调节参数或降低可调节参数的干预率来降低功耗。在示例中,可调节参数是存储器刷新率或巡逻擦除操作。
在示例中,在操作参数改变是温度升高的情况下,修改可调节参数包括通过启用可调节参数或增加可调节参数的干预率来提高可靠性。在示例中,可调节参数是存储器刷新率或巡逻擦除操作。
在示例中,方法1300被扩展为包括附加操作。具体来说,响应于修改可调节参数而将分区移动到第二可靠性类别。然后将工作负荷移动到具有该可靠性类别的第二分区。
图14图示出可在其上执行本文中所讨论的技术(例如,方法)中的任何一项或多项的示例机器1400的框图。如本文中所述的示例可包括机器1400中的逻辑或多个组件或机制,或可由机器1400中的逻辑或多个组件或机制操作。电路系统(例如,处理电路系统)是在机器1400的有形实体中实现的、包括硬件(例如,简单电路、门、逻辑等)的电路的集合。电路系统成员关系可以是随时间而灵活的。电路系统包括在操作时可单独地或组合地执行所指定操作的成员。在示例中,电路系统的硬件可被不可改变地设计为执行特定操作(例如,硬连线式)。在示例中,电路系统的硬件可包括可变连接的物理组件(例如,执行单元、晶体管、简单电路等),这些物理组件包括在物理上被修改(例如,对不变的聚集粒子磁性地、电气地、可移动地布置等)以对特定操作的指令进行编码的机器可读介质。在连接物理组件时,硬件组成部分的底层电气属性例如从绝缘体改变为导体,或反过来从导体变成绝缘体。这些指令使嵌入式硬件(例如,执行单元或加载机构)能够经由可变连接而在硬件中创建电路系统的成员,以在操作时执行特定操作的多个部分。相对应地,在示例中,机器可读介质元件是电路系统的部分,或者在设备正在运行时通信地耦合至电路系统的其他组件。在示例中,物理组件中的任一个可在多于一个电路系统的多于一个成员中使用。例如,在操作下,执行单元可在一个时刻在第一电路系统的第一电路中被使用,并且在不同的时间由第一电路系统中的第二电路重新使用,或由第二电路系统中的第三电路重新使用。下面是关于机器1400的这些组件的附加示例。
在替代实施例中,机器1400可作为独立式设备操作,或可被连接(例如,联网)到其他机器。在联网的部署中,机器1400能以服务器-客户端网络环境中的服务器机器、客户端机器或这两者的身份来操作。在示例中,机器1400可充当对等(P2P)(或其他分布式)网络环境中的对等机器。机器1400可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、web设备、网络路由器、交换机或桥、或者能够执行指定要由该机器采取的动作的指令(顺序的或以其他方式)的任何机器。进一步地,虽然仅图示出单个机器,但是术语“机器”也应当被认为包括单独或联合地执行一组(或多组)指令以便执行本文中所讨论的方法中的任何一种或多种方法的机器的任何集合,诸如,云计算、软件即服务(SaaS)、其他计算机集群配置。
机器(例如,计算机系统)1400可包括硬件处理器1402(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核、或其任何组合)、主存储器1404、静态存储器(例如,用于固件、微代码、基本输入输出(BIOS)、统一可扩展固件接口(UEFI)的存储器或存储等)1406和大容量存储1408(例如,硬驱动器、磁带驱动器、闪存存储或其他块设备),其中的一些或全部可以经由互链路(例如,总线)1430彼此通信。机器1400可进一步包括显示单元1410、字母数字输入设备1412(例如,键盘)以及用户界面(UI)导航设备1414(例如,鼠标)。在示例中,显示单元1410、输入设备1412以及UI导航设备1414可以是触摸屏显示器。机器1400可附加地包括存储设备(例如,驱动单元)1408、信号生成设备1418(例如,扬声器)、网络接口设备1420以及一个或多个传感器1416(诸如全球定位系统(GPS)传感器、罗盘、加速度计或其他传感器)。机器1400可包括用于连通或者控制一个或多个外围设备(例如,打印机、读卡器等)的输出控制器1428,诸如串行(例如,通用串行总线(USB))、并行、或者其他有线或无线(例如,红外(IR)、近场通信(NFC)等)连接。
处理器1402的寄存器、主存储器1404、静态存储器1406或大容量存储1408可以是或者可包括机器可读介质1422,在该机器可读介质1422上存储有一组或多组数据结构或指令1424(例如,软件),该数据结构或指令1424具体化本文中描述的技术或功能中的任何一种或多种或由本文中描述的技术或功能中的任何一种或多种利用。指令1424还可以在由机器1400对其执行期间完全或至少部分地驻留在处理器1402的寄存器、主存储器1404、静态存储器1406或大容量存储1408中的任一者内。在示例中,硬件处理器1402、主存储器1404、静态存储器1406、或大容量存储1408中的一者或任何组合都可以构成机器可读介质1422。虽然机器可读介质1422被图示为单一介质,但是术语“机器可读介质”可包括被配置成用于存储一个或多个指令1424的单一介质或多个介质(例如,集中式或分布式数据库、或相关联的高速缓存和服务器)。
术语“机器可读介质”可包括能够存储、编码或承载供机器1400执行并且使机器1400执行本公开的技术中的任何一项或多项技术的指令、或者能够存储、编码或承载由此类指令使用或与此类指令相关联的数据结构的任何介质。非限制性机器可读介质示例可包括固态存储器、光学介质、磁介质和信号(例如,射频信号、其他基于光子的信号、声音信号等)。在示例中,非瞬态机器可读介质包括具有多个粒子的机器可读介质,这些粒子具有不变(例如,静止)质量,并且因此是物质的组合物。相对应地,非瞬态机器可读介质是不包括瞬态传播信号的机器可读介质。非瞬态机器可读介质的具体示例可包括:非易失性存储器,诸如半导体存储器设备(例如,电可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM))以及闪存设备;磁盘,诸如内部硬盘和可移除盘;磁光盘;以及CD-ROM和DVD-ROM盘。
在示例中,存储在机器可读介质1422上或以其他方式提供在机器可读介质1422上的信息可以表示指令1424,诸如指令1424本身或者可以从中导出指令1424的格式。可以从中导出指令1424的该格式可以包括源代码、经编码的指令(例如,以压缩或加密的形式)、经封装的指令(例如,分成多个封装)等。表示机器可读介质1422中的指令1424的信息可以由处理电路系统处理成指令以实现本文所讨论的任何操作。例如,从(例如,由处理电路系统进行的处理的)信息中导出指令1424可以包括:(例如,从源代码、目标代码等)编译、解释、加载、组织(例如,动态地或静态地进行链接)、编码、解码、加密、解密、打包、拆包,或者以其他方式将信息操纵到指令1424中。
在示例中,指令1424的推导可以包括(例如,通过处理电路系统)对信息进行汇编、编译、或解释,以从机器可读介质1422提供的某个中间或预处理的格式创建指令1424。当信息以多个部分提供时,可以对其进行组合、拆包和修改以创建指令1424。例如,信息可以处于一个或若干远程服务器上的多个经压缩的源代码封装(或目标代码、或二进制可执行代码等)中。源代码封装可以在通过网络传输时被加密,并且可以在本地机器处被解密、被解压缩、(如果必要的话)被汇编(例如,被链接),并且被编译或被解释(例如,被编译或被解释成库、独立的可执行文件等),并且由本地机器执行。
可以利用多种传输协议(例如,帧中继、网际协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传输协议(HTTP)等等)中的任何一种协议,经由网络接口设备1420,使用传输介质,通过通信网络1426来进一步发送或接收指令1424。示例通信网络可包括局域网(LAN)、广域网(WAN)、分组数据网络(例如,互联网)、LoRa/LoRaWAN、或卫星通信网络、移动电话网络(例如,蜂窝网络,诸如符合3G、4G LTE/LTE-A、或5G标准的蜂窝网络)、普通老式电话(POTS)网络、以及无线数据网络(例如,称为
Figure BDA0003662082800000341
的电气与电子工程师协会(IEEE)802.11标准族、称为
Figure BDA0003662082800000342
的IEEE 802.16标准族)、IEEE 802.15.4标准族、对等(P2P)网络,等等。在示例中,网络接口设备1420可包括用于连接到通信网络1426的一个或多个物理插口(jack)(例如,以太网插口、同轴插口、或电话插口)或者一根或多根天线。在示例中,网络接口设备1420可包括使用单输入多输出(SIMO)、多输入多输出(MIMO)、或多输入单输出(MISO)技术中的至少一种无线地进行通信的多根天线。术语“传输介质”应当认为包括能够存储、编码或承载供由机器1400执行的指令的任何无形介质,并且“传输介质”包括数字或模拟通信信号或者用于促进此类软件的通信的其他无形介质。传输介质是机器可读介质。
附加注释和示例
示例1是一种用于设备上基于功率的自适应硬件可靠性的装置,该装置包括:包括指令的机器可读介质;以及处理电路系统,其在操作时由指令配置成用于:将硬件平台划分为多个分区,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个可靠性类别中;获得具有可靠性需求的工作负荷;在满足可靠性需求的可靠性类别中的若干个分区中的分区上执行工作负荷;检测设备的操作参数的变化;以及基于设备的操作参数的变化来修改分区的可调节可靠性特征。
在示例2中,示例1的主题,其中受变化的操作参数包括功率可用性。
在示例3中,示例2的主题,其中变化是当前的功率可用性降低。
在示例4中,示例2-3中任一项的主题,其中变化是预测的功率可用性降低。
在示例5中,示例4的主题,其中预测的功率可用性降低基于历史功率供应和当前情境。
在示例6中,示例5的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例7中,示例3-6中任一项的主题,其中,为了修改可调节可靠性特征,处理电路系统被配置成用于通过禁用可调节参数或降低可调节参数的干预率来降低功耗。
在示例8中,示例7的主题,其中可调节可靠性特征是存储器刷新率或巡逻擦除操作。
在示例9中,示例1-8中任一项的主题,其中受变化的操作参数包括温度。
在示例10中,示例9的主题,其中变化是温度的升高。
在示例11中,示例10的主题,其中,为了修改可调节可靠性特征,处理电路系统被配置成用于通过启用可调节参数或增加可调节参数的干预率来增加可靠性。
在示例12中,示例11的主题,其中可调节参数是存储器刷新率或巡逻擦除操作。
在示例13中,示例9-12中任一项的主题,其中变化是预测的温度升高。
在示例14中,示例13的主题,其中预测的温度升高基于历史温度测量和当前情境。
在示例15中,示例14的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例16中,示例1-15中任一项的主题,其中处理电路系统配置成用于:响应于修改可调节参数,将分区移动到第二可靠性类别;以及将工作负荷移动到具有可靠性类别的第二分区。
在示例17中,示例1-16中任一项的主题,其中,为了检测设备的操作参数的变化,处理电路系统被配置成用于:监测工作负荷的执行期间的误差;以及确定该误差超出可靠性类别的阈值。
在示例18中,示例1-17中任一项的主题,其中可靠性需求通过对工作负荷进行概况分析来获得。
在示例19中,示例1-18中任一项的主题,其中可靠性需求通过随工作负荷被分发的元数据来获得。
示例20是一种用于设备上基于功率的自适应硬件可靠性的方法,该方法包括:将硬件平台划分为多个分区,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个可靠性类别中;获得具有可靠性需求的工作负荷;在满足可靠性需求的可靠性类别中的若干个分区中的分区上执行工作负荷;检测设备的操作参数的变化;以及基于设备的操作参数的变化来修改分区的可调节可靠性特征。
在示例21中,示例20的主题,其中受变化的操作参数包括功率可用性。
在示例22中,示例21的主题,其中变化是当前的功率可用性降低。
在示例23中,示例21-22中任一项的主题,其中变化是预测的功率可用性降低。
在示例24中,示例23的主题,其中预测的功率可用性降低基于历史功率供应和当前情境。
在示例25中,示例24的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例26中,示例22-25中任一项的主题,其中修改可调节可靠性特征包括通过禁用可调节参数或降低可调节参数的干预率来降低功耗。
在示例27中,示例26的主题,其中可调节可靠性特征是存储器刷新率或巡逻擦除操作。
在示例28中,示例20-27中任一项的主题,其中受变化的操作参数包括温度。
在示例29中,示例28的主题,其中变化是温度的升高。
在示例30中,示例29的主题,其中修改可调节可靠性特征包括通过启用可调节参数或增加可调节参数的干预率来增加可靠性。
在示例31中,示例30的主题,其中可调节参数是存储器刷新率或巡逻擦除操作。
在示例32中,示例28-31中任一项的主题,其中变化是预测的温度升高。
在示例33中,示例32的主题,其中预测的温度升高基于历史温度测量和当前情境。
在示例34中,示例33的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例35中,示例20-34中任一项的主题,包括:响应于修改可调节参数,将分区移动到第二可靠性类别;以及将工作负荷移动到具有可靠性类别的第二分区。
在示例36中,示例20-35中任一项的主题,其中检测设备的操作参数的变化包括:监测工作负荷的执行期间的误差;以及确定该误差超出可靠性类别的阈值。
在示例37中,示例20-36中任一项的主题,其中可靠性需求通过对工作负荷进行概况分析来获得。
在示例38中,示例20-37中任一项的主题,其中可靠性需求通过随工作负荷被分发的元数据来获得。
示例39是至少一种机器可读介质,包括用于设备上基于功率的自适应硬件可靠性的指令,该指令在由处理电路系统执行时使得处理电路系统用于执行包括以下步骤的操作:将硬件平台划分为多个分区,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个可靠性类别中;获得具有可靠性需求的工作负荷;在满足可靠性需求的可靠性类别中的若干个分区中的分区上执行工作负荷;检测设备的操作参数的变化;以及基于设备的操作参数的变化来修改分区的可调节可靠性特征。
在示例40中,示例39的主题,其中受变化的操作参数包括功率可用性。
在示例41中,示例40的主题,其中变化是当前的功率可用性降低。
在示例42中,示例40-41中任一项的主题,其中变化是预测的功率可用性降低。
在示例43中,示例42的主题,其中预测的功率可用性降低基于历史功率供应和当前情境。
在示例44中,示例43的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例45中,示例41-44中任一项的主题,其中修改可调节可靠性特征包括通过禁用可调节参数或降低可调节参数的干预率来降低功耗。
在示例46中,示例45的主题,其中可调节可靠性特征是存储器刷新率或巡逻擦除操作。
在示例47中,示例39-46中任一项的主题,其中受变化的操作参数包括温度。
在示例48中,示例47的主题,其中变化是温度的升高。
在示例49中,示例48的主题,其中修改可调节可靠性特征包括通过启用可调节参数或增加可调节参数的干预率来增加可靠性。
在示例50中,示例49的主题,其中可调节参数是存储器刷新率或巡逻擦除操作。
在示例51中,示例47-50中任一项的主题,其中变化是预测的温度升高。
在示例52中,示例51的主题,其中预测的温度升高基于历史温度测量和当前情境。
在示例53中,示例52的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例54中,示例39-53中任一项的主题,其中操作包括:响应于修改可调节参数,将分区移动到第二可靠性类别;以及将工作负荷移动到具有可靠性类别的第二分区。
在示例55中,示例39-54中任一项的主题,其中检测设备的操作参数的变化包括:监测工作负荷的执行期间的误差;以及确定误差超出可靠性类别的阈值。
在示例56中,示例39-55中任一项的主题,其中可靠性需求通过对工作负荷进行概况分析来获得。
在示例57中,示例39-56中任一项的主题,其中可靠性需求通过随工作负荷被分发的元数据来获得。
示例58是一种用于设备上基于功率的自适应硬件可靠性的系统,该系统包括:用于将硬件平台划分为多个分区的装置,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个包括指令的可靠性类别中;用于获得具有可靠性需求的工作负荷的装置;用于在满足可靠性需求的可靠性类别中的若干个分区中的分区上执行工作负荷的装置;用于检测设备的操作参数的变化的装置;以及用于基于设备的操作参数的变化来修改分区的可调节可靠性特征的装置。
在示例59中,示例58的主题,其中受变化的操作参数包括功率可用性。
在示例60中,示例59的主题,其中变化是当前的功率可用性降低。
在示例61中,示例59-60中任一项的主题,其中变化是预测的功率可用性降低。
在示例62中,示例61的主题,其中预测的功率可用性降低基于历史功率供应和当前情境。
在示例63中,示例62的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例64中,示例60-63中任一项的主题,其中用于修改可调节可靠性特征的装置包括用于通过禁用可调节参数或降低可调节参数的干预率来降低功耗的装置。
在示例65中,示例64的主题,其中可调节可靠性特征是存储器刷新率或巡逻擦除操作。
在示例66中,示例58-65中任一项的主题,其中受变化的操作参数包括温度。
在示例67中,示例66的主题,其中变化是温度的升高。
在示例68中,示例67的主题,其中用于修改可调节可靠性特征的装置包括用于通过启用可调节参数或增加可调节参数的干预率来增加可靠性的装置。
在示例69中,示例68的主题,其中可调节参数是存储器刷新率或巡逻擦除操作。
在示例70中,示例66-69中任一项的主题,其中变化是预测的温度升高。
在示例71中,示例70的主题,其中预测的温度升高基于历史温度测量和当前情境。
在示例72中,示例71的主题,其中当前情境包括时间、温度或天气中的至少一个。
在示例73中,示例58-72中任一项的主题,包括:用于响应于修改可调节参数而将分区移动到第二可靠性类别的装置;以及用于将工作负荷移动到具有可靠性类别的第二分区的装置。
在示例74中,示例58-73中任一项的主题,其中用于检测设备的操作参数的变化的装置包括:用于监测工作负荷的执行期间的误差的装置;以及用于确定该误差超出可靠性类别的阈值的装置。
在示例75中,示例58-74中任一项的主题,其中可靠性需求通过对工作负荷进行概况分析来获得。
在示例76中,示例58-75中任一项的主题,其中可靠性需求通过随工作负荷被分发的元数据来获得。
示例77是包括指令的至少一种机器可读介质,该指令当由处理电路系统执行时,使得该处理电路系统执行操作以实现示例1-76中的任何一个。
示例78是一种设备,包括用于实现示例1-76中的任一个的装置。
示例79是一种用于实现示例1-76中的任何一个的系统。
示例80是一种用于实现示例1-76中的任何一个的方法。
以上具体实施方式包括对附图的引用,附图形成具体实施方式的部分。附图通过图示方式示出可被实施的具体实施例。这些实施例在本文中也被称为“示例”。此类示例可包括除所示出或所描述的那些要素以外的要素。然而,本申请发明人还构想了其中只提供所示出或所描述的那些要素的示例。另外,本申请发明人还构想了相对于本文中所示出或所描述的特定示例(或者其一个或多个方面)或者相对于本文中所示出或所描述的其他示例(或者其一个或多个方面)使用所示出或所描述的那些要素(或者其一个或多个方面)的任何组合或排列的示例。
本文档中所涉及的所有公开、专利和专利文档通过引用整体结合于此,如通过引用单独地结合。在本文档和通过引用所结合的那些文档之间的不一致的用法的情况下,在结合的(多个)引用中的用法应当被认为是对本文档的用法的补充;对于不可调和的不一致,以本文档中的用法为准。
在此文档中,如在专利文档中常见的那样,使用术语“一(a或an)”以包括一个或多于一个,这独立于“至少一个”或“一个或多个”的任何其他实例或用法。在此文档中,除非另外指示,否则使用术语“或”来指非排他性的或,使得“A或B”包括“A但非B”、“B但非A”、以及“A和B”。在所附权利要求书中,术语“包括(including)”和“其中(in which)”被用作相应的术语“包含(comprising)”和“其特征在于(wherein)”的普通英语等价词。此外,在所附权利要求书中,术语“包括(including)”和“包含(comprising)”是开放式的,也就是说,在权利要求中包括除此类术语之后列举的那些要素之外的要素的系统、设备、制品或过程仍被视为落在那项权利要求的范围内。此外,在所附权利要求书中,术语“第一”、“第二”、“第三”等仅用作标记,而不旨在对其对象施加数值要求。
以上描述旨在是说明性而非限制性的。例如,以上所描述的示例(或者其一个或多个方面)可彼此组合使用。诸如可由本领域普通技术人员在仔细阅读以上描述之后使用其他实施例。摘要用于允许读者快速地确认本技术公开的性质,并且提交此摘要需理解:它不用于解释或限制权利要求书的范围或含义。而且,在以上具体实施方式中,各种特征可分组在一起以使本公开精简。但这不应被解释为意指未要求保护的所公开特征对任何权利要求而言都是必要的。相反,发明性主题可在于少于特定的所公开实施例的所有特征。因此,所附权利要求由此被并入具体实施方式中,其中每项权利要求独立成为单独实施例。各实施例的范围应当参考所附权利要求连同这些权利要求赋予的等效方案的全部范围而确定。

Claims (24)

1.一种用于设备上基于功率的自适应硬件可靠性的方法,所述方法包括:
将硬件平台划分为多个分区,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个可靠性类别中;
获得具有可靠性需求的工作负荷;
在满足所述可靠性需求的可靠性类别中的所述若干个分区中的分区上执行所述工作负荷;
检测所述设备的操作参数的变化;以及
基于所述设备的所述操作参数的所述变化来修改所述分区的所述可调节可靠性特征。
2.如权利要求1所述的方法,其特征在于,受所述变化的所述操作参数包括功率。
3.如权利要求2所述的方法,其特征在于,所述变化是功率的减少。
4.如权利要求2所述的方法,其特征在于,所述变化是预测的功率减少。
5.如权利要求4所述的方法,其特征在于,所述预测的功率减少基于历史功率供应和当前情境。
6.如权利要求5所述的方法,其特征在于,所述当前情境包括时间、温度或天气中的至少一个。
7.如权利要求3所述的方法,其特征在于,修改所述可调节可靠性特征包括通过禁用可调节参数或降低所述可调节参数的干预率来降低功耗。
8.如权利要求7所述的方法,其特征在于,所述可调节可靠性特征是存储器刷新率或巡逻擦除操作。
9.如权利要求1所述的方法,其特征在于,受所述变化的所述操作参数包括温度。
10.如权利要求9所述的方法,其特征在于,所述变化是温度的升高。
11.如权利要求10所述的方法,其特征在于,修改所述可调节可靠性特征包括通过启用可调节参数或增加所述可调节参数的干预率来增加可靠性。
12.如权利要求11所述的方法,其特征在于,所述可调节参数是存储器刷新率或巡逻擦除操作。
13.如权利要求9所述的方法,其特征在于,所述变化是预测的温度升高。
14.如权利要求13所述的方法,其特征在于,所述预测的温度升高基于历史温度测量和当前情境。
15.如权利要求14所述的方法,其特征在于,所述当前情境包括时间、温度或天气中的至少一个。
16.如权利要求1所述的方法,包括:
响应于修改所述可调节参数而将所述分区移动到第二可靠性类别;以及
将所述工作负荷移动到具有所述可靠性类别的第二分区。
17.如权利要求1所述的方法,其特征在于,检测所述设备的操作参数的变化包括:
监测所述工作负荷的执行期间的误差;以及
确定所述误差超出所述可靠性类别的阈值。
18.如权利要求1所述的方法,其特征在于,所述可靠性需求通过对所述工作负荷进行概况分析来获得。
19.如权利要求1所述的方法,其特征在于,所述可靠性需求通过随所述工作负荷被分发的元数据来获得。
20.至少一种机器可读介质,包括指令,所述指令在由处理电路系统执行时,使所述处理电路系统执行如权利要求1-19中任一项所述的方法。
21.一种系统,包括用于执行如权利要求1-19中任一项所述的方法的装置。
22.一种用于设备上基于功率的自适应硬件可靠性的装置,所述装置包括:
包括指令的机器可读介质;以及
处理电路系统,所述处理电路系统在操作时由所述指令配置成用于:
将硬件平台划分为多个分区,每个分区包括具有可调节可靠性特征的硬件组件,若干个分区被放入多个可靠性类别中的一个可靠性类别中;
获得具有可靠性需求的工作负荷;
在满足所述可靠性需求的可靠性类别中的所述若干个分区中的分区上执行所述工作负荷;
检测所述设备的操作参数的变化;以及
基于所述设备的所述操作参数的所述变化来修改所述分区的所述可调节可靠性特征。
23.如权利要求22所述的装置,其特征在于,受所述变化的所述操作参数包括功率。
24.如权利要求22所述的装置,其特征在于,受所述变化的所述操作参数包括温度。
CN202210587517.XA 2021-06-25 2022-05-25 设备上基于功率的自适应硬件可靠性 Pending CN115525138A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/358,908 US20210325954A1 (en) 2021-06-25 2021-06-25 Power-based adaptive hardware reliability on a device
US17/358,908 2021-06-25

Publications (1)

Publication Number Publication Date
CN115525138A true CN115525138A (zh) 2022-12-27

Family

ID=78081855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210587517.XA Pending CN115525138A (zh) 2021-06-25 2022-05-25 设备上基于功率的自适应硬件可靠性

Country Status (3)

Country Link
US (1) US20210325954A1 (zh)
EP (1) EP4109259A1 (zh)
CN (1) CN115525138A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114355999B (zh) * 2021-12-24 2023-05-23 交控科技股份有限公司 应用于列车的智能温度控制机柜、控制方法、设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7233538B1 (en) * 2004-08-02 2007-06-19 Sun Microsystems, Inc. Variable memory refresh rate for DRAM
WO2019066690A1 (en) * 2017-09-27 2019-04-04 Telefonaktiebolaget Lm Ericsson (Publ) METHODS AND ARRANGEMENTS FOR AUTOMATED ENHANCEMENT OF SERVICE QUALITY OF A DATA CENTER

Also Published As

Publication number Publication date
EP4109259A1 (en) 2022-12-28
US20210325954A1 (en) 2021-10-21

Similar Documents

Publication Publication Date Title
NL2029029B1 (en) Methods and apparatus to coordinate edge platforms
EP3974980A1 (en) Methods, apparatus, and articles of manufacture for workload placement in an edge environment
EP3985511A1 (en) Orchestration of meshes
EP3971682A1 (en) Elastic power scaling
CN115373795A (zh) 基于地理围栏的边缘服务控制和认证
CN114253793A (zh) 动态追踪控制
CN114285738A (zh) 边缘节点的基于信任的编排
CN114365452A (zh) 用于在边缘计算环境中证明对象的方法和装置
CN114666876A (zh) 边缘设备的自适应功率管理
CN114679449A (zh) 中立主机边缘服务
CN115525421A (zh) 用于促进服务代理的方法和装置
CN114338680A (zh) 用于在计算设备中相对于服务水平协议来管理服务质量的方法和装置
US20220222584A1 (en) Heterogeneous compute-based artificial intelligence model partitioning
CN114253658A (zh) 边缘计算的持续测试、集成和部署管理
US20220114032A1 (en) Infrastructure managed workload distribution
US20220116289A1 (en) Adaptive cloud autoscaling
CN115525405A (zh) 变形计算机视觉流水线
EP4109256A1 (en) Model propagation in edge architectures
CN114268428A (zh) 用于管理对分散数据湖的访问的方法、系统、设备和制品
EP4109258A1 (en) Methods and apparatus to offload execution of a portion of a machine learning model
US20210318965A1 (en) Platform data aging for adaptive memory scaling
EP4109259A1 (en) Power-based adaptive hardware reliability on a device
EP4202669A1 (en) Methods and apparatus for secure execution on smart network interface cards
EP4203381A1 (en) Methods and apparatus for attestation for a constellation of edge devices
US20220214810A1 (en) Near-data processing in sharded storage environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication