Space-efficient scheduling of multithreaded computations
This paper considers the problem of scheduling dynamic parallel computations to achieve linear speedup without using significantly more space per processor than that required for a single-processor execution. Utilizing a new graph-theoretic model of multithreaded computation, execution efficiency is...
Gespeichert in:
Veröffentlicht in: | SIAM journal on computing 1998-02, Vol.27 (1), p.202-229 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 229 |
---|---|
container_issue | 1 |
container_start_page | 202 |
container_title | SIAM journal on computing |
container_volume | 27 |
creator | BLUMOFE, R. D LEISERSON, C. E |
description | This paper considers the problem of scheduling dynamic parallel computations to achieve linear speedup without using significantly more space per processor than that required for a single-processor execution. Utilizing a new graph-theoretic model of multithreaded computation, execution efficiency is quantified by three important measures: T1 is the time required for executing the computation on a 1 processor, $T_\infty$ is the time required by an infinite number of processors, and S1 is the space required to execute the computation on a 1 processor. A computation executed on P processors is time-efficient if the time is $O(T_1/P + T_\infty)$, that is, it achieves linear speedup when $P=O(T_1/T_\infty)$, and it is space-efficient if it uses O(S1P) total space, that is, the space per processor is within a constant factor of that required for a 1-processor execution. The first result derived from this model shows that there exist multithreaded computations such that no execution schedule can simultaneously achieve efficient time and efficient space. But by restricting attention to "strict" computations---those in which all arguments to a procedure must be available before the procedure can be invoked---much more positive results are obtainable. Specifically, for any strict multithreaded computation, a simple online algorithm can compute a schedule that is both time-efficient and space-efficient. Unfortunately, because the algorithm uses a global queue, the overhead of computing the schedule can be substantial. This problem is overcome by a decentralized algorithm that can compute and execute a P-processor schedule online in expected time $O(T_1/P + T_\infty\lg P)$ and worst-case space $O(S_1P\lg P)$, including overhead costs. |
doi_str_mv | 10.1137/S0097539793259471 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_919418651</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2576421601</sourcerecordid><originalsourceid>FETCH-LOGICAL-c299t-41af5b398be71edca99d8c09a5d4437700793df57ede1d306f8de4854b95cfe53</originalsourceid><addsrcrecordid>eNplULtOwzAUtRBIlMcHsEWINeAb23XuiCpeUiWGwhy59jV1lSbBdgb-nlStWJjOcJ46jN0AvwcQ-mHFOWolUKOoFEoNJ2wGHFWpAeCUzfZ0uefP2UVKW85BShAzVq8GY6kk74MN1OUi2Q25sQ3dV9H7Yje2OeRNJOPIFbbfDWM2OfRdumJn3rSJro94yT6fnz4Wr-Xy_eVt8bgsbYWYSwnGq7XAek0ayFmD6GrL0SgnpdCa82mx80qTI3CCz33tSNZKrlFZT0pcsttD7hD775FSbrb9GLupskFACfVcwSSCg8jGPqVIvhli2Jn40wBv9v80__6ZPHfHYJOsaX00nQ3pz1hVlUbJxS_DlmTC</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>919418651</pqid></control><display><type>article</type><title>Space-efficient scheduling of multithreaded computations</title><source>SIAM Journals Online</source><source>Business Source Complete</source><creator>BLUMOFE, R. D ; LEISERSON, C. E</creator><creatorcontrib>BLUMOFE, R. D ; LEISERSON, C. E</creatorcontrib><description>This paper considers the problem of scheduling dynamic parallel computations to achieve linear speedup without using significantly more space per processor than that required for a single-processor execution. Utilizing a new graph-theoretic model of multithreaded computation, execution efficiency is quantified by three important measures: T1 is the time required for executing the computation on a 1 processor, $T_\infty$ is the time required by an infinite number of processors, and S1 is the space required to execute the computation on a 1 processor. A computation executed on P processors is time-efficient if the time is $O(T_1/P + T_\infty)$, that is, it achieves linear speedup when $P=O(T_1/T_\infty)$, and it is space-efficient if it uses O(S1P) total space, that is, the space per processor is within a constant factor of that required for a 1-processor execution. The first result derived from this model shows that there exist multithreaded computations such that no execution schedule can simultaneously achieve efficient time and efficient space. But by restricting attention to "strict" computations---those in which all arguments to a procedure must be available before the procedure can be invoked---much more positive results are obtainable. Specifically, for any strict multithreaded computation, a simple online algorithm can compute a schedule that is both time-efficient and space-efficient. Unfortunately, because the algorithm uses a global queue, the overhead of computing the schedule can be substantial. This problem is overcome by a decentralized algorithm that can compute and execute a P-processor schedule online in expected time $O(T_1/P + T_\infty\lg P)$ and worst-case space $O(S_1P\lg P)$, including overhead costs.</description><identifier>ISSN: 0097-5397</identifier><identifier>EISSN: 1095-7111</identifier><identifier>DOI: 10.1137/S0097539793259471</identifier><language>eng</language><publisher>Philadelphia, PA: Society for Industrial and Applied Mathematics</publisher><subject>Algorithmics. Computability. Computer arithmetics ; Algorithms ; Applied sciences ; Computer science ; Computer science; control theory; systems ; Exact sciences and technology ; Laboratories ; Schedules ; Scheduling ; Theoretical computing</subject><ispartof>SIAM journal on computing, 1998-02, Vol.27 (1), p.202-229</ispartof><rights>1998 INIST-CNRS</rights><rights>[Copyright] © 1998 Society for Industrial and Applied Mathematics</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c299t-41af5b398be71edca99d8c09a5d4437700793df57ede1d306f8de4854b95cfe53</citedby><cites>FETCH-LOGICAL-c299t-41af5b398be71edca99d8c09a5d4437700793df57ede1d306f8de4854b95cfe53</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,3182,27922,27923</link.rule.ids><backlink>$$Uhttp://pascal-francis.inist.fr/vibad/index.php?action=getRecordDetail&idt=2227940$$DView record in Pascal Francis$$Hfree_for_read</backlink></links><search><creatorcontrib>BLUMOFE, R. D</creatorcontrib><creatorcontrib>LEISERSON, C. E</creatorcontrib><title>Space-efficient scheduling of multithreaded computations</title><title>SIAM journal on computing</title><description>This paper considers the problem of scheduling dynamic parallel computations to achieve linear speedup without using significantly more space per processor than that required for a single-processor execution. Utilizing a new graph-theoretic model of multithreaded computation, execution efficiency is quantified by three important measures: T1 is the time required for executing the computation on a 1 processor, $T_\infty$ is the time required by an infinite number of processors, and S1 is the space required to execute the computation on a 1 processor. A computation executed on P processors is time-efficient if the time is $O(T_1/P + T_\infty)$, that is, it achieves linear speedup when $P=O(T_1/T_\infty)$, and it is space-efficient if it uses O(S1P) total space, that is, the space per processor is within a constant factor of that required for a 1-processor execution. The first result derived from this model shows that there exist multithreaded computations such that no execution schedule can simultaneously achieve efficient time and efficient space. But by restricting attention to "strict" computations---those in which all arguments to a procedure must be available before the procedure can be invoked---much more positive results are obtainable. Specifically, for any strict multithreaded computation, a simple online algorithm can compute a schedule that is both time-efficient and space-efficient. Unfortunately, because the algorithm uses a global queue, the overhead of computing the schedule can be substantial. This problem is overcome by a decentralized algorithm that can compute and execute a P-processor schedule online in expected time $O(T_1/P + T_\infty\lg P)$ and worst-case space $O(S_1P\lg P)$, including overhead costs.</description><subject>Algorithmics. Computability. Computer arithmetics</subject><subject>Algorithms</subject><subject>Applied sciences</subject><subject>Computer science</subject><subject>Computer science; control theory; systems</subject><subject>Exact sciences and technology</subject><subject>Laboratories</subject><subject>Schedules</subject><subject>Scheduling</subject><subject>Theoretical computing</subject><issn>0097-5397</issn><issn>1095-7111</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>1998</creationdate><recordtype>article</recordtype><sourceid>8G5</sourceid><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GNUQQ</sourceid><sourceid>GUQSH</sourceid><sourceid>M2O</sourceid><recordid>eNplULtOwzAUtRBIlMcHsEWINeAb23XuiCpeUiWGwhy59jV1lSbBdgb-nlStWJjOcJ46jN0AvwcQ-mHFOWolUKOoFEoNJ2wGHFWpAeCUzfZ0uefP2UVKW85BShAzVq8GY6kk74MN1OUi2Q25sQ3dV9H7Yje2OeRNJOPIFbbfDWM2OfRdumJn3rSJro94yT6fnz4Wr-Xy_eVt8bgsbYWYSwnGq7XAek0ayFmD6GrL0SgnpdCa82mx80qTI3CCz33tSNZKrlFZT0pcsttD7hD775FSbrb9GLupskFACfVcwSSCg8jGPqVIvhli2Jn40wBv9v80__6ZPHfHYJOsaX00nQ3pz1hVlUbJxS_DlmTC</recordid><startdate>19980201</startdate><enddate>19980201</enddate><creator>BLUMOFE, R. D</creator><creator>LEISERSON, C. E</creator><general>Society for Industrial and Applied Mathematics</general><scope>IQODW</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7RQ</scope><scope>7WY</scope><scope>7WZ</scope><scope>7X2</scope><scope>7XB</scope><scope>87Z</scope><scope>88A</scope><scope>88F</scope><scope>88I</scope><scope>88K</scope><scope>8AL</scope><scope>8FE</scope><scope>8FG</scope><scope>8FH</scope><scope>8FK</scope><scope>8FL</scope><scope>8G5</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>ATCPS</scope><scope>AZQEC</scope><scope>BBNVY</scope><scope>BENPR</scope><scope>BEZIV</scope><scope>BGLVJ</scope><scope>BHPHI</scope><scope>CCPQU</scope><scope>D1I</scope><scope>DWQXO</scope><scope>FRNLG</scope><scope>F~G</scope><scope>GNUQQ</scope><scope>GUQSH</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K60</scope><scope>K6~</scope><scope>K7-</scope><scope>KB.</scope><scope>L.-</scope><scope>L6V</scope><scope>LK8</scope><scope>M0C</scope><scope>M0K</scope><scope>M0N</scope><scope>M1Q</scope><scope>M2O</scope><scope>M2P</scope><scope>M2T</scope><scope>M7P</scope><scope>M7S</scope><scope>MBDVC</scope><scope>P5Z</scope><scope>P62</scope><scope>PATMY</scope><scope>PDBOC</scope><scope>PQBIZ</scope><scope>PQBZA</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PTHSS</scope><scope>PYCSY</scope><scope>Q9U</scope><scope>S0W</scope><scope>U9A</scope></search><sort><creationdate>19980201</creationdate><title>Space-efficient scheduling of multithreaded computations</title><author>BLUMOFE, R. D ; LEISERSON, C. E</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c299t-41af5b398be71edca99d8c09a5d4437700793df57ede1d306f8de4854b95cfe53</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>1998</creationdate><topic>Algorithmics. Computability. Computer arithmetics</topic><topic>Algorithms</topic><topic>Applied sciences</topic><topic>Computer science</topic><topic>Computer science; control theory; systems</topic><topic>Exact sciences and technology</topic><topic>Laboratories</topic><topic>Schedules</topic><topic>Scheduling</topic><topic>Theoretical computing</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>BLUMOFE, R. D</creatorcontrib><creatorcontrib>LEISERSON, C. E</creatorcontrib><collection>Pascal-Francis</collection><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>Career & Technical Education Database</collection><collection>ABI/INFORM Collection</collection><collection>ABI/INFORM Global (PDF only)</collection><collection>Agricultural Science Collection</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>ABI/INFORM Global (Alumni Edition)</collection><collection>Biology Database (Alumni Edition)</collection><collection>Military Database (Alumni Edition)</collection><collection>Science Database (Alumni Edition)</collection><collection>Telecommunications (Alumni Edition)</collection><collection>Computing Database (Alumni Edition)</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>ProQuest Natural Science Collection</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ABI/INFORM Collection (Alumni Edition)</collection><collection>Research Library (Alumni Edition)</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>Agricultural & Environmental Science Collection</collection><collection>ProQuest Central Essentials</collection><collection>Biological Science Collection</collection><collection>ProQuest Central</collection><collection>Business Premium Collection</collection><collection>Technology Collection</collection><collection>Natural Science Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Materials Science Collection</collection><collection>ProQuest Central Korea</collection><collection>Business Premium Collection (Alumni)</collection><collection>ABI/INFORM Global (Corporate)</collection><collection>ProQuest Central Student</collection><collection>Research Library Prep</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>ProQuest Business Collection (Alumni Edition)</collection><collection>ProQuest Business Collection</collection><collection>Computer Science Database</collection><collection>Materials Science Database</collection><collection>ABI/INFORM Professional Advanced</collection><collection>ProQuest Engineering Collection</collection><collection>ProQuest Biological Science Collection</collection><collection>ABI/INFORM Global</collection><collection>Agricultural Science Database</collection><collection>Computing Database</collection><collection>Military Database</collection><collection>Research Library</collection><collection>Science Database</collection><collection>Telecommunications Database</collection><collection>Biological Science Database</collection><collection>Engineering Database</collection><collection>Research Library (Corporate)</collection><collection>Advanced Technologies & Aerospace Database</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>Environmental Science Database</collection><collection>Materials Science Collection</collection><collection>ProQuest One Business</collection><collection>ProQuest One Business (Alumni)</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>Engineering Collection</collection><collection>Environmental Science Collection</collection><collection>ProQuest Central Basic</collection><collection>DELNET Engineering & Technology Collection</collection><jtitle>SIAM journal on computing</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>BLUMOFE, R. D</au><au>LEISERSON, C. E</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Space-efficient scheduling of multithreaded computations</atitle><jtitle>SIAM journal on computing</jtitle><date>1998-02-01</date><risdate>1998</risdate><volume>27</volume><issue>1</issue><spage>202</spage><epage>229</epage><pages>202-229</pages><issn>0097-5397</issn><eissn>1095-7111</eissn><abstract>This paper considers the problem of scheduling dynamic parallel computations to achieve linear speedup without using significantly more space per processor than that required for a single-processor execution. Utilizing a new graph-theoretic model of multithreaded computation, execution efficiency is quantified by three important measures: T1 is the time required for executing the computation on a 1 processor, $T_\infty$ is the time required by an infinite number of processors, and S1 is the space required to execute the computation on a 1 processor. A computation executed on P processors is time-efficient if the time is $O(T_1/P + T_\infty)$, that is, it achieves linear speedup when $P=O(T_1/T_\infty)$, and it is space-efficient if it uses O(S1P) total space, that is, the space per processor is within a constant factor of that required for a 1-processor execution. The first result derived from this model shows that there exist multithreaded computations such that no execution schedule can simultaneously achieve efficient time and efficient space. But by restricting attention to "strict" computations---those in which all arguments to a procedure must be available before the procedure can be invoked---much more positive results are obtainable. Specifically, for any strict multithreaded computation, a simple online algorithm can compute a schedule that is both time-efficient and space-efficient. Unfortunately, because the algorithm uses a global queue, the overhead of computing the schedule can be substantial. This problem is overcome by a decentralized algorithm that can compute and execute a P-processor schedule online in expected time $O(T_1/P + T_\infty\lg P)$ and worst-case space $O(S_1P\lg P)$, including overhead costs.</abstract><cop>Philadelphia, PA</cop><pub>Society for Industrial and Applied Mathematics</pub><doi>10.1137/S0097539793259471</doi><tpages>28</tpages></addata></record> |
fulltext | fulltext |
identifier | ISSN: 0097-5397 |
ispartof | SIAM journal on computing, 1998-02, Vol.27 (1), p.202-229 |
issn | 0097-5397 1095-7111 |
language | eng |
recordid | cdi_proquest_journals_919418651 |
source | SIAM Journals Online; Business Source Complete |
subjects | Algorithmics. Computability. Computer arithmetics Algorithms Applied sciences Computer science Computer science control theory systems Exact sciences and technology Laboratories Schedules Scheduling Theoretical computing |
title | Space-efficient scheduling of multithreaded computations |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-09T23%3A07%3A26IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Space-efficient%20scheduling%20of%20multithreaded%20computations&rft.jtitle=SIAM%20journal%20on%20computing&rft.au=BLUMOFE,%20R.%20D&rft.date=1998-02-01&rft.volume=27&rft.issue=1&rft.spage=202&rft.epage=229&rft.pages=202-229&rft.issn=0097-5397&rft.eissn=1095-7111&rft_id=info:doi/10.1137/S0097539793259471&rft_dat=%3Cproquest_cross%3E2576421601%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=919418651&rft_id=info:pmid/&rfr_iscdi=true |