Performance 构建屋顶线模型
我正试图为超级计算机中的一个节点构建一个模型,我正在运行模拟。该节点拥有2个Intel Xeon E5-2650 v2(常春藤桥)8核2.6 GHz处理器(每个处理器16核) 节点),总内存为64GB(每个4GB)。英特尔至强E5-2650的最大内存带宽为59.7 GB/s 达到的GFLOPS=最大内存带宽x算术强度 最大GFLOPS=核数x时钟频率,单位为GHz x操作/周期 我的代码的算术强度为1/3,使用双精度浮点 以下是我计算不同类型程序峰值GFLOP的计算:Performance 构建屋顶线模型,performance,parallel-processing,hardware,multicore,supercomputers,Performance,Parallel Processing,Hardware,Multicore,Supercomputers,我正试图为超级计算机中的一个节点构建一个模型,我正在运行模拟。该节点拥有2个Intel Xeon E5-2650 v2(常春藤桥)8核2.6 GHz处理器(每个处理器16核) 节点),总内存为64GB(每个4GB)。英特尔至强E5-2650的最大内存带宽为59.7 GB/s 达到的GFLOPS=最大内存带宽x算术强度 最大GFLOPS=核数x时钟频率,单位为GHz x操作/周期 我的代码的算术强度为1/3,使用双精度浮点 以下是我计算不同类型程序峰值GFLOP的计算: 顺序程序(单核)无矢量化
- 顺序程序(单核)无矢量化:
- 1x2.6x1(我假设没有矢量化,我们只能实现1个操作/周期?)=2.6gflops
- 带矢量化(SSE)的顺序程序(单核):
- 1x2.6x8=20.8千兆次
- 具有矢量化(SSE)的一个Xeon上的所有磁芯:
- 8x2.6x8=166.4 GFLOPs
- 具有矢量化(SSE)的两个Xeon的所有核心:
- 2x 8x2.6x8=332.8 GFLOPs
- 不带矢量化的顺序程序:
- 59.7*1/3=19.9 GFLOPs,但由于我们的屋顶线为2.6 GFLOPs,我们限制为2.6 GFLOPs
- 带矢量化的顺序程序:
- 59.7*1/3=19.9 GFLOPs。这是可以实现的,因为我们的屋顶线是20.8 GFLOPs
- 一个Xeon(使用所有8个核)具有矢量化:
- 59.7*1/3=19.9 GFLOPs。我对此表示怀疑,因为我们的并行程序肯定比顺序程序能够产生更多的内存需求,而且顺序程序肯定不会使内存系统饱和
- 两个Xeon(共16芯),带矢量化:
- 119.4*1/3=39.8 GFLOPs