超级计算机主要原理,超级计算机原理与操作(1)
06 Mar 2019 3439字 12分
如果这篇博客帮助到你,可以请我喝一杯咖啡~
CC BY 4.0 (除特别声明或转载文章外)
习题
1.1为求全局总和例子中的my_first_i和my_last_i推导一个公式。需要注意的是:在循环中,应该给各个核分配数目大致相同的计算元素。 ( 提示: 先考虑 n 能被 p 整除的情况)。for (my_i = my_first_i my_i < my_last_i; ++my_i)
{
my_x = Compute_next_value(...);
my_sum += my_x;
}
可以看出对于每个核心$i$,其对应累加的范围是左闭合区间$[my_first_i,my_last_i)$。
假设所有$p$个核心的编号是$0,1,\dots,p-1$,显然对于除了最后一个核心之外,其余核心的区间长度都应当是$\lceil\frac{n}{p}\rceil$,其中$\lceil\rceil$表示向上取整。
因此,可以得到结果:对于每个核心$i$,显然有$my_first_i=(i-1)\times\lceil\frac{n}{p}\rceil$;
对于最后一个核心$i=p$,显然有$my_last_i=n-1$
对于除了最后一个核心之外的每个核心$i$,有$my_last_i=my_first_(i+1)=i\times\lceil\frac{n}{p}\rceil$
1.6
在下列情况中,推到公式求出 0 号核执行接受与加法操作的次数。最初的求全局总和的伪代码
0 号核接受其余$p-1$个核的结果并把它们加起来,因此执行了$p-1$次接受操作和$p-1$次加法操作。树形结构求全局总和
在树形结构除了根节点那一层的每一层里,0 号核心都接受相邻节点的结果并把它和自己的结果相加,而树形结构有$\lceil\log_2n\rceil+1$层,因此进行了$\lceil\log_2n\rceil$次护额受操作和加法操作。制作一张表来比较这两种算法在总核数是$2,4,8,\dots,1024$时,0 号核执行的接收与加法操作的次数总核数最初的分块法树形求和法211
432
873
16154
32315
64636
1281277
2562558
5125119
1024102310
2.2请解释在 CPU 硬件里实现的一个队列,怎么使用可以提高写直达高速缓存(write-through cache)的性能。
队列的特点是队尾插入队首删除。要提高写直达高速缓存的性能,就要尽量避免频繁操作主存区。因此,可以只将队首和队尾元素放进缓存区,仅在插入删除时更新缓存区。
2.3回顾之前一个从缓存读取二维数组的示例。请问一个更大矩阵和一个更大的缓存是如何影响两对嵌套循环的性能的?如果 MAX = 8,缓存可以存储 4 个缓存行,情况又会是怎样的?在第一对嵌套循环中对 A 的读操作,会导致发生多少次失效?第二对嵌套循环中的失效次数又是多少?double A[MAX][MAX], x[MAX], y[MAX];
/* First pair of loops */
for (i = 0; i < MAX; ++i)
for (j = 0; j < MAX; ++j)
y[i] += A[i][j] * x[j];
/* Second pair of loops */
for (j = 0; j < MAX; ++j)
for (i = 0; i < MAX; ++i)
y[i] += A[i][j] * x[j];Cache LineElements of A0A[0][0]A[0][1]A[0][2]A[0][3]
1A[1][0]A[1][1]A[1][2]A[1][3]
2A[2][0]A[2][1]A[2][2]A[2][3]
3A[3][0]A[3][1]A[3][2]A[3][3]
更大的缓存会增加两个循环的性能,其中第一个循环性能增加更多,因为第一个循环是操作的内存地址都是相邻的,缓存增加后从主存中读取元素的次数减少了。同理,更大的矩阵会显著降低第一个循环的性能,而对第二个循环的影响较小。
MAX=8 时,第一对循环的读操作一行有两次缺失的发生,会发生$2\times 8=16$次失效。第二对循环一列有八次缺失的发生,会发生$8\times 8=64$次失效。
2.16假定一个串行程序的运行时间为$
超级计算机主要原理,超级计算机原理与操作(1)相关推荐
- 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 权限申请原理对话框操作回调接口 | 永久拒绝权限后引导设用户置权限 )
文章目录 一.权限申请原理对话框操作回调接口 RationaleCallbacks 二.永久拒绝权限后引导设用户置权限 一.权限申请原理对话框操作回调接口 RationaleCallbacks 权限申 ...
- RDD 与 DataFrame原理-区别-操作详解
1. RDD原理及操作 RDD (resilientdistributed dataset),指的是一个只读的,可分区的分布式数据集,这个数据集的全部或部分可以缓存在内存中,在多次计算间重用.RDD内 ...
- Git理论、原理、操作
Git理论.原理.操作 Git简介: 一个开源的分布式版本控制系统.用于处理任何大大小小的项目,是一个开放源码的版本控制软件. Git与SVG的区别: 1.git是分布式的 2.git把内容按元数据方 ...
- Kong+Konga配置原理、操作 学习分享
Kong+Konga配置原理.操作 学习分享 一.什么是Kong,为什么使用Kong 1.首先知道为什么要使用网关: 2.什么是Kong? 3.Kong的安装: 4.什么是Konga? 6.怎么判断s ...
- 计算机组成原理寄存器的实验原理,计算机组成原理实验报告_寄存器的原理及操作课案.docx...
<计算机组成原理实验报告_寄存器的原理及操作课案.docx>由会员分享,提供在线免费全文阅读可下载,此文档格式为docx,更多相关<计算机组成原理实验报告_寄存器的原理及操作课案.d ...
- 计算机组成原理实验写入怎么,计算机组成原理实验报告_寄存器的原理及操作...
<计算机组成原理实验报告_寄存器的原理及操作>由会员分享,可在线阅读,更多相关<计算机组成原理实验报告_寄存器的原理及操作(10页珍藏版)>请在人人文库网上搜索. 1.成绩:实 ...
- 计算机组成原理r3寄存器,计算机组成原理实验报告-寄存器的原理及操作
<计算机组成原理实验报告-寄存器的原理及操作>由会员分享,可在线阅读,更多相关<计算机组成原理实验报告-寄存器的原理及操作(10页珍藏版)>请在装配图网上搜索. 1.成绩:实 ...
- 深度学习机器学习理论知识:范数、稀疏与过拟合合集(5)Dropout原理,操作实现,为什么可以缓解过拟合,使用中的技巧
范数.稀疏与过拟合合集(1)范数的定义与常用范数介绍 范数.稀疏与过拟合合集(2)有监督模型下的过拟合与正则化加入后缓解过拟合的原理 范数.稀疏与过拟合合集(3)范数与稀疏化的原理.L0L1L2范数的 ...
- 3730-0阀门定位器的工作原理与操作
3730-0阀门定位器的工作原理与操作 工作原理 电气阀门定位器装配到气动控制阀,接受控制系统或控制器输出的电动控制信号,按预先设置关系辅助气动执行机构调整阀位并实现准确定位.阀门定位器将输入控制信号 ...
最新文章
- 【DIY】(开发板不吃灰运动)CC3200LaunchPad改装红外温度计
- 三、IntellijIDEA开发工具,学习Java好利器
- GridView多行表头合并
- POJ2373-Dividing the Path【单调队列优化dp】
- 一行代码引来的安全漏洞,就让我们丢失了整个服务器的控制权
- 数据告诉你,抖音是怎么在半年之内逆袭的
- UI设计摘要背景素材|简单分层PSD格式化模板,为项目增加背景
- 74.4k star 项目 YouTube-dl 重新上线,GitHub 强调将重点支持开源!
- 利用python解析手机通讯录
- Python进阶(七)argparse参数解析
- JWT 的退出登录方法
- linux显示一列数据的首尾行,tail从文件内容的尾行开始查看命令
- 自监督学习(四)Joint Unsupervised Learning of Deep Representations and Image Clusters
- u盘的大小在计算机无法显示,U盘格式化后插入电脑打不开,不显示U盘大小怎么解决?...
- 提供优质客户服务的5种方法
- lect02_project
- exec函数族的基本用法
- python反恐精英基础版_python反恐精英
- 判断两字符串是否互为变形词Python版
- 邓应海:非农数据发酵不够惨烈,难拖延美联储缩表进程!最新黄金走势分析
热门文章
- 华为应用市场携手全新BMW7系,开启“后排车载娱乐”时代
- 访问共享文件夹里的office文档时提示内存或磁盘空间不足
- 3dmax如何拆分模型_如何在3D Builder中拆分3D模型。 Windows解决方案
- 企业订单管理软件|移讯云订货宝系统功能介绍
- 地震反演近期文章阅读
- 学会用版权保护自己的权利
- 更加全面、高效,网易云易盾手游智能反外挂服务7月31日发布
- html中输入年龄,年龄.html
- 常用移动应用 Packagename 和 URL Scheme
- Live-Android,让你在桌面系统下体验Android