【技术实现步骤摘要】
本申请涉及计算机领域,特别涉及一种缓存一致非统一存储访问(cachecoherent none uniform memory access,cc-numa)服务器、锁请求的处理方法及相关装置。
技术介绍
1、cc-numa服务器通常包括多个处理器,该多个处理器通过低时延总线互连,每个处理器具有缓存和内存。每个处理器不仅可以访问本地内存,还可以通过低时延总线访问其他处理器的内存,即远端内存,而且这些处理器还可以通过缓存一致性协议保持每个处理器之间的缓存一致性。
2、该多个处理器具有大量的共享资源,在某个线程需要访问共享资源时,可以申请占用该共享资源对应的锁,从而获得对该共享资源进行访问的权限,这个过程也称为加锁。而未能占用该锁的其他线程,则需要等待该锁的占用状态被解除之后,才能申请占用该锁。通常,占用该锁的线程在完成对该共享资源的访问任务后,会主动解除对该锁的占用,这个过程也称为解锁。然而,随着芯片工艺的不断发展,处理器包括的核越来越多,该多个处理器的共享资源对应的锁的性能也越来越重要,因此如何对锁请求进行处理成为目前亟待解决
...【技术保护点】
1.一种缓存一致非统一存储访问CC-NUMA服务器,其特征在于,所述CC-NUMA服务器包括多个处理器以及一个共享装置,所述多个处理器之间通过CC-NUMA总线连接,所述多个处理器还分别与所述共享装置之间通过CC-NUMA总线连接;
2.如权利要求1所述的CC-NUMA服务器,其特征在于,所述共享内存和所述多个处理器的内存进行全局统一编址。
3.如权利要求1或2所述的CC-NUMA服务器,其特征在于,所述共享内存包括第一内存区域和第二内存区域,所述第一内存区域用于存储第一类锁,所述第二内存区域用于存储第二类锁,所述第一类锁不允许被所述多个处理器
...【技术特征摘要】
1.一种缓存一致非统一存储访问cc-numa服务器,其特征在于,所述cc-numa服务器包括多个处理器以及一个共享装置,所述多个处理器之间通过cc-numa总线连接,所述多个处理器还分别与所述共享装置之间通过cc-numa总线连接;
2.如权利要求1所述的cc-numa服务器,其特征在于,所述共享内存和所述多个处理器的内存进行全局统一编址。
3.如权利要求1或2所述的cc-numa服务器,其特征在于,所述共享内存包括第一内存区域和第二内存区域,所述第一内存区域用于存储第一类锁,所述第二内存区域用于存储第二类锁,所述第一类锁不允许被所述多个处理器缓存,所述第二类锁允许被所述多个处理器缓存。
4.如权利要求3所述的cc-numa服务器,其特征在于,所述第一类锁包括互斥锁和基础自旋锁,所述第二类锁包括高性能自旋锁。
5.如权利要求4所述的cc-numa服务器,其特征在于,所述第二内存区域存储有所述高性能自旋锁对应的循环数组,所述循环数组包括至少一个数组元素,所述至少一个数组元素位于一段连续的物理地址空间中,所述至少一个数组元素与申请占用所述高性能自旋锁的至少一个线程一一对应,所述至少一个数组元素中前一个数组元素指向下一个数组元素,所述数组元素指示对应的线程是否已占用所述高性能自旋锁。
6.如权利要求5所述的cc-numa服务器,其特征在于,所述至少一个数组元素中每个数组元素的大小与所述多个处理器的缓存中的缓存行的大小相同。
7.如权利要求1至6任一所述的cc-numa服务器,其特征在于,所述cc-numa总线支持内存语义访问。
8.一种锁请求的处理方法,其特征在于,应用于缓存一致非统一存储访问cc-numa服务器,所述cc-numa服务器包括多个处理器以及一个共享装置,所述共享装置包括共享内存,所述共享内存...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。