openmpi多節(jié)點(diǎn)運(yùn)行 MPI和OPENMP哪個(gè)簡(jiǎn)單?
MPI和OPENMP哪個(gè)簡(jiǎn)單?OpenMP很簡(jiǎn)單,而且很容易修改現(xiàn)有的大型代碼?;旧?,OpenMP只需要在現(xiàn)有程序的基礎(chǔ)上添加并行語(yǔ)句。有時(shí)MPI甚至需要從基本的設(shè)計(jì)思想出發(fā)重寫整個(gè)程序,MPI的調(diào)
MPI和OPENMP哪個(gè)簡(jiǎn)單?
OpenMP很簡(jiǎn)單,而且很容易修改現(xiàn)有的大型代碼?;旧希琌penMP只需要在現(xiàn)有程序的基礎(chǔ)上添加并行語(yǔ)句。有時(shí)MPI甚至需要從基本的設(shè)計(jì)思想出發(fā)重寫整個(gè)程序,MPI的調(diào)試難度更大,這涉及到局域網(wǎng)通信的不確定性因素。當(dāng)然,OpenMP雖然簡(jiǎn)單,但只能用于單機(jī)多CPU/多核并行,MPI是多主機(jī)超級(jí)計(jì)算機(jī)集群的強(qiáng)大工具,當(dāng)然也很復(fù)雜。
MPI和OPENMP哪個(gè)簡(jiǎn)單?
MPI(MPI是一個(gè)標(biāo)準(zhǔn),有不同的具體實(shí)現(xiàn),如MPICH)是一個(gè)用于多主機(jī)聯(lián)網(wǎng)和并行計(jì)算協(xié)作的工具。當(dāng)然,它也可以用于單主機(jī)上的多核/多CPU并行計(jì)算,但效率較低。它可以協(xié)調(diào)多臺(tái)主機(jī)之間的并行計(jì)算,因此并行計(jì)算的規(guī)模具有很強(qiáng)的可擴(kuò)展性,它可以在超級(jí)計(jì)算機(jī)上使用,從個(gè)人電腦到世界前十名。缺點(diǎn)是利用進(jìn)程間通信來(lái)協(xié)調(diào)并行計(jì)算,導(dǎo)致并行效率低,內(nèi)存開(kāi)銷大,不直觀,編程麻煩。換言之,OpenMP更適合在一臺(tái)計(jì)算機(jī)的共享內(nèi)存結(jié)構(gòu)上進(jìn)行并行計(jì)算。由于使用線程間共享內(nèi)存來(lái)協(xié)調(diào)并行計(jì)算,因此多核/多CPU結(jié)構(gòu)效率高,內(nèi)存開(kāi)銷低,編程語(yǔ)句簡(jiǎn)單直觀,易于編程實(shí)現(xiàn)編譯器(C,C,F(xiàn)ORTRAN編譯器基本上有內(nèi)置的OpenMP支持)。然而,OpenMP最大的缺點(diǎn)是它只能在單個(gè)主機(jī)上工作,不能用于多個(gè)主機(jī)之間的并行計(jì)算!如果您想使用OpenMP進(jìn)行多主機(jī)聯(lián)網(wǎng)(如在超級(jí)計(jì)算機(jī)上),則必須借助其他工具,如MPI和OpenMP混合編程?;蛘邔⒍嗯_(tái)主機(jī)虛擬化到一個(gè)共享內(nèi)存環(huán)境中(英特爾有這樣一個(gè)平臺(tái)),但這并不像混合編程那樣高效。唯一的優(yōu)點(diǎn)是程序員不必學(xué)習(xí)MPI編程。
OpenMP和MPI的各自優(yōu)缺點(diǎn)是什么?
OpenMP和MPI是兩種并行編程方法。比較如下:OpenMP:線程級(jí)(并行粒度);共享存儲(chǔ);隱式(數(shù)據(jù)分配);可擴(kuò)展性差;MPI:進(jìn)程級(jí);分布式存儲(chǔ);顯式;可擴(kuò)展性好。OpenMP使用共享存儲(chǔ),這意味著它只適用于SMP和DSM機(jī)器,而不適用于集群。MPI適用于各種機(jī)器,但其編程模型復(fù)雜:需要對(duì)應(yīng)用問(wèn)題進(jìn)行分析和劃分,并將問(wèn)題映射到分布式進(jìn)程集;需要解決通信延遲和負(fù)載不平衡兩個(gè)主要問(wèn)題;MPI程序調(diào)試麻煩;MPI程序可靠性差,一個(gè)過(guò)程有問(wèn)題,整個(gè)程序都會(huì)出錯(cuò);第二個(gè)問(wèn)題讓人感覺(jué)很深。每次聽(tīng)我們部門平行組的匯報(bào),總聽(tīng)到他們?cè)诮鉀Q通信時(shí)延大、負(fù)載不平衡的問(wèn)題。并行算法的質(zhì)量取決于它能否解決這兩個(gè)問(wèn)題。與OpenMP和MPI相比,MapReduce有哪些優(yōu)點(diǎn)?自動(dòng)并行;容錯(cuò);MapReduce的低學(xué)習(xí)閾值。附件:SMP(對(duì)稱多處理),共享總線和內(nèi)存,單操作系統(tǒng)映像。它在軟件上是可擴(kuò)展的,但在硬件上不是。DSM(分布式共享內(nèi)存),SMP的擴(kuò)展。物理分布式存儲(chǔ);單一內(nèi)存地址空間;不一致內(nèi)存訪問(wèn);單一操作系統(tǒng)映像。