000 | 03495nam a22004935i 4500 | ||
---|---|---|---|
001 | 978-3-031-01736-0 | ||
003 | DE-He213 | ||
005 | 20240730163432.0 | ||
007 | cr nn 008mamaa | ||
008 | 220601s2012 sz | s |||| 0|eng d | ||
020 |
_a9783031017360 _9978-3-031-01736-0 |
||
024 | 7 |
_a10.1007/978-3-031-01736-0 _2doi |
|
050 | 4 | _aTK7867-7867.5 | |
072 | 7 |
_aTJFC _2bicssc |
|
072 | 7 |
_aTEC008010 _2bisacsh |
|
072 | 7 |
_aTJFC _2thema |
|
082 | 0 | 4 |
_a621.3815 _223 |
100 | 1 |
_aMidkiff, Samuel. _eauthor. _4aut _4http://id.loc.gov/vocabulary/relators/aut _978499 |
|
245 | 1 | 0 |
_aAutomatic Parallelization _h[electronic resource] : _bAn Overview of Fundamental Compiler Techniques / _cby Samuel Midkiff. |
250 | _a1st ed. 2012. | ||
264 | 1 |
_aCham : _bSpringer International Publishing : _bImprint: Springer, _c2012. |
|
300 |
_aXII, 157 p. _bonline resource. |
||
336 |
_atext _btxt _2rdacontent |
||
337 |
_acomputer _bc _2rdamedia |
||
338 |
_aonline resource _bcr _2rdacarrier |
||
347 |
_atext file _bPDF _2rda |
||
490 | 1 |
_aSynthesis Lectures on Computer Architecture, _x1935-3243 |
|
505 | 0 | _aIntroduction and overview -- Dependence analysis, dependence graphs and alias analysis -- Program parallelization -- Transformations to modify and eliminate dependences -- Transformation of iterative and recursive constructs -- Compiling for distributed memory machines -- Solving Diophantine equations -- A guide to further reading. | |
520 | _aCompiling for parallelism is a longstanding topic of compiler research. This book describes the fundamental principles of compiling "regular" numerical programs for parallelism. We begin with an explanation of analyses that allow a compiler to understand the interaction of data reads and writes in different statements and loop iterations during program execution. These analyses include dependence analysis, use-def analysis and pointer analysis. Next, we describe how the results of these analyses are used to enable transformations that make loops more amenable to parallelization, and discuss transformations that expose parallelism to target shared memory multicore and vector processors. We then discuss some problems that arise when parallelizing programs for execution on distributed memory machines. Finally, we conclude with an overview of solving Diophantine equations and suggestions for further readings in the topics of this book to enable the interested reader to delve deeper into the field. Table of Contents: Introduction and overview / Dependence analysis, dependence graphs and alias analysis / Program parallelization / Transformations to modify and eliminate dependences / Transformation of iterative and recursive constructs / Compiling for distributed memory machines / Solving Diophantine equations / A guide to further reading. | ||
650 | 0 |
_aElectronic circuits. _919581 |
|
650 | 0 |
_aMicroprocessors. _978500 |
|
650 | 0 |
_aComputer architecture. _93513 |
|
650 | 1 | 4 |
_aElectronic Circuits and Systems. _978501 |
650 | 2 | 4 |
_aProcessor Architectures. _978502 |
710 | 2 |
_aSpringerLink (Online service) _978503 |
|
773 | 0 | _tSpringer Nature eBook | |
776 | 0 | 8 |
_iPrinted edition: _z9783031006081 |
776 | 0 | 8 |
_iPrinted edition: _z9783031028649 |
830 | 0 |
_aSynthesis Lectures on Computer Architecture, _x1935-3243 _978504 |
|
856 | 4 | 0 | _uhttps://doi.org/10.1007/978-3-031-01736-0 |
912 | _aZDB-2-SXSC | ||
942 | _cEBK | ||
999 |
_c84601 _d84601 |