本发明涉及芯片,尤其涉及一种gpu缓存系统。
背景技术:
1、随着3d封装工艺的进步,以及静态随机存取存储器(sram)、增强动态随机存取存储器(edram)工艺的进步,图形处理器(gpu)的芯片外部或gpu封装内部可以设置有越来越大扩展存储器,提供越来越大的存储容量。例如设置在gpu芯片外部的高密度sram/edram,或者gpu内部的封装内的高带宽存储器(hbm)、异质集成嵌入式动态随机存取内存(sedram)3d静态随机存取存储器(3d sram)等。gpu芯片外部或gpu封装内的存储容量可以作为第三级高速缓冲存储器(cache)。现有技术中的gpu三级缓存架构至少存在以下缺点:
2、(1)第三级高速缓冲存储器通常设置在第二级高速缓冲存储器与gpu显存的通路之间,第二级高速缓冲存储器只能从第三级高速缓冲存储器获取数据。
3、(2)第三级高速缓冲存储器的存储容量并非越大越好,当存储容量达到一定的值之后,随着存储容量的继续增大,反而会由于控制逻辑变复杂,降低gpu的数据访问速度,降低gpu性能。且受限于物理、工艺的限制,gpu芯片外部或gpu封装内的存储容量是固定的,现有技术无法有效利用gpu芯片外部或gpu封装内的存储容量。
4、由此可知,如何有效利用gpu芯片外部或gpu封装内的存储容量,提高gpu的数据访问速度,提升gpu的性能成为亟待解决的技术问题。
技术实现思路
1、本发明目的在于,提供一种gpu缓存系统,提高了gpu的数据访问速度,提升了gpu的性能。
2、本发明提供了一种gpu缓存系统,包括gpu的m个执行单元{a1,a2,…,am,…am},am为第m个执行单元,m的取值范围为1到m;
3、所述系统还包括m个第一级gpu高速缓冲存储器{c11,c12,…,c1m,…,c1m}、第二级gpu高速缓冲存储器c2、控制单元、扩展存储器和设置在cpu中的驱动模块;所有c1m均与c2相连接,c2分别与所述gpu显存、c3、所述控制单元连接;
4、其中,c1m为设置在am上的第一级高速缓冲存储器;c2、所述控制单元设置在gpu芯片内部,所述扩展存储器设置在gpu外部或gpu内部的封装内;
5、所述扩展存储器的存储容量大于第三级gpu高速缓冲存储器的容量阈值r,所述驱动模块用于将所述存储单元划分为第一存储单元和第二存储单元,并将所述第一存储单元设置为gpu的第三级gpu高速缓冲存储器c3,将所述第二存储单元从逻辑上合并至gpu显存中,所述第一存储单元的存储容量小于等于容量阈值r;
6、所述控制单元用于记录c2中数据访问信息,并在c2中需要替换数据时,根据所述数据访问信息判断待替换的数据的访问频率是否符合预设的访问需求,若符合,则将所述待替换的数据存储至c3中。
7、本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种gpu缓存系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有下列优点:
8、本发明提供一种gpu缓存系统,有效利用了设置在gpu芯片外部或gpu封装内的存储容量,提高了gpu的数据访问速度,提升了gpu的性能。
9、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
1.一种gpu缓存系统,其特征在于,
2.根据权利要求1所述的系统,其特征在于,
3.根据权利要求2所述的系统,其特征在于,
4.根据权利要求1所述的系统,其特征在于,
5.根据权利要求1所述的系统,其特征在于,
6.根据权利要求1所述的系统,其特征在于,
7.根据权利要求1所述的系统,其特征在于,
8.根据权利要求1所述的系统,其特征在于,
