处理系统、操作处理系统的方法和计算机可读存储介质技术方案

技术编号:36974563 阅读:11 留言:0更新日期:2023-03-25 17:54
公开一种处理系统、操作处理系统的方法和计算机可读存储介质。该系统包括:至少一个外部存储器;和耦合到外部存储器的至少一个通用图形处理器,每个通用图形处理器具有一个核、耦合到核的高速缓存和耦合到核的本地存储器,在一段时间内,当通用图形处理器的本地存储器中的第一数据被访问次数小于阈值时,通用图形处理器将第一数据从通用图形处理器的本地存储器移到外部存储器,以及当外部存储器中的第二数据在该段时间内被访问次数超过阈值时,将第二数据从外部存储器移到通用图形处理器的本地存储器。通过将不常访问的数据从访问速度较快的存储器移到访问速度较慢的存储器中,从而可以提高访问速度较快的存储器的最大容量。而可以提高访问速度较快的存储器的最大容量。而可以提高访问速度较快的存储器的最大容量。

【技术实现步骤摘要】
处理系统、操作处理系统的方法和计算机可读存储介质


[0001]本专利技术涉及一种处理系统,更具体地说,涉及一种处理系统、操作处理系统的方法和计算机可读存储介质。

技术介绍

[0002]图形处理器(GPU)是一种知名的、执行必要的计算以向帧缓冲区填充数据的设备,其中,帧缓冲区又用于在屏幕上显示图像。中央处理器(CPU)将向帧缓冲区填充数据这种计算密集型的任务交付给图形处理器,从而释放中央处理器以及时执行其他任务。
[0003]通用图形处理器(GPGPU)是图形处理器(GPU)的扩展,通用图形处理器可编程实现其他非图形处理的计算密集型操作。在人工智能(AI)和机器学习的应用中,中央处理器(CPU)通常与多个并行执行卷积操作的通用图形处理器(例如100GPGPU)配对使用。
[0004]通用图形处理器包括一个处理器和一个耦合到处理器的存储器(memory)。对于许多人工智能和机器学习的应用来说,容量大、访问速度快的存储器是必需的,因此,当通用图形处理器用于人工智能和机器学习时,通常使用以容量大、访问速度快而闻名的高带宽存储器(HBM)作为通用图形处理器的存储器。
[0005]典型的HBM包括若干个动态随机存取存储器(DRAM)晶粒,这些晶粒在彼此的顶部垂直堆叠,以提供具有小尺寸规格的大存储容量,例如4GB、24GB和64GB。此外,每个DRAM晶粒包括两个128位数据通道,以提供高带宽。
[0006]但当前,通用图形处理器的一个问题是通用图形处理器的HBM事实上存在一个最大容量,该最大容量反过来限制了通用图形处理器能够及时处理的操作数量。最大容量的存在是因为将晶粒垂直堆叠在彼此的顶部变得越来越困难,从而有效地限制了通过堆叠形成HBM的晶粒数量和HBM的最大容量。此外,HBM中的每个晶粒通常采用最大十字线制造,这限制了晶粒的最大尺寸和容量。
[0007]此外,除了最大容量以外,其他存储器的全部或部分(如CPU内存的一部分)不能用作通用图形处理器的HBM的扩展,从而不能提供额外的可快速访问的存储器容量。这是因为通用图形处理器通过外围组件互连快速(PCIe)总线耦合到扩展存储器(例如CPU内存),通过PCIe总线访问数据大致比访问HBM中的数据慢100倍,对于某些人工智能和机器学习的应用而言,这速度太慢了。
[0008]因此,既然通用图形处理器内存HBM事实上具有最大容量,并且既然另一个储存器的全部或部分不能用作通用图形处理器的HBM的扩展以提供额外的可快速访问的内存容量,因此需要增加通用图形处理器中的存储器的容量。

技术实现思路

