【技术实现步骤摘要】
本专利技术涉及通信领域,尤其涉及一种缓存目录的实现方法及装置。
技术介绍
处理器(CPU)是终端设备和服务器设备中必不可少的重要部件。随着终端设备和服务器设备性能的不断提高,多核处理器系统逐渐成为主流,例如常见的UMA(UniformMemory Access,统一内存访问)系统和 NUMA(Non-Uniform Memory Access,非统一内存访问)系统等,均包括多个处理器模块。在多核处理器系统中,由于读写速度的差异,当CPU进行存储器访问时,会优先从本地cache查找并获取目标数据;若该CPU的本地高速缓冲存储器(cache)中没有存储目标数据,则从其他CPU的cache中查找并获取目标数据;若其他CPU的本地cache中没有存储目标数据,则从内存中查找并获取目标数据。根据上述CPU查找及获取目标用户的方法,需要对cache和内存中的数据进行缓存一致性处理,以对处理器系统中存储的数据进行统计。一种实现方法是通过建立缓存目录、以目录的方式记录多CPU系统中的缓存数据和共享数据的位置和状态。一种较为常见的缓存目录是全映射目录,该目录完整的存储了处理器系统中所有地址空间(包括内存和cache)的数据信息,包括所有的共享数据在各处理器cache中的缓存信息。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下问题由于处理器系统中的地址空间较大、处理器数量较多,所以全映射目录所占的存储空间较大,使得全映射目录的访问速度慢且存储使用率较低。
技术实现思路
本专利技术的实施例提供一种缓存目录的实现方法及装置,能够解决现有技术中缓存目录的访问速度慢且存 ...
【技术保护点】
一种缓存目录的实现方法,其特征在于,包括:创建缓存目录,所述缓存目录包括公有数据目录和私有数据目录,所述公有数据目录用于记录公有数据的数据块信息,所述私有数据目录用于记录私有数据的数据块信息;当接收到第一处理器发送的读写请求时,确定该读写请求对应的目标数据的数据类型,所述数据类型包括私有数据、或公有数据;根据所述数据类型,在所述缓存目录中记录所述目标数据的数据块信息。
【技术特征摘要】
1.一种缓存目录的实现方法,其特征在于,包括 创建缓存目录,所述缓存目录包括公有数据目录和私有数据目录,所述公有数据目录用于记录公有数据的数据块信息,所述私有数据目录用于记录私有数据的数据块信息;当接收到第一处理器发送的读写请求时,确定该读写请求对应的目标数据的数据类型,所述数据类型包括私有数据、或公有数据; 根据所述数据类型,在所述缓存目录中记录所述目标数据的数据块信息。2.根据权利要求1所述的方法,其特征在于,所述缓存目录用于记录处理器系统中缓存数据的数据块信息; 其中,所述公有数据的数据块信息包括缓存数据的物理地址与位向量标识的对应关系,所述位向量标识包括N个指针,用于表征所述公有数据对应的处理器,所述N是处理器的个数;所述私有数据的数据信息包括缓存数据的物理地址以及该缓存数据对应的处理器标识。3.根据权利要求1或2所述的方法,其特征在于,所述当接收到第一处理器发送的读写请求时,确定该读写请求对应的目标数据的数据类型之前,包括 接收第一处理器发送的读写请求,所述读写请求包括目标数据的物理地址。4.根据权利要求3所述的方法,其特征在于,所述当接收到第一处理器发送的读写请求时,确定该读写请求对应的目标数据的数据类型,包括 根据所述读写请求确定目标数据的物理地址,检测所述缓存目录中是否记录有所述目标数据的物理地址; 如果所述缓存目录中没有记录所述目标数据的物理地址,则确定所述目标数据的数据类型为私有数据; 则所述根据所述数据类型,在所述缓存目录中记录所述目标数据的数据块信息,包括 在所述私有数据目录中记录所述目标数据的数据块信息,包括所述目标数据的物理地址以及对所述目标数据块进行读写操作的处理器标识,即第一处理器的标识。5.根据权利要求4所述的方法,其特征在于,如果所述缓存目录中记录有所述目标数据的物理地址,所述确定该读写请求对应的目标数据的数据类型,包括 当所述目标数据的物理地址记录于所述缓存目录中的私有数据目录中时,检测所述私有数据目录中该物理地址对应的处理器标识与第一处理器的标识是否相同;若是,则确定所述目标数据的数据类型为私有数据;若否,则确定所述目标数据的数据类型为公有数据; 则所述根据所述数据类型,在所述缓存目录中记录所述目标数据的数据块信息,包括 如果确定所述目标数据的数据类型为私有数据,则根据所述读写请求在所述私有数据目录中更新所述目标数据的数据块信息,所述数据块信息包括所述目标数据的读写次数、读写时间; 如果确定所述目标数据的数据类型为公有数据,则将所述目标数据的数据块信息记录于所述公有数据目录中,将所述目标数据在所述私有数据目录中的目录项置为无效。6.根据权利要求5所述的方法,其特征在于,当所述目标数据的物理地址记录于所述缓存目录中的公有数据目录中时,所述确定该读写请求对应的目标数据的数据类型,包括 确定所述目标数据的数据类型为公有数据; 则所述根据所述数据类型,在所述缓存目录中记录所述目标数据的数据块信息,包括 在所述缓存目录中的公有数据目录中对所述目标数据的位向量标识进行修改,在所述位向量标识中增加第一处理器的信息。7.根据权利要求1-6中任一项所述的方法,其特征在于,当所述公有数据目录和私有数据目录中没有空闲目录项时,所述当接收到第一处理器发送的读写请求时,确定该读写请求对应的目标数据的数据类型之后,还包括 在所述公有数据目录和私有数据目录中确定指定目录项作为可替换目录项,对该指定目录项进行替换,以记录所述目标数据的数据块信息。8.根据权利要求7所述的方法,其特征在于,所述在所述公有数据目录和私有数据目录中确定指定目录项作为可替换目录项,包括 为所述公有数据目录和私有数据目录分别设定时间阈值,将超过预设时间阈值还没有被访问的目录项确定为可替换目录项。9.根据权利要求8所述的方法,其特征在于,当所述超过预设时间阈值还没有被访问的目录项为零时,所述在所述公有数据目录和私有数据目录中确定指定目录项作为可替换目录项,还包括 在所述公有数据目...
【专利技术属性】
技术研发人员:张悠慧,李艳华,郑伟,
申请(专利权)人:华为技术有限公司,清华大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。