Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了____cacheline_aligned_in_smp用于linux中的结构大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

为什么在 Linux中很多结构使用____cacHeline_aligned_in_smp宏?在访问结构时是否有助于提高性能.如果是,那怎么样? 任何缓存(dcache或icachE)中的每个缓存行都是64字节(x86)架构.需要缓存对齐以避免错误共享缓存行.如果缓存行在全局变量之间共享(在内核中发生更多)如果其中一个全局变量由其缓存中的一个处理器更改,则它将该缓存行标记为脏.在剩余的CPU缓存行
为什么在 Linux中很多结构使用____cacHeline_aligned_in_smp宏?在访问结构时是否有助于提高性能.如果是,那怎么样?

解决方法

任何缓存(dcache或icachE)中的每个缓存行都是64字节(x86)架构.需要缓存对齐以避免错误共享缓存行.如果缓存行在全局变量之间共享(在内核中发生更多)如果其中一个全局变量由其缓存中的一个处理器更改,则它将该缓存行标记为脏.在剩余的cpu缓存行中,它变为过时的条目,需要刷新并从内存中重新获取.这可能会导致缓存行未命中,这需要更多的cpu周期.这降低了系统的性能.请记住,这是针对全局变量的.大多数内核数据结构使用它来避免缓存行未命中.

大佬总结

以上是大佬教程为你收集整理的____cacheline_aligned_in_smp用于linux中的结构全部内容,希望文章能够帮你解决____cacheline_aligned_in_smp用于linux中的结构所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。