在CC-NUMA架构系统中,为了减少缓存一致性维护的开销,大规模CC-NUMA系统通常采用多级缓存一致性域设计,降低平均一致性维护操作数量,从而有效缓解系统性能扩展与一致性维护开销的矛盾.传统的MESI,MESIF,MOESI协议主要是针对单级一致性...在CC-NUMA架构系统中,为了减少缓存一致性维护的开销,大规模CC-NUMA系统通常采用多级缓存一致性域设计,降低平均一致性维护操作数量,从而有效缓解系统性能扩展与一致性维护开销的矛盾.传统的MESI,MESIF,MOESI协议主要是针对单级一致性域优化设计,并且没有考虑到大型数据库应用中查询(数据读访问)业务量占据主导地位的特点,故该类一致性协议在多级缓存一致性域场景下存在着跨域操作频度高、执行效率低等缺点.针对上述问题,提出了一种基于共享转发态的多级缓存一致性协议MESI-SF.该协议创建了一个共享转发态Share-F,允许多个一致性域内同时存在远端数据副本的可读可转发状态,从而能够为同一域内同地址的读请求直接提供共享数据,有效减少了跨域操作,提升系统性能.SPLASH-2程序集模拟结果表明,对于两级Cache一致性域系统,相比MESI协议,MESI-SF能够减少23.0%跨结点访问次数,指令平均执行周期数(cycles per instruction,CPI)降低7.5%;相比MESIF协议,MESI-SF能够减少12.2%跨结点访问次数,指令平均执行周期数降低5.95%.展开更多
文摘在CC-NUMA架构系统中,为了减少缓存一致性维护的开销,大规模CC-NUMA系统通常采用多级缓存一致性域设计,降低平均一致性维护操作数量,从而有效缓解系统性能扩展与一致性维护开销的矛盾.传统的MESI,MESIF,MOESI协议主要是针对单级一致性域优化设计,并且没有考虑到大型数据库应用中查询(数据读访问)业务量占据主导地位的特点,故该类一致性协议在多级缓存一致性域场景下存在着跨域操作频度高、执行效率低等缺点.针对上述问题,提出了一种基于共享转发态的多级缓存一致性协议MESI-SF.该协议创建了一个共享转发态Share-F,允许多个一致性域内同时存在远端数据副本的可读可转发状态,从而能够为同一域内同地址的读请求直接提供共享数据,有效减少了跨域操作,提升系统性能.SPLASH-2程序集模拟结果表明,对于两级Cache一致性域系统,相比MESI协议,MESI-SF能够减少23.0%跨结点访问次数,指令平均执行周期数(cycles per instruction,CPI)降低7.5%;相比MESIF协议,MESI-SF能够减少12.2%跨结点访问次数,指令平均执行周期数降低5.95%.