买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】针对DSMC算法缓存以及SIMD向量化的系统性优化系统_上海交通大学_202310125566.6 

申请/专利权人:上海交通大学

申请日:2023-02-17

公开(公告)日:2023-12-26

公开(公告)号:CN116107640B

主分类号:G06F9/38

分类号:G06F9/38;G06F12/0875;G06F12/0897;G06F13/16;G06F30/15;G06F30/25;G06F30/28;G06F111/08;G06F113/08;G06F119/14

优先权:

专利状态码:有效-授权

法律状态:2023.12.26#授权;2023.05.30#实质审查的生效;2023.05.12#公开

摘要:一种针对DSMC的缓存优化以及SIMD指令集向量化系统,包括:SIMD缓存加载单元加载待交叉计算的网格中的粒子信息,SIMD碰撞单元根据每个网格在当前时间步长下的预期碰撞数以及来自不同的网格的不同通道粒子的碰撞行为进行向量化计算,SIMD移动单元对待交叉计算的网格中的粒子的移动行为进行向量化计算并对粒子位置进行更新,双缓冲粒子调整单元为粒子所属的每个网格配置两个缓冲区轮流进行读取以及存储以进行全局粒子调整以保证粒子具备正确的网格归属。本发明以优化的算法结构、数据结构以及相互匹配的双缓冲缓存优化以及交错网格SIMD向量化碰撞算法,提高程序缓存命中率,降低内存访问次数的同时避免SIMD向量化过程中的数据依赖。

主权项:1.一种针对DSMC的缓存优化以及SIMD指令集向量化系统,其特征在于,包括:SIMD缓存加载单元、SIMD碰撞单元、SIMD移动单元和双缓冲粒子调整单元,其中:SIMD缓存加载单元加载待交叉计算的网格中的粒子信息,SIMD碰撞单元根据每个网格在当前时间步长下的预期碰撞数以及来自不同的网格的不同通道粒子的碰撞行为进行向量化计算,SIMD移动单元对待交叉计算的网格中的粒子的移动行为进行向量化计算并对粒子位置进行更新,双缓冲粒子调整单元为粒子所属的每个网格配置两个缓冲区轮流进行读取以及存储以进行全局粒子调整以保证粒子具备正确的网格归属;所述的全局粒子调整是指:在每次所有粒子移动结束后,将跨越当前网格边界进入其他网格的粒子放置回对应网格的内存中;在每次交叉计算开始前以每个网格的预期碰撞数为键值进行一次桶排序,以保证SIMD不同通道处理的网格具备相近的粒子数,以达到SIMD向量通道间的负载均衡;所述的轮流进行读取以及存储是指:在为粒子属性存储申请内存空间时,内存地址时64字节对齐的,为采用SIMD向量指令集预留好空间;在进行SIMD向量化时,保持缓存优化的效果,且在设置SIMD宽度时,充分考虑L2层缓存大小,确保SIMD向量的同时,高速缓存仍有足够空间实现数据重用。

全文数据:

权利要求:

百度查询: 上海交通大学 针对DSMC算法缓存以及SIMD向量化的系统性优化系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。