如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第4章OpenMP多线程编程目标1.OpenMP简介2.OpenMP特点引例3.OpenMP基本语法3.1parallel——并行执行#pragmaompparallelforfor(i=0;i<numPixels;i++){psum[i]=(pRed[i]*0.2+pBlue[i]*0.3+pYellow[i]*0.5);}对于循环的五点约束任务分配机制pragmas的合并4.不共享的数据默认情况下,并行区中所有的变量都是多线程共享的,但上述情况例外。修改数据的共享属性可以用private和shared子句5.2共享化练习:练习:存在的问题问题5.3OpenMPCritical结构5.3OpenMPCritical结构5.4OpenMPReduction结构5.4OpenMPReduction结构其他常用OpenMPpragmas7.1parallelsections并行化下面代码7.2single结构7.3master结构取消隐式栅障结构:分析7.5barrier结构分析综合练习7.6atomic结构8.OpenMP库函数应用阅读程序voidmain(intargc,char*argv){#pragmaompparallelsections{#pragmaompsectionprintf(“section1ThreadId=%d\n”,omp_get_thread_num());#pragmaompsectionprintf(“section2ThreadId=%d\n”,omp_get_thread_num());#pragmaompsectionprintf(“section3ThreadId=%d\n”,omp_get_thread_num());#pragmaompsectionprintf(“section4ThreadId=%d\n”,omp_get_thread_num());}9.本章小结练习6.调度优化:分配任务的原则优化几种调度策略:static静态dynamic动态guided指导6.1静态平均调度策略(默认不指定块大小)例6.2动态调度策略6.3指导调度策略6.3指导调度策略例:调度策略的应用例子性能分析性能分析