需要答案請(qǐng)加QQ:3230981406 微信:aopopenfd777
可做奧鵬全部院校在線作業(yè)、離線作業(yè)、畢業(yè)論文
21秋學(xué)期(1709、1803、1809、1903、1909、2003、2009、2103、2109)《并行程序設(shè)計(jì)》在線作業(yè)
試卷總分:100 得分:100
一、單選題 (共 50 道試題,共 100 分)
1.兩個(gè)矩陣相乘,若矩陣規(guī)模大于cache大小,則優(yōu)化訪存的可行方法是____。
A.先將兩個(gè)矩陣讀入cache再進(jìn)行乘法
B.先轉(zhuǎn)置第一個(gè)矩陣再進(jìn)行乘法
C.先轉(zhuǎn)置第二個(gè)矩陣再進(jìn)行乘法
D.以上皆錯(cuò)
答案:C
2.若SIMD并行化時(shí)遇到對(duì)齊問(wèn)題,下列說(shuō)法正確的是____。
A.只能使用不對(duì)齊訪存指令
B.不能進(jìn)行SIMD并行化
C.對(duì)齊開(kāi)銷(xiāo)可能完全抵消SIMD并行收益
D.以上皆錯(cuò)
答案:C
3.OpenMP不能實(shí)現(xiàn)的是____。
A.負(fù)責(zé)創(chuàng)建和管理線程
B.隱藏棧管理
C.提供同步機(jī)制
D.自動(dòng)并行化
答案:D
4.MPI_Send和MPI_recv是通過(guò)____區(qū)分消息。
A.端口號(hào)
B.消息名
C.消息標(biāo)簽
D.消息哈希
答案:C
5.為了充分利用CPU內(nèi)的多條流水線,程序應(yīng)滿足____。
A.相鄰指令無(wú)依賴性
B.相鄰指令相互依賴
C.整段程序中指令無(wú)依賴性
D.整段程序中指令相互依賴
答案:A
6.使用____無(wú)法直接實(shí)現(xiàn)“主線程等待4個(gè)從線程完成任務(wù)”。
A.1個(gè)信號(hào)量
B.障礙
C.1個(gè)互斥量
D.4個(gè)互斥量
7.主線程創(chuàng)建了4個(gè)從線程,對(duì)它們執(zhí)行pthread_join,然后打印一條信息,從線程打印各自的線程號(hào),未使用任何同步,則主線程打印的消息和從線程打印的線程號(hào)的相對(duì)順序____。
A.必然主線程前、從線程后
B.必然從線程前、主線程后
C.必然相互交織
D.各種順序皆有可能
8.對(duì)下面程序,說(shuō)法正確的是 # pragma omp parallel for num_threads(thread_count) \ reduction(+:sum) for (k = 1; k <= n; k++) { sum += factor/(2*k-1); factor = -factor; }
A.破壞了數(shù)據(jù)依賴
B.未破壞數(shù)據(jù)依賴
C.取決于變量聲明
D.比臨界區(qū)方式性能差
9.以下超級(jí)計(jì)算機(jī)中,____不是SIMD架構(gòu)。
A.CDCSTAR-100
B.757
C.銀河
D.天河1號(hào)
10.在使用互斥量之前必須對(duì)其進(jìn)行____。
A.初始化
B.加鎖
C.解鎖
D.銷(xiāo)毀
11.一個(gè)Neon寄存器最多存放_(tái)___個(gè)短整型數(shù)。
A.2
B.4
C.8
D.16
12.在使用信號(hào)量之后必須對(duì)其進(jìn)行____。
A.初始化
B.解鎖
C.減1
D.銷(xiāo)毀
13.n個(gè)數(shù)求和的串行程序,通過(guò)一個(gè)循環(huán)將每個(gè)數(shù)累加到全局變量sum中,其多線程版本簡(jiǎn)單將循環(huán)范圍改變?yōu)槊總€(gè)線程負(fù)載的范圍,存在的問(wèn)題是____。
A.負(fù)載不均
B.通信開(kāi)銷(xiāo)大
C.CPU空閑等待嚴(yán)重
D.sum累加產(chǎn)生競(jìng)爭(zhēng)條件,導(dǎo)致結(jié)果錯(cuò)誤
14.用pthread_barrier_init初始化障礙,應(yīng)提供的參數(shù)不包括____。
A.障礙對(duì)象
B.障礙初值
C.障礙屬性
D.參與的線程數(shù)
15.Flynn分類法中,下面哪種體系結(jié)構(gòu)非常適合向量/矩陣計(jì)算的并行化?
A.SISD
B.SIMD
C.MISD
D.MIMD
16.SSE intrinsics _mm_add_ps命令的功能是____。
A.寄存器間單精度浮點(diǎn)數(shù)向量加法
B.寄存器間雙精度浮點(diǎn)數(shù)向量加法
C.寄存器內(nèi)單精度浮點(diǎn)數(shù)加法
D.寄存器內(nèi)雙精度浮點(diǎn)數(shù)加法
17.采用搜索分解設(shè)計(jì)15數(shù)碼問(wèn)題的并行算法,不包含下面哪個(gè)步驟____。
A.串行生成一定規(guī)模的搜索樹(shù)
B.當(dāng)前每個(gè)葉結(jié)點(diǎn)為根的子樹(shù)搜索分配給一個(gè)處理器
C.發(fā)現(xiàn)解的處理器通知其他處理器
D.將所有處理器的結(jié)果組合成最終解
18.在用pthread_mutex_lock對(duì)互斥量進(jìn)行加鎖時(shí),若其已上鎖,則線程進(jìn)入____狀態(tài)。
A.初始化
B.阻塞
C.繼續(xù)執(zhí)行
D.銷(xiāo)毀
19.對(duì)于多線程各自進(jìn)行本地運(yùn)算,然后由主線程匯總結(jié)果的模式,下面說(shuō)法正確的是____。
A.在同構(gòu)核心上,線程運(yùn)行速度一樣,主線程無(wú)需等待,直接匯總結(jié)果即可
B.線程運(yùn)行速度可能不一致,必須采用同步保證主線程匯總正確結(jié)果
C.太多本地運(yùn)算,不能體現(xiàn)并行效果,不是好的模式
D.主線程匯總結(jié)果在性能上必然不如多線程并行匯總結(jié)果
20.SSE intrinsics _mm_hadd_ps命令的功能是____。
A.寄存器間單精度浮點(diǎn)數(shù)向量加法
B.寄存器間雙精度浮點(diǎn)數(shù)向量加法
C.寄存器內(nèi)單精度浮點(diǎn)數(shù)加法
D.寄存器內(nèi)雙精度浮點(diǎn)數(shù)加法
21.OpenMP程序和Pthread程序中線程獲得自身編號(hào)的方式分別是____。
A.兩者均為創(chuàng)建線程時(shí)傳遞參數(shù)
B.兩者均通過(guò)特定API
C.前者創(chuàng)建線程時(shí)傳遞參數(shù),后者通過(guò)特定API
D.前者通過(guò)特定API,后者創(chuàng)建線程時(shí)傳遞參數(shù)
22.對(duì)單精度浮點(diǎn)數(shù)矩陣乘法程序進(jìn)行SSE并行化,預(yù)期加速比為_(kāi)___。
A.等于8
B.4到8之間
C.等于4
D.小于4
23.對(duì)單精度浮點(diǎn)計(jì)算,MMX最高實(shí)現(xiàn)____路并行。
A.2
B.4
C.8
D.16
24.OpenMP編譯指示的作用范圍是____。
A.其后一個(gè)語(yǔ)句
B.其后連續(xù)語(yǔ)句
C.其后直到函數(shù)結(jié)束
D.整個(gè)函數(shù)
25.SIMD并行化相對(duì)于串行執(zhí)行的額外開(kāi)銷(xiāo)不包括____。
A.數(shù)據(jù)打包/解包
B.數(shù)據(jù)傳輸
C.數(shù)據(jù)對(duì)齊
D.控制流
26.pthread_rwlock_rdlock是對(duì)讀寫(xiě)鎖進(jìn)行____操作。
A.加鎖
B.解鎖
C.加讀瑣
D.加寫(xiě)鎖
27.使用一個(gè)信號(hào)量實(shí)現(xiàn)“主線程等待4個(gè)從線程完成任務(wù)”,信號(hào)量初始值應(yīng)設(shè)置為_(kāi)___。
A.0
B.1
C.2
D.4
28.數(shù)據(jù)依賴是指必須保持兩個(gè)內(nèi)存操作的____才能保證程序結(jié)果正確。
A.大小
B.時(shí)序
C.時(shí)長(zhǎng)
D.cache局部性
29.在條件成立時(shí)使用pthread_cond_signal____。
A.喚醒等待線程
B.解鎖互斥量
C.加鎖互斥量
D.喚醒等待線程,該線程重新加鎖互斥量
30.主線程要求從線程退出應(yīng)采用____。
A.pthread_create
B.pthread_exit
C.pthread_quit
D.pthread_cancel
31.如果運(yùn)算結(jié)果要保存到獨(dú)立無(wú)關(guān)的變量,則在向量運(yùn)算之后需要進(jìn)行的一個(gè)操作是____。
A.對(duì)齊
B.打包
C.解包
D.以上皆錯(cuò)
32.當(dāng)前CPU性能提升已從依賴時(shí)鐘頻率提升轉(zhuǎn)為更多依賴____。
A.多核和眾核技術(shù)
B.突破物理局限
C.改善散熱
D.采用新材料
33.在使用條件變量之前必須對(duì)其進(jìn)行____。
A.初始化
B.加鎖
C.解鎖
D.銷(xiāo)毀
34.在SSE intrinsics程序中單精度浮點(diǎn)數(shù)數(shù)據(jù)類型是____。
A.__m128
B.__m128f
C.__m128d
D.__m128i
35.將t個(gè)線程的局部結(jié)果匯總,可采用遞歸分解并行進(jìn)行,即,兩兩匯總,中間結(jié)果繼續(xù)兩兩匯總,直到剩下唯一的最終結(jié)果,其時(shí)間復(fù)雜度為_(kāi)___。
A.Θ(1)
B.Θ(logt)
C.Θ(t)
D.Θ(tlogt)
36.對(duì)劃分輸入數(shù)據(jù)的策略,下面說(shuō)法錯(cuò)誤的是____。
A.當(dāng)輸出數(shù)據(jù)很少時(shí),需劃分輸入數(shù)據(jù)
B.當(dāng)輸出數(shù)據(jù)存在依賴時(shí),需劃分輸入數(shù)據(jù)
C.通常最后需要匯總結(jié)果
D.由于不是直接劃分輸出數(shù)據(jù),性能會(huì)很差
37.推動(dòng)GPU應(yīng)用于通用高性能計(jì)算爆發(fā)式增長(zhǎng)的開(kāi)發(fā)工具是____。
A.OpenGL
B.OpenCL
C.DirectX
D.CUDA
38.兩個(gè)矩陣相乘前將第二個(gè)矩陣轉(zhuǎn)置,是使用利用數(shù)據(jù)訪問(wèn)的_____達(dá)到更高的cache命中率。
A.時(shí)間局部性
B.空間局部性
C.計(jì)算局部性
D.混合局部性
39.如果運(yùn)算對(duì)象是獨(dú)立無(wú)關(guān)的變量,則在向量運(yùn)算之前需____。
A.將變量拷貝到連續(xù)區(qū)域
B.將變量地址拷貝到連續(xù)區(qū)域
C.將變量逐個(gè)傳輸?shù)较蛄考拇嫫?/p>
D.以上皆錯(cuò)
40.對(duì)同一個(gè)問(wèn)題的兩個(gè)任務(wù)依賴圖G1和G2,以下哪個(gè)條件不能表明G1優(yōu)于G2____。
A.G1頂點(diǎn)權(quán)重之和小于G2
B.G1平均并發(fā)度大于G2
C.G1關(guān)鍵路徑長(zhǎng)度小于G2
D.G1頂點(diǎn)權(quán)重之和除以關(guān)鍵路徑長(zhǎng)度大于G2
41.OpenMP編譯指示是以____開(kāi)頭的。
A."#include"
B."#ifdef"
C."#pragam"
D."#else"
42.除了用于解決競(jìng)爭(zhēng)條件外,互斥量還可用于____。
A.解決共享資源競(jìng)爭(zhēng)的問(wèn)題
B.解決并發(fā)度低的問(wèn)題
C.解決通信開(kāi)銷(xiāo)大的問(wèn)題
D.解決負(fù)載不均的問(wèn)題
43.SSE的shuffle指令的8位二進(jìn)制整數(shù)參數(shù)被劃分為4個(gè)2位二進(jìn)制整數(shù)imm8[0:3],若imm8[2]=j則表示___。
A.將第一個(gè)源寄存器的第j個(gè)元素放在目標(biāo)寄存器位置2
B.將第二個(gè)源寄存器的第j個(gè)元素放在目標(biāo)寄存器位置2
C.將第一個(gè)源寄存器的第2個(gè)元素放在目標(biāo)寄存器位置2
D.將第二個(gè)源寄存器的第2個(gè)元素放在目標(biāo)寄存器位置2
44.任務(wù)依賴圖中頂點(diǎn)權(quán)重之和表示____。
A.任務(wù)數(shù)
B.任務(wù)難度
C.串行執(zhí)行時(shí)間
D.并行執(zhí)行時(shí)間
45.指定線程間劃分循環(huán)策略的OpenMP子句是____。
A.shared
B.reduction
C.schedule
D.nowait
46.超立方中相鄰節(jié)點(diǎn)二進(jìn)制編號(hào)____。
A.至少差1位
B.至多差1位
C.恰好差1位
D.差異不固定
47.對(duì)矩陣乘法進(jìn)行多線程并行化,對(duì)矩陣采用____。
A.簡(jiǎn)單均勻塊劃分即可保證負(fù)載均衡
B.循環(huán)劃分才能實(shí)現(xiàn)負(fù)載均衡
C.動(dòng)態(tài)劃分才能實(shí)現(xiàn)負(fù)載均衡
D.隨機(jī)劃分才能實(shí)現(xiàn)負(fù)載均衡
48.下面哪種架構(gòu)最適合數(shù)據(jù)并行____。
A.SISD
B.SIMD
C.MISD
D.MIMD
49.對(duì)于搜索分解,下面哪個(gè)說(shuō)法是錯(cuò)誤的_____。
A.所有子樹(shù)搜索任務(wù)都必須全部完成
B.工作量可能大于串行計(jì)算
C.工作量可能小于串行計(jì)算
D.可能產(chǎn)生超線性加速比
50.靜態(tài)任務(wù)劃分相對(duì)于動(dòng)態(tài)任務(wù)劃分的缺點(diǎn)是____。
A.可能導(dǎo)致負(fù)載不均
B.通信開(kāi)銷(xiāo)高
C.計(jì)算復(fù)復(fù)雜度高
D.任務(wù)粒度粗

