Compiling for locality of reference:
Parallel computers provide a large degree of computational power for programmers who are willing and able to harness it. The introduction of high-level languages and good compilers made possible the wide use of sequential machines but the lack of such tools for parallel machines hinders their widesp...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Ithaca, New York
1991
|
Schriftenreihe: | Cornell University <Ithaca, NY> / Department of Computer Science: Technical report
1195 |
Schlagworte: | |
Zusammenfassung: | Parallel computers provide a large degree of computational power for programmers who are willing and able to harness it. The introduction of high-level languages and good compilers made possible the wide use of sequential machines but the lack of such tools for parallel machines hinders their widespread acceptance and use. Programmers must address issues such as process decomposition, synchronization, and load balancing. This is a severe burden and opens the door to time-dependent bugs, such as race conditions between reads and writes which are extremely difficult to detect In this thesis, we use compile--time analysis and automatic restructuring of programs to exploit a two--level memory hierarchy. Many multiprocessor architectures can be modelled as two-level memory hierarchies, including message-passing machines such as the Intel iPSC/2. We show that such an approach can exploit data locality while avoiding the overhead associated with run-time coherence management. At the same time, it relieves the programmer from the burden of managing process decomposition and synchronization by automatically performing these tasks We discuss several message optimizations that address the issues of overhead and synchronization in message transmission. Accumulation reorganizes the computation of a commutative and associative operator to reduce message traffic. Pipelining sends a value as close to its computation as possible to increase parallelism. Vectorization of messages combines messages with the same source and the same destination to reduce overhead. Our results from experiments in parallelizing SIMPLE, a large hydrodynamics benchmark, for the Intel iPSC/2, show a speed-up within sixty to seventy percent of hand-written code |
Beschreibung: | Zugl.: Ithaca, NY, Cornell Univ., Diss., 1990 |
Beschreibung: | XII, 159 S. |
Internformat
MARC
LEADER | 00000nam a2200000 cb4500 | ||
---|---|---|---|
001 | BV010596316 | ||
003 | DE-604 | ||
005 | 19980209 | ||
007 | t | ||
008 | 960202s1991 m||| 00||| engod | ||
035 | |a (OCoLC)25776217 | ||
035 | |a (DE-599)BVBBV010596316 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-91G | ||
084 | |a DAT 383d |2 stub | ||
100 | 1 | |a Rogers, Anne M. |e Verfasser |4 aut | |
245 | 1 | 0 | |a Compiling for locality of reference |c Anne Marie Rogers |
264 | 1 | |a Ithaca, New York |c 1991 | |
300 | |a XII, 159 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 1 | |a Cornell University <Ithaca, NY> / Department of Computer Science: Technical report |v 1195 | |
500 | |a Zugl.: Ithaca, NY, Cornell Univ., Diss., 1990 | ||
520 | 3 | |a Parallel computers provide a large degree of computational power for programmers who are willing and able to harness it. The introduction of high-level languages and good compilers made possible the wide use of sequential machines but the lack of such tools for parallel machines hinders their widespread acceptance and use. Programmers must address issues such as process decomposition, synchronization, and load balancing. This is a severe burden and opens the door to time-dependent bugs, such as race conditions between reads and writes which are extremely difficult to detect | |
520 | 3 | |a In this thesis, we use compile--time analysis and automatic restructuring of programs to exploit a two--level memory hierarchy. Many multiprocessor architectures can be modelled as two-level memory hierarchies, including message-passing machines such as the Intel iPSC/2. We show that such an approach can exploit data locality while avoiding the overhead associated with run-time coherence management. At the same time, it relieves the programmer from the burden of managing process decomposition and synchronization by automatically performing these tasks | |
520 | 3 | |a We discuss several message optimizations that address the issues of overhead and synchronization in message transmission. Accumulation reorganizes the computation of a commutative and associative operator to reduce message traffic. Pipelining sends a value as close to its computation as possible to increase parallelism. Vectorization of messages combines messages with the same source and the same destination to reduce overhead. Our results from experiments in parallelizing SIMPLE, a large hydrodynamics benchmark, for the Intel iPSC/2, show a speed-up within sixty to seventy percent of hand-written code | |
650 | 4 | |a Compilers (Computer programs) | |
650 | 4 | |a Computer architecture | |
655 | 7 | |0 (DE-588)4113937-9 |a Hochschulschrift |2 gnd-content | |
810 | 2 | |a Department of Computer Science: Technical report |t Cornell University <Ithaca, NY> |v 1195 |w (DE-604)BV006185504 |9 1195 | |
999 | |a oai:aleph.bib-bvb.de:BVB01-007066635 |
Datensatz im Suchindex
_version_ | 1804125067958812672 |
---|---|
any_adam_object | |
author | Rogers, Anne M. |
author_facet | Rogers, Anne M. |
author_role | aut |
author_sort | Rogers, Anne M. |
author_variant | a m r am amr |
building | Verbundindex |
bvnumber | BV010596316 |
classification_tum | DAT 383d |
ctrlnum | (OCoLC)25776217 (DE-599)BVBBV010596316 |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>02920nam a2200361 cb4500</leader><controlfield tag="001">BV010596316</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">19980209 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">960202s1991 m||| 00||| engod</controlfield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)25776217</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV010596316</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91G</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 383d</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Rogers, Anne M.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Compiling for locality of reference</subfield><subfield code="c">Anne Marie Rogers</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Ithaca, New York</subfield><subfield code="c">1991</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XII, 159 S.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="1" ind2=" "><subfield code="a">Cornell University <Ithaca, NY> / Department of Computer Science: Technical report</subfield><subfield code="v">1195</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Zugl.: Ithaca, NY, Cornell Univ., Diss., 1990</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">Parallel computers provide a large degree of computational power for programmers who are willing and able to harness it. The introduction of high-level languages and good compilers made possible the wide use of sequential machines but the lack of such tools for parallel machines hinders their widespread acceptance and use. Programmers must address issues such as process decomposition, synchronization, and load balancing. This is a severe burden and opens the door to time-dependent bugs, such as race conditions between reads and writes which are extremely difficult to detect</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">In this thesis, we use compile--time analysis and automatic restructuring of programs to exploit a two--level memory hierarchy. Many multiprocessor architectures can be modelled as two-level memory hierarchies, including message-passing machines such as the Intel iPSC/2. We show that such an approach can exploit data locality while avoiding the overhead associated with run-time coherence management. At the same time, it relieves the programmer from the burden of managing process decomposition and synchronization by automatically performing these tasks</subfield></datafield><datafield tag="520" ind1="3" ind2=" "><subfield code="a">We discuss several message optimizations that address the issues of overhead and synchronization in message transmission. Accumulation reorganizes the computation of a commutative and associative operator to reduce message traffic. Pipelining sends a value as close to its computation as possible to increase parallelism. Vectorization of messages combines messages with the same source and the same destination to reduce overhead. Our results from experiments in parallelizing SIMPLE, a large hydrodynamics benchmark, for the Intel iPSC/2, show a speed-up within sixty to seventy percent of hand-written code</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Compilers (Computer programs)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Computer architecture</subfield></datafield><datafield tag="655" ind1=" " ind2="7"><subfield code="0">(DE-588)4113937-9</subfield><subfield code="a">Hochschulschrift</subfield><subfield code="2">gnd-content</subfield></datafield><datafield tag="810" ind1="2" ind2=" "><subfield code="a">Department of Computer Science: Technical report</subfield><subfield code="t">Cornell University <Ithaca, NY></subfield><subfield code="v">1195</subfield><subfield code="w">(DE-604)BV006185504</subfield><subfield code="9">1195</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-007066635</subfield></datafield></record></collection> |
genre | (DE-588)4113937-9 Hochschulschrift gnd-content |
genre_facet | Hochschulschrift |
id | DE-604.BV010596316 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T17:55:40Z |
institution | BVB |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-007066635 |
oclc_num | 25776217 |
open_access_boolean | |
owner | DE-91G DE-BY-TUM |
owner_facet | DE-91G DE-BY-TUM |
physical | XII, 159 S. |
publishDate | 1991 |
publishDateSearch | 1991 |
publishDateSort | 1991 |
record_format | marc |
series2 | Cornell University <Ithaca, NY> / Department of Computer Science: Technical report |
spelling | Rogers, Anne M. Verfasser aut Compiling for locality of reference Anne Marie Rogers Ithaca, New York 1991 XII, 159 S. txt rdacontent n rdamedia nc rdacarrier Cornell University <Ithaca, NY> / Department of Computer Science: Technical report 1195 Zugl.: Ithaca, NY, Cornell Univ., Diss., 1990 Parallel computers provide a large degree of computational power for programmers who are willing and able to harness it. The introduction of high-level languages and good compilers made possible the wide use of sequential machines but the lack of such tools for parallel machines hinders their widespread acceptance and use. Programmers must address issues such as process decomposition, synchronization, and load balancing. This is a severe burden and opens the door to time-dependent bugs, such as race conditions between reads and writes which are extremely difficult to detect In this thesis, we use compile--time analysis and automatic restructuring of programs to exploit a two--level memory hierarchy. Many multiprocessor architectures can be modelled as two-level memory hierarchies, including message-passing machines such as the Intel iPSC/2. We show that such an approach can exploit data locality while avoiding the overhead associated with run-time coherence management. At the same time, it relieves the programmer from the burden of managing process decomposition and synchronization by automatically performing these tasks We discuss several message optimizations that address the issues of overhead and synchronization in message transmission. Accumulation reorganizes the computation of a commutative and associative operator to reduce message traffic. Pipelining sends a value as close to its computation as possible to increase parallelism. Vectorization of messages combines messages with the same source and the same destination to reduce overhead. Our results from experiments in parallelizing SIMPLE, a large hydrodynamics benchmark, for the Intel iPSC/2, show a speed-up within sixty to seventy percent of hand-written code Compilers (Computer programs) Computer architecture (DE-588)4113937-9 Hochschulschrift gnd-content Department of Computer Science: Technical report Cornell University <Ithaca, NY> 1195 (DE-604)BV006185504 1195 |
spellingShingle | Rogers, Anne M. Compiling for locality of reference Compilers (Computer programs) Computer architecture |
subject_GND | (DE-588)4113937-9 |
title | Compiling for locality of reference |
title_auth | Compiling for locality of reference |
title_exact_search | Compiling for locality of reference |
title_full | Compiling for locality of reference Anne Marie Rogers |
title_fullStr | Compiling for locality of reference Anne Marie Rogers |
title_full_unstemmed | Compiling for locality of reference Anne Marie Rogers |
title_short | Compiling for locality of reference |
title_sort | compiling for locality of reference |
topic | Compilers (Computer programs) Computer architecture |
topic_facet | Compilers (Computer programs) Computer architecture Hochschulschrift |
volume_link | (DE-604)BV006185504 |
work_keys_str_mv | AT rogersannem compilingforlocalityofreference |