南开21秋-并行程序设计答案_第1页
南开21秋-并行程序设计答案_第2页
南开21秋-并行程序设计答案_第3页
南开21秋-并行程序设计答案_第4页
南开21秋-并行程序设计答案_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.一个SSE寄存器可容纳个短整型数。A2B4C8D16我的答案:C采用划分子矩阵技术优化矩阵乘法CUDA程序,子矩阵数组变量声明应加前缀。A__global__B__device___C__shared__D__private__我的答案:C起泡排序改为奇偶转置排序,消除了循环步间的数据依赖的原因是 。A增大了元素比较距离B减小了元素比较距离C改为元素两两分组比较D消除了元素比较我的答案:C求解同一个问题的4个并行算法的等效率函数分析结果如下,其中 的可扩展性最优。A⑻(plogp)B⑻(p"2)C⑻(p^2logp)D⑻(p^3)我的答案:A为防止编译器不支持OpenMP,应使用实现OpenMP代码和普通代码的条件编译。A"#includeB"#pragmaompparallel"C"#ifdef_OPENMP"D"#define_OPENMP"我的答案:C利用cacheline一次读取多个数据字的机制优化程序访存性能,其机理是A降低了访存延迟B隐藏了访存延迟C利用了cache空间局部性D利用了cache时间局部性我的答案:C有大量分支指令的程序不适合下面哪种体系结构上进行并行化?ASISDBSIMDCSPMDDMIMD我的答案:BCPUcache大小为32KB,如希望(单精度浮点数)矩阵乘法计算过程中所有数据都驻留cache中,则矩阵大小最大为A16*16B32*32C64*64D128*128我的答案:Cpthread_join的第二个参数的作用是。A设置指定线程属性B获取指定线程属性C向指定线程传递参数D获取指定线程函数返回结果我的答案:D在分布式内存架构编程中,进程间不能 。A进行通信B进行同步C发送和接收消息D通过读写变量交换数据我的答案:D关于OpenMP循环并行程序的编写,下列说法中正确的是。A程序员需要编写线程创建和管理代码B程序员需要编写循环划分代码C程序员需要编写调度策略代码D程序员只需指出对哪个循环进行并行,循环划分和调度策略是什么我的答案:D在SSEintrinsics程序中双精度浮点数数据类型是。A__m128B__m128fC__m128dD__m128i我的答案:C在使用条件变量之后必须对其进行 。A初始化B加锁C解锁D销毁我的答案:D采用搜索分解设计15数码问题的并行算法,不包含下面哪个步骤_A串行生成一定规模的搜索树B当前每个叶结点为根的子树搜索分配给一个处理器C发现解的处理器通知其他处理器D将所有处理器的结果组合成最终解我的答案:D静态任务划分相对于动态任务划分的缺点是 。A可能导致负载不均B通信开销高C计算复复杂度高D任务粒度粗我的答案:AOpenMP能实现的是。A避免数据竞争B提供任务划分策略C确保加速D确保降低通信开销我的答案:B忙等待方法解决竞争条件的思路是 。A令CPU一直处于忙碌状态无法产生竞争条件B令存在数据依赖的内存操作充分并行C强制多线程进入临界区的顺序来将存在数据依赖内存操作串行化D以上皆错我的答案:C矩阵乘法问题更适合使用MPI的编程模型。A阻塞的B非阻塞的C对等的D主从的我的答案:C采用多核、众核技术提升CPU性能,相对于单核的优势不包括—A架构设计更容易B更易突破物理极限C能更充分利用现有资源D功耗优势明显我的答案:B计算并行起泡排序算法的加速比,应该选择 串行算法的运行时间作为串行时间。A起泡排序B插入排序C快速排序D归并排序我的答案:D主线程创建了4个线程,它们打印各自的线程号(0-3),未使用任何同步,则输出顺序 。A必然是0123B必然是4321C不可能是4321D以上皆错我的答案:D并行算法的额外开销不包括 。A进程间通信B进程等待I/OC进程空闲D额外计算我的答案:BOpenMP的循环调度策略不会影响算法的。A负载均衡B调度开销C计算总量D数据局部性我的答案:Bn个数求和的串行程序,通过一个循环将每个数累加到全局变量sum中,其多线程版本简单将循环范围改变为每个线程负载的范围,存在的问题是 。A负载不均B通信开销大CCPU空闲等待严重Dsum累加产生竞争条件,导致结果错误我的答案:D若SIMD并行化时遇到对齐问题,下列说法正确的是。A只能使用不对齐访存指令B不能进行SIMD并行化C对齐开销可能完全抵消SIMD并行收益D以上皆错我的答案:CCPUcache大小为32KB,64*64的两个矩阵进行加法计算,下面说法正确的是A可利用cache时间局部性优化性能B可利用cache空间局部性优化性能C可通过矩阵分片优化性能D访存方面无优化可能我的答案:BSSEintrinsics_mm_store_pd命令的功能是。A对齐向量存单精度浮点数B未对齐标量存单精度浮点数C对齐向量存双精度浮点数D未对齐标量存双精度浮点数我的答案:Cfor(i=0;i<16;i+=1){L=A[i+0]-B[i+0];D=D+abs(L);},此循环 。A可完全向量化B不可向量化C不确定D可部分向量化我的答案:D关于OpenMP循环并行程序的编写,下列说法中不正确的是。A程序员无需编写线程创建和管理代码B程序员无需编写循环划分代码C程序员需指出哪个循环应并行D程序员需编写线程同步代码我的答案:D使用 无法直接实现“主线程唤醒4个从线程去执行任务”。A1个信号量B障碍C1个互斥量D4个互斥量我的答案:C多对多广播/归约高效算法基于 。A递归思想B流水线思想C分治思想D贪心思想我的答案:BOpenMP的优点不包括。A从头编写并行程序很自然B串行程序并行化简单C不必关心低层细节D可移植、可扩展我的答案:ASSEintrinsics_mm_load_pd命令的功能是。A对齐向量读取单精度浮点数B未对齐向量读取单精度浮点数C对齐向量读取双精度浮点数D未对齐向量读取双精度浮点数我的答案:C对奇偶转置排序进行OpenMP并行化,第一种策略是直接对内层循环使用ompparallelfor指令,第二种策略是对外层循环使用ompparallel指令,对内层循环使用ompfor指令,后者相对于前者的优点是。A保持了数据依赖B消除了大量线程创建、销毁开销C有利于负载均衡D减少了线程间交互我的答案:B执行pthread_rwlock_rdlock时,的情况下线程进入阻塞。A已有一个线程上了读锁B已有一个线程上了写锁C已有多个线程上了读锁D已有多个线程上了写锁我的答案:BOpenMP是架构下的一种编程工具。ASIMDBMISDC共享内存D分布式内存我的答案:CFORTRAN语言存储二维数组采取。A行主次序存储B列主次序存储C交错式存储D对角线存储我的答案:B以下哪条不是推动并行计算发展的因素?A存储是系统瓶颈B单CPU发展已能满足应用需求C利用标准硬件构造并行机令升级容易D编程环境标准化逐步发展我的答案:B以下哪种数据集合不能用一个MPI的自定义数据类型表示。A对角矩阵元素B矩阵中为0元素C矩阵中一列元素D上三角矩阵中元素我的答案:B下面矩阵运算中,哪个进行简单的数据并行效果不佳 。A矩阵求和B矩阵相乘C矩阵向量相乘D高斯消去我的答案:D两个矩阵相乘,将其划分为b*b大小的子矩阵,采用子矩阵乘一加的方式完成矩阵乘法,则b与cache大小C之间的关系为时性能最好Ab*b<=CB2*b*b<=CC3*b*b<=CD8*b*b<=C我的答案:CMPI的通信是。A无类型传输B弱类型传输C强类型传输D以上皆错我的答案:COpenMP最常见的编程方式是寻找串行程序中结构进行并行化。A赋值语句B循环语句C递归D输出语句我的答案:B主线程要求从线程退出应采用 。Apthread_createBpthread_exitCpthread_quitDpthread_cancel我的答案:D采用MPI主从模型解决矩阵每行排序问题,主进程每次向一个从进程发送10行作为一个任务相对于每次发送1行的优点是 。A更有利于负载均衡B减少了通信开销C降低了计算次数D减少了从进程空闲我的答案:BGPU相对于其他众核产品的优势不包括。A平台普及B有CUDA这样易学的开发工具C性价比高D由英伟达公司一家把控我的答案:D动态线程编程模式的优点是 。A线程创建开销低B线程管理开销低C线程终止开销低D系统资源利用率高我的答案:D.编写矩阵乘法的AVX程序,若矩阵元素为双精度浮点数,则应对矩阵乘一加计算的循环进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论