[0009]本公开提高了GPGPU模块的存储器可快速访问的最大容量。本公开提供的处理系统包括至少一个外部存储器,以及耦合到所述至少一个外部存储器的至少一个通用图形处理器。所述至少一个通用图形处理器中的每一个都具有一个核、耦合到该核的高速缓存和
耦合到该核的本地存储器。每个通用图形处理器需要第一时长访问存储在通用图形处理器的高速缓存中的数据,需要比第一时长更长的第二时长访问存储在通用图形处理器的本地存储器中的数据,需要以比第二时长更长的第三时长访问存储在至少一个外部存储器中的数据,
[0010]在一段时间内,当通用图形处理器的本地存储器中的某些数据被访问的次数小于阈值次数时,通用图形处理器将这些数据从通用图形处理器的本地存储器移到至少一个外部存储器,以及当至少一个外部存储器中的某些数据在该段时间内被访问超过阈值次数时,将这些数据从至少一个外部存储器移到通用图形处理器的本地存储器,每个外部存储器仅用于存储要在通用图形处理器执行的程序指令和数据。
[0011]本公开还包括一种操作处理系统的方法。该方法包括需要第一时长访问存储在通用图形处理器的高速缓存中的数据,需要比第一时长更长的第二时长访问存储在通用图形处理器的本地存储器中的数据,需要以比第二时长更长的第三时长访问存储在至少一个外部存储器中的数据,
[0012]该方法还包括:在一段时间内,当通用图形处理器的本地存储器中的某些数据被访问次数小于阈值时,将这些数据从通用图形处理器的本地存储器移到外部存储器,以及当外部存储器中的某些数据在该时间段内被访问次数超过阈值时,将这些数据从外部存储器移到通用图形处理器的本地存储器。每个外部存储器仅用于存储要在通用图形处理器执行的程序指令和数据。
[0013]本专利技术还包括一种非暂时性计算机可读存储介质,该存储介质中嵌入有程序指令,该程序指令当由设备的一个或多个处理器执行时,该程序指令使设备执行操作处理系统的方法。
[0014]该方法包括需要第一时长访问存储在通用图形处理器的高速缓存中的数据,需要比第一时长更长的第二时长访问存储在通用图形处理器的本地存储器中的数据,需要以比第二时长更长的第三时长访问存储在至少一个外部存储器中的数据,
[0015]该方法还包括:在一段时间内,当通用图形处理器的本地存储器中的某些数据被访问次数小于阈值时,将这些数据从通用图形处理器的本地存储器移到外部存储器,以及当外部存储器中的某些数据在该时间段内被访问次数超过阈值时,将这些数据从外部存储器移到通用图形处理器的本地存储器。每个外部存储器仅用于存储要在通用图形处理器执行的程序指令和数据。
[0016]通过参考下面的详细描述和附图,将更好理解本专利技术的特征和优点,这些详细描述和附图描述了应用本专利技术原理的示例性实施例。
附图说明
[0017]本申请的附图用于进一步理解本申请,并构成本申请的一部分。本申请的示例性实施例及其描述用于解释本申请,并不构成对本申请的限制。
[0018]图1是本公开提供的处理系统100的示例性框图。
[0019]图2是本公开提供的通用图形处理器(GPGPU)模块200的示例性框图。
[0020]图3是本公开提供的外部存储器(SMX)模块300的示例性方框。
[0021]图4是本公开提供的用于说明配置处理系统100的方法400的示例性流程图。
[0022]图5是本公开提供的用于说明对处理系统100的存储器进行分区和分配的示例性框图。
[0023]图6是本公开提供的操作通用图形处理器的方法600的示例性流程图。
[0024]图7是本公开提供的操作SMX的方法700的示例性流程图。
具体实施方式
[0025]图1是本专利技术提供的处理系统100的示例性框图。在下文中将详细描述,作为需要容量大且访问速度快的存储器的处理系统100,通过添加速度较慢以至于不能满足需求的存储器资源来提高高速存储器的最大容量,然后将不常访问的数据从高速存储器移到慢速存储器资源中。
[0026]如图1所示,处理系统100包括中央处理器(CPU)模块110、多个通用图形处理器(GPGPU)模块112和多个外部存储器(SMX)模块114。在本示例中,为了简单起见,示出了一个CPU模块、三个GPGPU模块和三个SMX模块。但也可以应用和任意配置其他数量的CPU模块、GPGPU模块和SMX模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理系统,包括:至少一个外部存储器;和耦合到至少一个所述外部存储器的至少一个通用图形处理器,每个所述通用图形处理器具有一个核、耦合到所述核的高速缓存和耦合到所述核的本地存储器,所述通用图形处理器需要第一时长来访问存储在所述通用图形处理器的高速缓存中的数据,需要比第一时长更长的第二时长来访问存储在所述通用图形处理器的本地存储器中的数据,需要以比第二时长更长的第三时长来访问存储在所述外部存储器中的数据,在一段时间内,当所述通用图形处理器的本地存储器中的第一数据被访问次数小于阈值时,所述通用图形处理器将所述第一数据从所述通用图形处理器的本地存储器移到至少一个所述外部存储器,以及当至少一个所述外部存储器中的第二数据在该段时间内被访问次数超过阈值时,将所述第二数据从至少一个所述外部存储器移到所述通用图形处理器的本地存储器,每个所述外部存储器仅用于存储要在所述通用图形处理器执行的程序指令和数据。2.根据权利要求1所述的处理系统,其中,所述外部存储器中的一个外部存储器与多个所述通用图形处理器建立映射。3.根据权利要求1所述的处理系统,其中,多个所述外部存储器与单个的所述通用图形处理器建立映射。4.根据权利要求1所述的处理系统,还包括多个直接连接,从而每个所述通用图形处理器都直接连接到至少一个所述外部存储器中的一个或多个。5.根据权利要求1所述的处理系统,其中,所述外部存储器是可分区的,从而一个或多个所述通用图形处理器被分配一个分区。6.根据权利要求1所述的处理系统,其中所述通用图形处理器用于:每次访问所述通用图形处理器的本地存储器中的存储单元时,增加第一计数器;标识在该段时间内被访问次数小于阈值的存储单元;将在该段时间内被访问次数小于阈值的存储单元从所述通用图形处理器的本地存储器移到所述外部存储器;确定所述外部存储器中的存储单元何时被访问;每次访问所述外部存储器中的存储单元时增加第二计数器;标识在该段时间内被访问次数超过阈值的存储单元;以及将在该段时间内被访问次数超过阈值的存储单元从所述外部存储器移到所述通用图形处理器的本地存储器中。7.根据权利要求1所述的处理系统,还包括耦合到至少一个所述外部存储器和至少一个所述通用图形处理器的中央处理器,所述中央处理器用于在应用被执行之前,将所述应用的第一多个程序指令加载到所述通用图形处理器的本地存储器中,并将所述应用的第二多个程序指令加载到所述外部存储器中,在所述中央处理器加载所述第一多个程序指令和所述第二多个程序指令之前,所述通用图形处理器的本地存储器和外部存储器不存储所述应用的程序指令。8.一种操作处理系统的方法,所述方法包括:需要第一时长访问存储在通用图形处理器的高速缓存中的数据,需要比第一时长更长
的第二时长访问存储在所述通用图形处理器的本地存储器中的数据,需要以比第二时长更长的第三时长访问存储在所述外部存储器中的数据;在一段时间内,当所述通用图形处理器的本地存储器中的第一数据被访问次数小于阈值时,所述通用图形处理器将所述第一数据从所述通用图形处理器的本地存储器移到至少一个所述外部存储器,以及当至少一个所述外部存储器中的第二数据在该段时间内被访问次数超过阈值时,将所述第二数据从至少一个所述外部存储器移到所述通用图形处理器的本地存储器,每个所述外部存储器仅用于存储要在所述通用图形处理器执行的程序指令和数据。9.根据权利要求8所述的...

【专利技术属性】
技术研发人员:王雨豪牛迪民关义金王圣诚李双辰郑宏忠
申请(专利权)人:平头哥上海半导体技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1