Skip to main content

Ano ang ipinamamahaging programming?

Ang ipinamamahaging programming ay isang anyo ng kahanay na programming o kahanay na computing.Ang parallel programming ay nagsasangkot ng mga computer at mga yunit ng computing sa loob ng mga computer na nagtatrabaho nang sabay -sabay sa isang partikular na problema, tulad ng paghula sa panahon ng tomorrows.Ang mga yunit ng computing ay maaaring maging malapit na matatagpuan at coordinated o maaaring matatagpuan bukod.Kapag ang mga yunit ng computing ay hiwalay, tinatawag itong ipinamamahaging programming.Sa ganitong senaryo, madalas na ang mga yunit ng computing ay naiiba sa isa't isa, at ang operating system at pag -setup ng network ay naiiba din, paggawa ng pagprograma ng aktibidad ng computing partikular na mapaghamong.Hatiin upang ang mga bahagi ng programa ay maaaring tumakbo sa iba't ibang mga yunit ng computing;Ang mga bahaging ito ay madalas na tinatawag na mga proseso.Ang mga proseso ay tumatakbo nang sabay -sabay ngunit kailangang makipag -usap sa mga input at mga resulta sa isa't isa.Kung ang mga proseso ay tumatakbo sa iba't ibang mga hardware, tulad ng isang bahagi na tumatakbo sa Intel at isa pang tumatakbo sa araw, kung gayon ang mga programa ay kailangang maipon at nai -optimize nang naiiba., at magkaroon ng iba't ibang mga yunit ng computing sa iba't ibang mga bahagi gamit ang parehong algorithm, ang hanay ng mga patakaran o hakbang para sa paglutas ng problema.Halimbawa, upang i -crack ang isang genome ng 10,000 pares, ang unang 1,000 pares ay maaaring italaga sa unang yunit ng computing, ang pangalawang 1,000 pares na itinalaga sa pangalawang yunit ng computing at iba pa, lahat ay gumagamit ng parehong algorithm.Sa ipinamamahaging programming, ang isang kalamangan ay ang iba't ibang mga yunit ng computing ay maaaring magpatakbo ng iba't ibang mga algorithm upang malutas ang parehong problema, sa gayon ay humahantong sa isang makabuluhang mas mahusay na solusyon.Ito ay katulad ng paglutas ng isang jigsaw puzzle kasama ang ilang mga tao na pinagsama ang hangganan habang ang iba ay pinagsama ang mga piraso ng isang partikular na kulay.

Ang koordinasyon ng mga ipinamamahaging proseso ng computing ay maaaring maging isang mahirap na gawain.Ang ilang mga yunit ng computing ay maaaring mabigo o maaaring magambala upang mahawakan ang iba pang gawain.Ang mga mensahe na naglalaman ng mga input o ang mga resulta ng pagkalkula ay maaaring mabigo na maabot ang kanilang mga patutunguhan.Kung ang mga programa ay nakasulat sa isang paraan ng NA #239; kung gayon ang pagkawala ng isang yunit ng computing o ilang mga mensahe ay maaaring maging sanhi ng pag -hang ng buong hanay ng mga computer.Ang trabaho na ginawa ng iba pang mga proseso, o, ang lahat ng mga proseso ay maaaring gumana sa isang paraan ng peer-to-peer na walang proseso na maging master.Ang ilang mga halimbawa ng mga problema na tinangka sa ipinamamahaging programming ay kinabibilangan ng pagsusuri ng geological data para sa mga mapagkukunan tulad ng petrolyo, ang pagmomolde ng mga protina at biological molekula, ang pag -crack ng mga naka -code na mensahe, at mga simulation ng militar.Ang proyekto ng SETI upang maghanap para sa matalinong extra-terrestrial na buhay mula sa mga mensahe sa radyo na natanggap ng Earth ay marahil isa sa mga kilalang halimbawa.