当前位置: 首页 > news >正文

pluto example, heat-1d优化分析

1)

原始代码


#pragma scopfor (t = 0; t < T; t++) {for (i = 1; i < N + 1; i++) {A[(t + 1) % 2][i] =0.250 * (A[t % 2][i + 1] - 2.0 * A[t % 2][i] + A[t % 2][i - 1]);}}
#pragma endscop

用#pragma scop和#pragma endscop包围的东西

2)head1d-tile.c

变成了下面这样:

int t1, t2, t3, t4;register int lbv, ubv;
for (t1=-1563;t1<=0;t1++) {for (t2=max(t1,-t1-1);t2<=min(-t1+1,t1+3125);t2++) {for (t3=max(max(0,512*t1+512*t2),1024*t1+1);t3<=min(999,512*t1+512*t2+1023);t3++) {lbv=max(max(1024*t2,t3+1),-1024*t1+2*t3-1023);ubv=min(min(-1024*t1+2*t3,1024*t2+1023),t3+1600000);
#pragma ivdep
#pragma vector alwaysfor (t4=lbv;t4<=ubv;t4++) {A[(t3 + 1) % 2][(-t3+t4)] = (0.250 * ((A[t3 % 2][(-t3+t4) + 1] - (2.0 * A[t3 % 2][(-t3+t4)])) + A[t3 % 2][(-t3+t4) - 1]));;}}}
}

3)

感觉 搞得复杂了。


http://www.xdnf.cn/news/1170235.html

相关文章:

  • ClearML库详解:从实验跟踪到模型部署的全流程管理
  • KafkaMQ 日志采集最佳实践
  • Hadoop调度器深度解析:FairScheduler与CapacityScheduler的优化策略
  • Navicat 远程连接SQLlite数据库
  • 【锁】MySQL中有哪几种锁?
  • 标记语言---XML
  • 《Webpack热更新瓶颈突破:全链路优化指南》
  • Java函数指南:从Function到BiFunction的深度解析
  • 从ZooKeeper到KRaft:Kafka架构演进与无ZooKeeper部署指南
  • React 面试题库
  • Redis 5.0中的 Stream是什么?
  • Vue开发常用库(含npm安装命令)
  • Linux中信号认识及处理和硬件中断与软中断的讲解
  • 设计模式七:抽象工厂模式(Abstract Factory Pattern)
  • el-input 动态获焦
  • An error occurred at line: 1 in the generated java file问题处理及tomcat指定对应的jdk运行
  • 对随机生成的html文件做标签简析
  • Python趣味算法:折半查找(二分查找)算法终极指南——原理、实现与优化
  • Spring 核心知识点梳理 1
  • Jmeter使用 - 2
  • 第十一章 用Java实现JVM之异常处理
  • 使用 Ansys Fluent 软件参数化工作流程对搅拌罐中的稳态涡流进行仿真
  • 质量即服务:从测试策略到平台运营的全链路作战手册
  • 日语学习-日语知识点小记-构建基础-JLPT-N3阶段(7):自動詞 & 他動詞
  • es6中的symbol基础知识
  • Lua语言
  • web登录页面
  • Elasticsearch Java 8.x 的聚合 API 及子聚合的用法
  • 外网访问内部私有局域网方案,解决运营商只分配内网IP不给公网IP问题
  • iOS加固工具有哪些?从零源码到深度混淆的全景解读