一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于边缘系统中的高级监视的系统、装置和方法与流程

2022-03-02 01:24:17 来源:中国专利 TAG:


1.实施例涉及系统中的监视。


背景技术:

2.当前和下一代边缘云架构具有使用经池化的资源来高效且灵活地连接多个功能和服务的能力。例如,云服务提供商可以提供可以由多个功能和/或服务通过一个或多个边缘系统访问的经池化的存储器,以高效地处理工作负载。虽然单个客户端系统具有使用性能监视工具来高效地监视操作的能力,但是在其中可能发生跨多个边缘云实体的灵活数据移动和共享的边缘云架构中,这种监视变得困难。
附图说明
3.图1是根据实施例的交换机的框图。
4.图2是根据实施例的交换机的框图。
5.图3是根据实施例的方法的流程图。
6.图4是根据另一实施例的方法的流程图。
7.图5是根据又一实施例的方法的流程图。
8.图6是根据实施例的系统的框图。
9.图7是根据实施例的数据中心架构的一部分的框图。
10.图8是根据本发明的另一实施例的系统的框图。
11.图9是根据实施例的soc设计的实施例的框图。
12.图10是根据本发明的另一实施例的系统的框图。
13.图11是根据实施例的网络架构的框图。
具体实施方式
14.在各个实施例中,基于云的边缘架构被提供有监视能力,以灵活且高效地监视通过这种架构行进的业务。为此,与基于云的边缘架构通信的各种源可以指定高级监视规则。进而,监视电路可以以细粒度级别执行对业务流的监视。以这种方式,可以监视特定的业务模式和对资源使用的影响。尽管实施例在这方面不受限制,但是示例基于云的边缘架构可以根据计算快速链路(cxl)规范(例如,cxl 1.1规范或cxl规范的任何未来版本、修改变型或替代方案)使用互连和交换机进行通信。
15.此外,虽然本文所描述的示例实施例与基于cxl的技术相结合,但实施例可以在其他相干互连技术(例如,ibm xbus协议、nvidia nvlink协议、amd infinity fabric协议、用于加速器的高速缓存相干互连(ccix)协议或相干加速器处理器接口(opencapi))中使用。
16.在cxl实现方式中,可以发生对沿cxl互连发送的不同通信协议的业务流的细粒度监视。例如,可能存在单独的业务流,其包括可以被精细监视的所谓cxl.cache、cxl.io和cxl.mem通信协议。例如,给定实体可以注册监视规则以指示要被监视的特定通信协议,以
及要针对其应用监视的源/目的地对的标识。更进一步,可以控制监视以仅针对特定时间间隔、特定地址范围等启用监视。
17.更一般地,实施例可以用于监视业务,该业务包括经由多个互连协议(包括如本文所描述的cxl协议)的数据和消息的通信。例如,互连可以支持各种互连协议,包括非相干互连协议、相干互连协议和存储器互连协议。所支持的互连协议的非限制性示例可以包括pci、pcie、usb、idi、iosf、smi、smi3、sata、cxl.io、cxl.cache和cxl.mem等等。
18.现在参考图1,示出了根据实施例的交换机的框图。更具体地,交换机100是cxl交换机,其用于耦合到各种设备,包括至少一个主机设备和一个或多个其他设备。此外,虽然图1示出了cxl交换机的高级别视图,但是应当理解,实施例在这方面不受限制,并且类似的电路可以并入包括其他交换机类型的其他设备以及利用如本文所描述的实施例的各种其他设备中。
19.如所示的,交换机100包括入口电路105,该入口电路105被配置为接收来自一个或多个设备(例如,主机系统和一个或多个其他设备)的传入分组。通常,入口电路105可以对分组执行各种处理。在这种处理之后,处理后的分组被提供给监视电路110。如所示的,监视电路110可以包括一个或多个接口111、监视控制电路112和遥测规则存储装置114。接口111可以被暴露给在连接到交换机100的设备或计算平台上运行的各种软件栈。实施例可以实现这样的外部设备与交换机100之间的通信,以便配置监视。在实施例中,只有具有正确权限级别的软件栈才可以访问这样的监视资源,例如,可以经由证书认证或另一认证方法来完成。
20.通常,监视电路110被配置为根据一组遥测规则来处理每个传入请求。基于该分析,监视电路110可以生成回调(如果需要)或激活跟踪。在监视电路110内的处理之后,分组可以被传递到出口电路170,在该出口电路170中,分组可以被定向朝向目的地。注意,在一些实现方式中,如果在监视电路110内的处理是在线执行的,则该处理可能向每个事务增加过多的开销。为此,入口电路105可以在将消息发送到出口电路170之前将消息复制到监视电路110。在这种情况下,监视电路110可以包括缓冲元件以缓冲要被处理的请求。在实施例中,甚至可以考虑丢弃请求中的一些。
21.图1中的插图示出了遥测规则存储装置114中的示例条目。如所示的,每个条目可以包括多个字段,包括id字段115、间隔字段116、地址范围字段117、元数据字段118和跟踪事件字段119。在实施例中,每个规则因此由以下各项定义:要被存储在id字段115中的唯一id,其由监视控制电路112指派并作为该调用的一部分返回;被存储在间隔字段116中的间隔的列表,其断言(assert)规则以及与该规则相关联的度量(例如,这可以为每秒[10,30]千兆字节(gbs)或[100,n]纳秒(ns)的时延);被存储在地址字段117中的要由该流程监视的地址范围的列表(在这种情况下,仅与这些范围匹配的请求适用于该间隔);如被存储在字段118中的要监视的源、目的地和协议,以及被存储在跟踪事件字段119中的跟踪事件信息。在实施例中,源和目的地两者可以由平台id和进程地址空间id(pasid)或任何其他字段(其作为可以用于标识该请求的源和目标的请求的一部分)来定义。跟踪事件信息可以用于标识规则是开始跟踪该流、停止跟踪该流还是不做任何关于跟踪该流的事情。在实施例中,接口111还可以(例如,使用规则的对应的标识符,该标识符可以是通用唯一id(uuid))实现对遥测规则存储装置114内的任何现有规则的更新或删除。
[0022]
另外地,监视电路110被配置为至少部分地基于被存储在遥测规则存储装置114中的遥测规则来执行关于通过交换机100的业务的监视。为此,监视电路100可以将关于来自流的多个源的业务的遥测信息维持在例如监视电路100内的监视存储装置或耦合到监视电路100的监视存储装置中,这些流适合被存储在遥测规则存储装置114中的遥测规则。因为遥测信息可以采用一个或多个数据集的形式,所以遥测信息这些部分可以提供给各种请求者,例如,与回调有关的各种请求者。
[0023]
如图1中进一步示出的,监视电路110耦合到跟踪电路120。在本文的实施例中,当监视电路110确定给定分组受制于跟踪事件时(例如,如基于遥测规则存储装置114中存在的一个或多个规则确定的),监视电路110可以将分组发送到跟踪电路120以进行处理。尽管实施例在这方面不受限制,但是这种跟踪事件可以包括跟踪开始或跟踪停止等。另外地,基于监视控制电路112中的处理,还可以将一个或多个数据集发送到跟踪电路120。
[0024]
跟踪电路120可以被配置为生成可以由连接到交换机100的不同的经认证的软件栈或元件在任何时间访问的跟踪。要理解的是,虽然跟踪电路120被示为被包括在交换机100内部,但在其他实施例中,跟踪电路可以是连接到交换机本身的另一分立设备。
[0025]
如所示的,跟踪电路120包括访问接口电路122,该访问接口电路122可以将跟踪事件和/或数据集定向到跟踪电路120内的适当的目的地。为此,访问接口电路122可以提供允许访问存储在交换机100中的现有跟踪数据的接口。为此,跟踪电路120可以包括一个或多个存储装置130以存储各种跟踪信息。在环境中,存储装置130可以被分为多个独立的存储装置,每个独立的存储装置与一种类型的跟踪数据相关联。在图1中示出的实施例中,这样的存储装置可以包括温存储装置(warm storage)132、冷存储装置(cold storage)134和热存储装置(hot storage)136。
[0026]
作为示例,访问接口电路122可以提供关于以下各项的信息:要被访问的数据的类型(例如,温、冷和热);时间戳或范围;以及访问时删除(delete on access)能力。在实施例中,可以使用热跟踪来生成更多汇总数据(因此具有更少的覆盖区(footprint),但可以被快速访问)。进而,温跟踪可以具有更多细节并且被较慢地访问,而冷跟踪更接近(或者是)来自监视电路110的原始数据。注意,在实施例中可以存在多于三个级别。访问接口电路122还可以实现对可以在计算元件或加速器140上运行的一组二进制数或位流150的注册,以处理来自监视电路110的数据。除了用于执行关于消息流的跟踪和数据集处理的这样的位流或二进制数之外,可以提供附加的相关位流160。在实施例中,相关位流160可以在给定的计算元件/加速器142上执行,以将从给定的源接收到的信息与监视数据信息相关,从而将给定源内的活动与通过交换机100的业务流相关。要理解的是,虽然在图1的实施例中以这种高级别示出,但是许多变型和替代方案是可能的。
[0027]
例如,可以为预处理后的跟踪数据提供替代的存储位置,例如,用于存储该信息的一个或多个外部存储装置。现在参考图2,示出了根据实施例的系统的框图。如图2中示出的,在可以是边缘装置、数据中心架构等的一部分的系统200中,交换机100被示为耦合到主机220和多个设备210、230和240。如所示的,设备230可以用作包括用于存储遥测信息的存储器235的主机或另一设备。如所示的,该信息可以经由cxl.mem通信协议发送到设备230。进而,设备240可以用作包括用于存储遥测信息的介质245的主机或另一设备。在不同情况下,介质存储装置(存储器或存储装置)可以托管在交换机100中。要理解的是,一个或潜在
的多个基于介质存储装置的块类型的范围可以被包括在这些存储装置中。在某些情况下,跟踪可以以循环方式针对存储器范围被存储。如果分配的空间存在任何溢出,则可以提供对管理栈的中断或回调。
[0028]
利用如图2中的布置,被暴露在一个或多个设备或主机中的一个或潜在的多个存储器范围可以存储跟踪数据。以这种方式,特定主机或设备可以请求来自交换机100的特定遥测进入它们可以访问的本地地址空间。
[0029]
在图2的实施例中,一个或多个主机或设备可以包括允许某些或所有主机和设备将遥测信息推送到交换机100中的带外信道(特定通道或经认证的信道)。以这种方式,实施例可以实现来自主机/设备的该业务与cxl业务之间的相关方案。为此,交换机100可以经由相关位流160执行主机/设备中的活动与交换机100中接收到的业务之间的相关。作为示例,相关位流160可以包括各种模型,例如,主成分分析(pca)、markovian等。
[0030]
现在参考图3,示出了根据实施例的方法的流程图。更具体地,图3的方法300是用于利用针对给定实体的遥测规则来配置监视电路的方法。作为示例,根据实施例,该实体可以是耦合到包括监视电路的交换机的设备、平台或其他硬件。因此,方法300可以由硬件电路、固件、软件和/或其组合来执行。
[0031]
方法300开始于接收来自监视电路中的实体的监视配置请求(框310)。在实施例中,可以经由cxl链路接收该请求,并且更具体地,该请求可以是根据cxl.io通信协议的。在任何情况下,接下来在菱形320处确定该实体是否被授权用于监视。在一个示例中,监视电路可以被配置具有权限列表,以指示可以向监视电路提供遥测规则的实体。如果该实体没有被授权用于监视,则控制被传递到块330,在块330处可以丢弃请求。
[0032]
仍然参考图3,接下来假设实体被授权用于监视,控制被传递到框340,在框340处,可以插入遥测规则。更具体地,可以将该遥测规则插入到遥测规则表的条目中。这种表可以存储在监视电路的存储装置中或存储在耦合到监视电路的另一电路中。该条目可以包括各种字段中的信息,例如,如上面图1中示出的字段。为了使请求实体此后能够发送与该遥测规则相关联的信息,交换机可以将遥测规则的标识符发送到请求实体(框350)。此时,监视电路被适当地配置为监视来自请求实体的传入通信,并且因此,方法300可以结束。并且如果实体未被授权,则可以在框330处丢弃请求。要理解的是,虽然在图3的实施例中以这种高级别示出,但是许多变型和替代方案是可能的。
[0033]
现在参考图4,示出了根据另一实施例的方法的流程图。更具体地,图4的方法400是根据实施例的用于操作监视电路以基于遥测规则来处理传入事务请求的方法。因此,方法400可以由硬件电路、固件、软件和/或其组合来执行。
[0034]
如所示的,方法400开始于接收监视电路中的事务请求(框410)。在实施例中,可以从耦合到交换机的给定设备或主机接收这样的请求。要理解的是,该事务请求是来自设备的,该设备具有在监视电路内请求的至少一个遥测规则。因此,接下来在菱形420处,监视电路可以确定事务请求是否在要被监视的间隔内。该确定可以基于至少一个遥测规则中的信息和请求本身。如果事务请求在要被监视的间隔内,则控制接下来被传递到菱形430,在菱形430处,监视电路可以确定事务请求是否在要被监视的地址范围内。如果事务请求在要被监视的地址范围内,则控制接下来被传递到菱形440,在菱形440处,监视电路可以确定事务请求是否针对要被监视的源/目的地组合。如果事务请求不在所有要被监视的间隔、地址范
围和源/目的地组合内,则不进行进一步的操作。
[0035]
当确定事务请求是要针对其发生监视的事务请求时,监视电路可以监视关于该事务请求的活动并维护(例如,关于带宽、高速缓存时延等的)遥测信息。因此,在框445处,监视电路可以基于事务请求来更新监视数据。例如,可以递增一个或多个计数器、更新定时器等等。
[0036]
仍然参考图4,控制接下来从框445被传递到菱形450,以确定回调是否是针对该事务请求的。作为一个示例,如果给定的监视数据超过(或低于)在遥测规则中指定的阈值,则可以指示回调。如果回调是针对该事务请求的,则在框460处,可以将回调与监视数据一起发送。因此,方法400可以结束。否则,如果回调不是为此目的,则接下来可以确定是否要发生针对该事务请求的跟踪(菱形470)。如果要发生针对该事务请求的跟踪,则控制被传递到框480,在框480处,可以将跟踪请求从监视电路发送到跟踪电路。因此,该事务请求可以在跟踪电路内经历跟踪。要理解的是,虽然在图4的实施例中以这种高级别示出,但是许多变型和替代方案是可能的。例如,虽然图4示出了其中基于请求启动(或终止)跟踪操作的事务请求来进行关于跟踪活动的确定的实现方式,但是在其他情况下,该跟踪活动可以响应于遥测规则中的信息而发生。作为一个示例,基于给定的遥测规则,跟踪活动可以响应于而回调而发生。
[0037]
现在参考图5,示出了根据又一实施例的方法的流程图。更具体地,图5的方法500是根据实施例的用于在跟踪电路中执行跟踪的方法。因此,方法500可以由硬件电路、固件、软件和/或其组合来执行。
[0038]
如图5中示出的,方法500开始于在监视电路中接收来自跟踪电路的跟踪请求(框510)。接下来,控制被传递到框520,在框520处,可以基于跟踪请求来标识跟踪的类型。在这方面,监视电路可以标识特定类型的跟踪请求,例如,该跟踪请求是热跟踪操作、温跟踪操作或冷跟踪操作中的一个。然后在框530处,跟踪电路可以将跟踪请求定向到选定的计算元件。更具体地,基于跟踪请求的类型,跟踪电路可以将跟踪请求定向到多个计算元件/加速器中的给定一个,这些计算元件/加速器已经利用对应的位流或二进制数被编程以处理特定跟踪请求。然后,在框540处,该计算元件/加速器可以预处理遥测数据。最后,在框550处,遥测数据可以存储在选定的存储介质中。该存储装置可以被包括在跟踪电路本身内、被包括在包括跟踪电路的交换机内、或被包括在耦合到具有存储介质的交换机的设备内。要理解的是,虽然在图5的实施例中以这种高级别示出,但是许多变型和替代方案是可能的。
[0039]
现在参考图6,示出了根据实施例的系统的框图。如图6中示出的,系统600可以是数据中心架构的一部分,该数据中心架构包括大量服务器、存储设备、加速器、经池化的存储器以及许多其他这种组件。在图6中示出的高级别中,示出了根据实施例的包括交换机630的虚拟边缘装置620。
[0040]
作为一个示例,边缘装置620可以提供以边缘云基站为中心的工作负载。可以根据工作流610接收这样的工作负载,如所示的,该工作流610是基于功能的实时服务边缘工作流。如看到的,可以从多个虚拟网络功能(vnf)(即,相应的功能vnf1和vnf3)接收进入工作流610的传入业务。进而,通过这些vnf的业务通过本地分汇(breakout)和异步服务2-4。进而,所得到的工作流通过独立的服务1和服务2以及附加的vnf(vnf2)回到用户。
[0041]
注意,工作流610可以在虚拟边缘装置620内执行。如所示的,可以经由交换机630
接收传入业务。可以使用本文的实施例来监视和跟踪该业务。基于业务和给定的工作流,注意,各种网络功能和服务可以在平台640、图形引擎650、集成网络接口电路660和经池化的存储器670中的一个或多个中执行。如所示的,装置620包括除了交换机630之外的组件。平台640作为边缘装置620内的一个或多个这样的平台的代表。在实施例中,平台640可以包括多个处理器(其中的每一个可以被实现为多核心处理器)和系统存储器(例如,由双倍数据速率存储器组成的系统存储器)以及其他这种组件。在实施例中,还耦合到交换机630的图形引擎650可以被实现为单独的图形卡。图形引擎650可以包括图形处理器或其他加速器来执行专门的功能。如所示的,图形引擎650还可以包括ddr存储器。智能网络接口电路660也耦合到交换机630。在实施例中,inic 660可以包括高带宽存储器以及其他组件。最后,如图6中示出的,经池化的存储器670也耦合到交换机630。在实施例中,经池化的存储器670可以利用ddr存储器来实现,并且可以存储来自支持其他服务的各种vnf的传入有效载荷或数据单元,这些传入有效载荷或数据单元可以被存储在不同的队列中。进而,这种信息可以提供给其他vnf存储服务以进一步处理这种信息。
[0042]
利用本文的实施例,边缘装置620可以提供多租户并且可以以高负载可变性操作,或者执行各种基于功能的服务。还将如本文所描述的,在交换机630内实现监视和跟踪,可以针对这些不同服务维护各种服务质量度量,以确保符合sla和其他要求,例如,弹性要求。
[0043]
利用图6中的布置,实施例可以使用通过交换机630的经池化的资源来高效且灵活地连接多个vnf和服务。在该上下文中,边缘装置620实现跨多个边缘云实体的灵活的数据移动和共享。边缘装置620因此是可以执行各种功能和/或服务的灵活的架构。作为示例,装置620可以将有效载荷或数据单元(例如,分组)从一个vnf或服务推送到经池化的存储器670到队列,该队列旨在供另一特定vnf或服务或vnf或服务或vnf类型(例如,防火墙分组)消耗。另外地,边缘装置620可以根据特定vnf或服务的请求从经池化的存储器670中拉取(pull)有效载荷或数据单元。例如,vnf可以寻求访问其存储器或存储装置的池以取回已经针对其推送的数据。可替代地,vnf或服务可以从通用队列类型中拉取(例如,拉取旨在由防火墙vnf消耗的任何有效载荷或数据单元)。
[0044]
边缘装置620可以被实现为虚拟边缘平台,其中交换机630连接加速器、计算和存储装置以取决于服务链要求动态地创建(并且按比例放大和缩小)平台。该拓扑可以包括订户级别协议(sla)以及拓扑的不同部分之间的弹性要求。由此,租户可能要求拓扑的两个点之间的特定带宽和特定的弹性(例如,将数据复制到两个不同的经池化的存储器抽屉)。
[0045]
利用在交换机630或其他硬件中实现监视和跟踪的实施例,提供了用于监视和验证与由租户支付的功能相关联的sla的机制。以这种方式,云服务提供商和/或其租户可以使用这些机制来理解针对各种功能的资源利用和sla行为。并且用户和系统所有者可以理解和标识这种编程范式的潜在脆弱性(glass-jaws)。
[0046]
利用实施例,可以提供监视和/或跟踪信息以实现对i/o池化或基于cxl的类型的架构在多租户和基于功能的架构下如何表现的理解。这种信息可以实现对实时复杂流(例如,cxl.io/mem/cache)的高效监视,该实时复杂流可以跨来自共享结构的不同服务链的数千个功能发生。
[0047]
现在参考图7,示出了根据实施例的数据中心架构的一部分的框图。如图7中示出的,系统700可以是被实现为数据中心的一个或多个服务器的组件的集合。如所示的,系统
700包括交换机710,例如,根据实施例的cxl交换机。通过用作结构的交换机710的方式,各种组件包括:一个或多个中央处理单元(cpu)720、760;一个或多个特殊功能单元,例如,图形处理单元(gpu)740、750;以及网络接口电路(nic)730,这些组件可以彼此通信。更具体地,这些设备中的每一个可以被实现为一个或多个集成电路,提供对经由多个cxl通信协议中的一个与其他设备中的其他功能进行通信的功能的执行。例如,cpu 720可以经由cxl.io通信协议与nic 730通信。进而,cpu 720、760可以经由cxl.mem通信协议与gpu 740、750通信。并且,作为示例,可以经由cxl.cache通信协议进行cpu 720、760的彼此通信以及从cpu 760到gpu 750的通信。
[0048]
使用根据具有监视电路712和跟踪电路714的实施例的交换机710,可以将接口暴露给各种平台和组件以指定高级监视规则。这些规则实现:(1)当确定的条件发生时,生成对特定软件或硬件实例的自动回调;和/或(2)例如,当先前的回调中的一些被激活时,激活针对某些流的高级事件跟踪。
[0049]
例如,参考图7,假设在相应的设备(720(a)、730(b)、740(c)、750(d)和760(e))中利用功能链(s1、s2、s4和s4)实现的服务使用上面讨论的流程,表示如下:a到b cxl.io;a到d、c cxl.mem/e到c、d cxl.mem;a到e cxl.cache/e到d cxl.cache。利用实施例,服务s1和s2可以注册表1中示出的以下规则。
[0050]
表1
[0051][0052][0053]
利用这种布置并根据以上示例,在其上执行功能和/或服务的一个或多个设备可以发送遥测规则注册请求以供在交换机中接收。进而,交换机可以在遥测规则数据库中存储针对遥测规则注册请求中的每一个的遥测规则。然后,在包括用于这些功能/服务的一个或多个流的系统的执行期间,交换机可以经由监视电路来监视通过交换机的业务并且维护与该业务相关联的遥测信息,该交换机与在设备中的至少一些设备上执行的这些功能/服务相关联。
[0054]
然后,响应于遥测信息与第一设备相关联并且基于针对第一设备的第一遥测规则,交换机可以经由监视电路向第一设备发送回调消息,该回调消息包括遥测信息中的与
第一设备相关联的至少一些遥测信息。
[0055]
而且,在某些情况下,例如表1中示出的,响应于针对第一设备的第一遥测规则,交换机的监视电路可以向交换机的跟踪电路发送跟踪请求,以使得跟踪电路跟踪第一设备与第二设备之间的消息业务。当然,其他示例也是可能的。例如,如表1中进一步示出的,可以基于某些被监视的信息(例如,高速缓存时延度量、存储器带宽度量等)与一个或多个阈值的比较,来实现用于将监视数据中的至少一些发送到一个或多个服务/功能的回调,并且不实现跟踪。并且,同样可以针对一个或多个服务/功能发起跟踪以跟踪消息或其他通信,而不会发生回调。
[0056]
因此,实施例提供了用于跟踪sla的非常灵活且高级的机制、对复杂流如何表现的理解、以可扩展的方式的监视,并且允许在不干扰服务性能的情况下标识脆弱性、潜在的错误或甚至潜在的攻击。因此,可以取决于软件栈的要求来应用不同级别的智能跟踪方案。并且因此,实施例在基于功能的平台和边缘平台(特别是在基于云的架构)中实现细粒度的监视能力。
[0057]
现在参考图8,示出了根据本发明的另一实施例的系统的框图。如图8中示出的,系统800可以是任何类型的计算设备,并且在一个实施例中,系统800可以是诸如边缘平台之类的服务器系统。在图8的实施例中,系统800包括多个cpu 810a、810b,cpu 810a、810b进而耦合到相应的系统存储器820a、820b,在实施例中,系统存储器820a、820b可以被实现为双倍数据速率(ddr)存储器。注意,cpu 810可以通过互连系统815(例如,ultra path interconnect或其他处理器互连技术)耦合在一起。
[0058]
为了使相干加速器设备和/或智能适配器设备能够通过潜在的多个通信协议的方式耦合到cpu 810,可以存在多个互连830a1-b2。在实施例中,每个互连830可以是cxl的给定实例。
[0059]
在所示的实施例中,相应的cpu 810耦合到对应的现场可编程门阵列(fpga)/加速器设备850a、850b(在一个实施例中,其可以包括图形处理单元(gpu))。另外地,cpu 810还耦合到智能nic设备860a、860b。进而,智能nic设备860a、860b耦合到交换机880a、880b(例如,根据实施例的cxl交换机),交换机880a、880b进而耦合到经池化的存储器890a、890b,例如,持久性存储器。利用如图8中的布置,cpu 810可以将某些工作负载(例如,图形工作负载)定向到设备850以对传入信息执行处理,该设备850将处理后的信息存储在经池化的存储器890中。进而,cpu 810或其他实体可以访问和进一步处理来自经池化的存储器890的该信息。并且,当这样的流继续通过交换机880时,可以发生细粒度的监视和跟踪,如本文所描述的。
[0060]
接下来转向图9,描绘了根据实施例的soc设计的实施例。作为特定的说明性示例,soc 900可以被配置用于插入任何类型的计算设备中,计算设备的范围从便携式设备到服务器系统。这里,soc 700包括2个核心906和907。核心906和907可以符合指令集架构,例如,基于architecture core
tm
的处理器、advanced micro devices公司(amd)的处理器、基于mips的处理器、基于arm的处理器设计或其客户,以及他们的被许可人或采用者。核心906和907耦合到与总线接口单元909和l2高速缓存910相关联的高速缓存控制器908,以经由互连912与系统900的其他部分进行通信。如看出的,总线接口单元909包括dma电路911,该dma电路911被配置为发送写入请求。
[0061]
互连912向其他组件提供通信信道,这些组件例如:用于与sim卡接合的订户身份模块(sim)930、用于保持引导代码以供核心906和907执行以初始化和引导soc 900的引导rom 935、用于与外部存储器(例如,dram 960)接合的sdram控制器940、用于与非易失性存储器(例如,闪存965)接合的闪存控制器945、用于与外围设备接合的外围控制器950(例如,espi接口)、用于显示和接收输入(例如,启用触摸的输入)的视频编解码器920和视频接口925、用于执行与图形相关的计算的gpu 915等等。另外地,系统示出了用于通信的外围设备,例如,蓝牙模块970、3g调制解调器975、gps 980和wifi 985。系统中还包括功率控制器955。如图9中进一步示出的,系统900可以另外地包括多个接口,包括例如到显示器的mipi接口992和/或也可以耦合到相同或不同的显示器的hdmi接口995。
[0062]
现在参考图10,示出了根据本发明另一实施例的系统(例如,边缘平台)的框图。如图10中示出的,多处理器系统1000包括经由点对点互连1050耦合的第一处理器1070和第二处理器1080。如图10中示出的,处理器1070和1080中的每一个可以是许多核心处理器,其包括代表性的第一处理器核心和第二处理器核心(即,处理器核心1074a和1074b以及处理器核心1084a和1084b)。
[0063]
在图10的实施例中,处理器1070和1080还包括点对点互连1077和1087,它们通过互连1042和1044(其可以是cxl总线)耦合到交换机1059和1060,交换机1059和1060可以执行如本文所描述的细粒度监视和跟踪。进而,交换机1059、1060耦合到经池化的存储器1055和1065。以这种方式,交换机1059、1060可以基于由例如处理器1070和1080提供的遥测规则,以细粒度方式执行对业务的监视和跟踪,如本文所描述的。
[0064]
仍然参考图10,第一处理器1070还包括存储器控制器中心(mch)1072和点对点(p-p)接口1076和1078。类似地,第二处理器1080包括mch 1082和p-p接口1086和1088。如图10中示出的,mch 1072和1082将处理器耦合到相应的存储器,即,存储器1032和存储器1034,存储器1032和存储器1034可以是本地附接到相应的处理器的系统存储器(例如,dram)的部分。第一处理器1070和第二处理器1080可以分别经由p-p互连1076和1086耦合到芯片组1090。如图10中示出的,芯片组1090包括p-p接口1094和1098。
[0065]
此外,芯片组1090包括接口1092以通过p-p互连1039将芯片组1090与高性能图形引擎1038耦合。如图10中示出的,各种输入/输出(i/o)设备1014可以与总线桥1018一起耦合到第一总线1016,该总线桥1018将第一总线1016耦合到第二总线1020。在一个实施例中,可以耦合到第二总线1020的各种设备包括例如键盘/鼠标1022、通信设备1026和数据存储单元1028,例如,可以包括代码1030的磁盘驱动器或其他大容量存储设备。此外,音频i/o 824可以耦合到第二总线1020。
[0066]
如本文所描述的实施例可以用于多种网络架构。为此,在给定边缘设备与数据中心之间耦合的联网架构中的许多不同类型的计算平台可以执行本文所描述的细粒度监视和跟踪。现在参考图11,示出了根据本发明另一实施例的网络架构的框图。如图11中示出的,网络架构1100包括各种计算平台,这些计算平台可以位于非常广阔的区域中,并且在与不同设备通信时具有不同的时延。
[0067]
在图11的高级别视图中,网络架构1100包括代表性设备1110,例如,智能电话。该设备可以经由不同的无线电接入网络(ran)(包括ran 1120和ran 1130)进行通信。ran 1120进而可以耦合到平台1125,该平台1125可以是边缘平台(例如,雾/远/近边缘平台)并
且可以利用本文的实施例。其他请求可以由耦合到ran 1130的远边缘平台1135处理,该远边缘平台1135也可以利用实施例。
[0068]
如图11中进一步示出的,另一近边缘平台1140可以耦合到ran 1120、1130。注意,该近边缘平台可以位于更靠近数据中心1150的位置,该数据中心1150可以具有大量计算资源。通过将消息推送到这些更远程的平台,在代表边缘设备1110处理请求时会产生更大的时延。应理解的是,图11中示出的所有平台可以结合如本文所描述的实施例以执行对不同流的细粒度监视和跟踪。
[0069]
以下示例涉及进一步的实施例。
[0070]
在一个示例中,一种装置包括:监视电路,其用于监视通过装置的多个源的业务,并且至少部分地基于从多个源接收到的遥测规则来维护关于业务的遥测信息,其中,监视电路用于确定是否将回调消息发送到多个源中的选定的一个源,回调消息包括与通过装置的选定的源的业务相关联的遥测信息;以及存储装置,其耦合到监视电路,该存储装置用于存储遥测信息,其中,监视电路用于访问来自存储装置的遥测信息。
[0071]
在示例中,装置还包括:遥测规则存储装置,该遥测规则存储装置包括多个条目,多个条目中的每一个用于存储与源相关联的标识符、监视规则元数据和跟踪事件信息。
[0072]
在示例中,监视电路用于访问遥测规则存储装置中的与选定的源相关联的第一条目,以确定是否发送回调消息。
[0073]
在示例中,装置还包括:跟踪电路,其用于响应于来自监视电路的跟踪请求而跟踪来自选定的源的第一业务流。
[0074]
在示例中,监视电路用于基于第一条目中的跟踪事件信息并且进一步响应于确定发送回调消息而发送跟踪请求。
[0075]
在示例中,跟踪电路用于响应于跟踪请求而跟踪从选定的源到第一目的地的多个消息。
[0076]
在示例中,跟踪电路包括:一个或多个处理电路,其用于执行一个或多个位流以跟踪第一业务流。
[0077]
在示例中,跟踪电路包括:一个或多个处理电路,其用于执行相关位流以将第一业务流与从选定的源接收到的源遥测信息相关。
[0078]
在示例中,监视电路用于基于遥测规则存储装置中的与选定的源相关联的第一条目来监视选定的源到第一目的地的业务,并且不监视选定的源到第二目的地的业务。
[0079]
在示例中,装置包括:交换机,其经由多个链路耦合到多个源,其中,交换机用于经由多个链路中的对应一个链路接收来自选定的源的多个通信协议的业务。
[0080]
在另一示例中,一种方法包括:在耦合到多个设备的交换机中接收来自多个设备中的至少一些设备的遥测规则注册请求;将针对遥测规则注册请求中的每一个的遥测规则存储在遥测规则数据库中;监视通过交换机的业务并且维护关于业务的遥测信息,该交换机与多个设备中的至少一些设备相关联;并且响应于与第一设备相关联的遥测信息并且基于针对第一设备的第一遥测规则,向第一设备发送回调消息,该回调消息包括遥测信息中的与第一设备相关联的至少一些遥测信息。
[0081]
在示例中,方法还包括:响应于针对第一设备的第一遥测规则,向交换机的跟踪电路发送跟踪请求,以使得跟踪电路跟踪第一设备与第二设备之间的消息业务。
[0082]
在示例中,方法还包括:将跟踪信息发送到耦合到交换机的遥测服务器,该跟踪信息与第一设备与第二设备之间的消息业务相关联。
[0083]
在示例中,方法还包括:基于第一遥测规则,监视来自第一设备的通过交换机的第一通信协议的业务,并且不监视来自第一设备的通过交换机的第二通信协议的业务。
[0084]
在示例中,方法还包括:将第一通信协议的业务从第一设备路由到耦合到交换机的第二设备;以及将第二通信协议的业务从第一设备路由到耦合到交换机的第三设备。
[0085]
在另一示例中,包括指令的计算机可读介质用于执行上述示例中的任一个的方法。
[0086]
在另一示例中,包括数据的计算机可读介质要由至少一台机器使用来制造至少一个集成电路以执行上述示例中的任一个的方法。
[0087]
在另一示例中,一种装置包括用于执行上述示例中的任一个的方法的单元。
[0088]
在又一示例中,边缘系统包括:平台,其具有至少一个处理器和至少一个系统存储器,其中,至少一个处理器用于执行第一功能;交换机,其耦合到平台;以及经池化的存储器,其耦合到交换机,其中,经池化的存储器用于存储第一功能的第一有效载荷。在示例中,交换机包括:监视电路,其用于监视多个功能的业务,并且至少部分地基于从多个功能接收到的遥测规则来维护关于业务的遥测信息,其中,监视电路用于确定是否将回调消息发送到多个功能中的选定的一个功能,回调消息包括与选定的功能的业务相关联的遥测信息;以及存储装置,其耦合到监视电路,该存储装置用于存储遥测信息,其中,监视电路用于访问来自存储装置的遥测信息。
[0089]
在示例中,边缘系统还包括:耦合到交换机的加速器,该加速器用于接收第一有效载荷并且对第一有效载荷执行至少一个操作。
[0090]
在示例中,交换机用于进行以下操作:将第一有效载荷从第一功能推送到经池化的存储器;以及拉取第一有效载荷,并且将第一有效载荷发送到加速器。
[0091]
在示例中,交换机还包括:跟踪电路,其用于响应于来自监视电路的跟踪请求而跟踪来自第一功能的第一业务流,监视电路用于基于第一条目中的跟踪事件信息并且进一步响应于确定发送回调消息而发送跟踪请求。
[0092]
在示例中,跟踪电路用于响应于跟踪请求而跟踪从第一功能到经池化的存储器的第一业务流的多个消息,跟踪电路包括:一个或多个处理电路,其用于执行一个或多个位流以跟踪第一业务流。
[0093]
要理解的是,上述示例的各种组合是可能的。
[0094]
注意,术语“电路”和“电路系统(circuitry)”在本文中可互换地使用。如本文所使用的,这些术语和术语“逻辑”用于单独地或以任何组合指代模拟电路、数字电路、硬连线电路、可编程电路、处理器电路、微控制器电路、硬件逻辑电路、状态机电路和/或任何其他类型的物理硬件组件。实施例可以在许多不同类型的系统中使用。例如,在一个实施例中,通信设备可以被布置为执行本文所描述的各种方法和技术。当然,本发明的范围不限于通信设备,而是其他实施例可以针对用于处理指令的其他类型的装置,或者包括指令一个或多个机器可读介质,响应于指令在计算设备上执行,使该设备执行本文所描述的方法和技术中的一种或多种。
[0095]
实施例可以以代码实现并且可以被存储在其上存储有指令的非暂时性存储介质
上,该指令可以用于对系统进行编程以执行指令。实施例还可以以数据实现并且可以被存储在非暂时性存储介质上,该数据如果由至少一台机器使用,则使该至少一台机器制造至少一个集成电路以执行一个或多个操作。更进一步的实施例可以以包括信息的计算机可读存储介质实现,该信息当被制造到soc或其他处理器中时,用于配置soc或其他处理器以执行一个或多个操作。存储介质可以包括但不限于任何类型的磁盘,包括软盘、光盘、固态驱动器(ssd)、压缩盘只读存储器(cd-rom)、可重写压缩盘(cd-rw)、以及磁光盘、诸如只读存储器(rom)之类的半导体器件、诸如动态随机存取存储器(dram)之类的随机存取存储器(ram)、静态随机存取存储器(sram)、可擦除可编程只读存储器(eprom)、闪速存储器、电可擦除可编程只读存储器(eeprom)、磁卡或光卡或适合存储电子指令的任何其他类型的介质。
[0096]
尽管已经关于有限数量的实施例描述了本发明,但是本领域技术人员将认识到由此得出的许多修改和变型。所附权利要求书旨在涵盖落入本发明的真实精神和范围内的所有这种修改和变型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献