[发明专利]通过优化缓存重用在多处理器共享存储器系统上体积绘制有效
申请号: | 201310112494.8 | 申请日: | 2013-04-02 |
公开(公告)号: | CN103365796B | 公开(公告)日: | 2017-10-20 |
发明(设计)人: | R.施奈德 | 申请(专利权)人: | 西门子公司 |
主分类号: | G06F12/084 | 分类号: | G06F12/084;G06T1/60 |
代理公司: | 北京市柳沈律师事务所11105 | 代理人: | 谢强 |
地址: | 德国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 通过 优化 缓存 重用 处理器 共享 存储器 系统 体积 绘制 | ||
1.一种用于在具有一个或多个处理器(P)的共享存储器系统上的图像绘制的方法,其中,各处理器(P)能够包括至少一个内核,以及其中,将一个或多个内核分配给至少一个缓存(12),并且能够并行地计算至少一个线程的指令,其中,将共享一个缓存(12)的内核限定在一个插座中,其中插座理解为分别共享缓存或LLC的一组处理器内核,所述方法包括:
-把绘制所要使用的图像空间(MR)分解成多个区域(Re),其中,各区域(Re)包括多个瓦片(T);
-把所有可用插座分配给这些区域(Re),其中,给每一个分解后的区域(Re)分配两个插座,用于绘制的目的;
-为各自区域(Re)的每一个确定瓦片枚举方案,以产生用于在该区域(Re)内的瓦片(T)的计算的序列,其中,所述瓦片枚举方案包括正向标引和对应的反向标引;
-绘制一个区域(Re)内的瓦片(T)直至完成区域(Re),其中,所述两个插座的第一插座以升序根据所述正向标引处理瓦片(T),以及其中,所述两个插座的第二插座以降序根据所述反向标引处理瓦片(T);
-如果完成了一个区域(Re):将所述两个插座分配给另一未绘制区域(Re);
-如果没有留下完全未绘制的区域(Re):根据分割方案,将具有未绘制瓦片的区域分割成子区域,并且对于所述子区域重复地应用分配、确定和/或绘制。
2.根据权利要求1所述的方法,其中,所述内核是物理的和/或逻辑的内核。
3.根据权利要求1所述的方法,其中,将所述图像空间分解或分割为根据插座的至少一半数量R/2的区域(Re),其中R是插座的数量。
4.根据前述权利要求之一所述的方法,其中,能按可配置顺序对区域(Re)的瓦片(T)进行处理。
5.根据前述权利要求1至3之一所述的方法,其中,所述两个插座并行地处理所分配的区域(Re)。
6.根据前述权利要求1至3之一所述的方法,其中,所述瓦片枚举方案是静态的且预先定义的。
7.根据权利要求6所述的方法,其中,所述瓦片枚举方案是基于Hilbert曲线的。
8.根据权利要求1所述的方法,其中,所述瓦片枚举方案是动态的并且基于度量f(B),所述度量f(B)用来检测多个可能的分解或分割中的哪一个具有最好的缓存局部性特性。
9.根据权利要求8所述的方法,其中,对于给定取向以及给定体积,所述度量允许估算在x方向上的瓦片分割或者在y方向上的瓦片分割是否将平均地触及较少的缓存行。
10.根据权利要求8或9所述的方法,其中,所述度量由下式定义:
f(B)=|px×ez|+|py×ez|,这里,px和py分别是在x方向和y方向上的向量,而ez是pz的单位长度向量,其中,pz是在z方向上的向量。
11.根据前述权利要求1至3之一所述的方法,其中,分解和/或分割并不局限于特定的几何形式,并且能够基于不同算法。
12.根据前述权利要求1至3之一所述的方法,其中,对于分解和分割,通过考虑待绘制的瓦片(T)的预期工作负荷的相等分布,所述方法是适应性的。
13.根据前述权利要求1至3之一所述的方法,其中,使用两个、四个或更多插座进行绘制。
14.根据前述权利要求1至3之一所述的方法,其中,如果使用两个插座则不执行任何分割,并且只执行单一原子操作。
15.根据前述权利要求1至3之一所述的方法,其中,如果使用四个插座,通过使用由128位指令所执行的原子操作来执行分割。
16.根据前述权利要求1至3之一所述的方法,其中,所述缓存是私有的或者共享的末级缓存(LLC)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子公司,未经西门子公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310112494.8/1.html,转载请声明来源钻瓜专利网。