首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > 其他服务器 >

在一个C/C++程序中,怎么获取UNIX操作系统缓存行大小

2012-03-04 
在一个C/C++程序中,如何获取UNIX操作系统缓存行大小?请教高手:在Windows平台上,很容易获取UNIX操作系统缓

在一个C/C++程序中,如何获取UNIX操作系统缓存行大小?
请教高手:在Windows平台上,很容易获取UNIX操作系统缓存行大小,包括Linux和Web OS,但是在AIX(运行于Power之上)、HP-UX(运行于安腾)、Solaris(运行于SPARC)之上,如何获取呢?

[解决办法]
你可以有一本看可以看hwloc库的资料(BSD许可证),不同架构和不同系统都有介绍。你还可以使用命令行工具lstopo或官方提供的API文档。
[解决办法]
对于Solaris(SPARC和x86的架构),您可以使用这个命令:
$ prtpicl -v -c cpu | grep -i cache-line-size :l1-dcache-line-size 0x40 :l1-icache-line-size 0x40 :l2-cache-line-size 0x40

热点排行