Embarrassingly parallel: Difference between revisions

Content deleted Content added
fix refs
top: trim noise words, simplify.
Line 1:
{{Short description|Parallel computing, a problem which is able to be trivially divided into parallelized tasks}}
In [[parallel computing]], an '''embarrassingly parallel''' workload or problem (also called '''embarrassingly parallelizable''', '''perfectly parallel''', '''delightfully parallel''' or '''pleasingly parallel''') is one where little or no effort is needed to separatesplit the problem into a number of parallel tasks.<ref>{{cite book|last1=Herlihy|first1=Maurice|last2=Shavit|first2=Nir|title=The Art of Multiprocessor Programming, Revised Reprint|date=2012|publisher=Elsevier|isbn=9780123977953|page=14|edition=revised|url=https://books.google.com/books?id=vfvPrSz7R7QC&q=embarrasingly|access-date=28 February 2016|quote=Some computational problems are “embarrassingly parallel”: they can easily be divided into components that can be executed concurrently.}}</ref> This is oftendue theto case where there is littleminimal or no dependency or need forupon communication between thosethe parallel tasks, or for results between them.<ref name=dbpp>Section 1.4.4 of: {{cite book
|url=http://www.mcs.anl.gov/~itf/dbpp/text/node10.html
|title=Designing and Building Parallel Programs
Line 12:
}}</ref>
 
Thus,These these are differentdiffer from [[distributed computing]] problems, thatwhich need communication between tasks, especially communication of intermediate results. They are easyeasier to perform on [[server farm]]s which lack the special infrastructure used in a true [[supercomputer]] cluster. They are thus well -suited to large, Internet-based [[volunteer computing]] platforms such as [[BOINC]], and dosuffer not sufferless from [[parallel slowdown]]. The opposite of embarrassingly parallel problems are [[inherently serial problem]]s, which cannot be parallelized at all.
 
A common example of an embarrassingly parallel problem is 3D video rendering handled by a [[graphics processing unit]], where each frame (forward method) or pixel ([[Ray tracing (graphics)|ray tracing]] method) can be handled with no interdependency.<ref name="ChalmersReinhard2011">{{cite book|author1=Alan Chalmers|author2=Erik Reinhard|author3=Tim Davis|title=Practical Parallel Rendering|url=https://books.google.com/books?id=loxhtzzG1FYC&q=%22embarrassingly+parallel%22|date=21 March 2011|publisher=CRC Press|isbn=978-1-4398-6380-0}}</ref> Some forms of [[password cracking]] are another embarrassingly parallel task that is easily distributed on [[central processing unit]]s, [[CPU core]]s, or clusters.