定义可供优化器使用的缓存属性。此选项不保证使用每个特定的缓存属性。
尽管该选项可单独使用,但它是 -xtarget 选项扩展的一部分;其主要用途是覆盖 -xtarget 选项提供的值。
此发行版引入一个可选属性 [/ti],该属性用来设置可以共享缓存的线程数。如果没有为 t 指定值,则缺省值为 1。
c 必须是以下值之一:
generic
native
s1/ l1/a 1[/t1]
s1/ l1/a 1[/t1]: s2/l 2/a2[ /t2]
s1/ l1/a 1[/t1]: s2/l 2/a2[ /t2]: s3/l 3/a3[ /t3]
s/l /a/t 属性定义如下:
si |
级别为 i 的数据高速缓存的大小,以千字节为单位 |
li |
级别为 i 的数据高速缓存的行大小,以字节为单位 |
ai |
级别为 i 的数据高速缓存的关联性 |
ti |
共享级别为 i 的缓存的硬件线程数 |
下表列出了 -xcache 值。
表 B–17 -xcache 标志
标志 |
含义 |
---|---|
generic |
这是缺省值,该值指示编译器使用能达到以下效果的缓存属性:多数 x86 和 SPARC 处理器上都能获得良好性能,同时任何处理器性能都不会明显下降。 如果需要,在每个新的发行版本中都会调整最佳定时属性。 |
native |
设置在主机环境中最佳性能的参数。 |
s1/l1 /a1[/t1] |
定义 1 级高速缓存属性。 |
s1/l1 /a1[/t1] :s2/l2 /a2[/t 2] |
定义 1 级和 2 级高速缓存属性。 |
s1/l1 /a1[/t1] :s2/l2 /a2[/t 2]:s3/ l3/a3[/ t3] |
定义 1 级、2 级和 3 级缓存属性。 |
示例: -xcache=16/32/4:1024/32/1 指定以下内容:
级别 1 缓存具有以下属性: 16 千字节 32 字节行大小 4 方向关联 |
2 级缓存具有: 1024 千字节 32 字节行大小 指示映射关联 |