The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems

Models of parallel processing systems typically assume that one has [Formula Omitted] workers and jobs are split into an equal number of [Formula Omitted] tasks. Splitting jobs into [Formula Omitted] smaller tasks, i.e. using “tiny tasks”, can yield performance and stability improvements because it...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on parallel and distributed systems 2023-04, Vol.34 (4), p.1128-1144
Hauptverfasser: Bora, Stefan, Walker, Brenton, Fidler, Markus
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 1144
container_issue 4
container_start_page 1128
container_title IEEE transactions on parallel and distributed systems
container_volume 34
creator Bora, Stefan
Walker, Brenton
Fidler, Markus
description Models of parallel processing systems typically assume that one has [Formula Omitted] workers and jobs are split into an equal number of [Formula Omitted] tasks. Splitting jobs into [Formula Omitted] smaller tasks, i.e. using “tiny tasks”, can yield performance and stability improvements because it reduces the variance in the amount of work assigned to each worker, but as [Formula Omitted] increases, the overhead involved in scheduling and managing the tasks begins to overtake the performance benefit. We perform extensive experiments on the effects of task granularity on an Apache Spark cluster, and based on these, develop a four-parameter model for task and job overhead that, in simulation, produces sojourn time distributions that match those of the real system. We also present analytical results which illustrate how using tiny tasks improves the stability region of split-merge systems, and analytical bounds on the sojourn and waiting time distributions of both split-merge and single-queue fork-join systems with tiny tasks. Finally we combine the overhead model with the analytical models to produce an analytical approximation to the sojourn and waiting time distributions of systems with tiny tasks which include overhead. We also perform analogous tiny-tasks experiments on a hybrid multi-processor shared memory system based on MPI and OpenMP which has no load-balancing between nodes. Though no longer strict analytical bounds, our analytical approximations with overhead match both the Spark and MPI/OpenMP experimental results very well.
doi_str_mv 10.1109/TPDS.2022.3233712
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2786985131</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2786985131</sourcerecordid><originalsourceid>FETCH-LOGICAL-c316t-98f3c419ec4b55f3a7af200362780b6d70319e2aa897509c99c7bf386b224b923</originalsourceid><addsrcrecordid>eNotkN9LwzAcxIMoOKd_gG8BnzPzo2kT33TOKQw2WPU1fJslrrNrZ9IK_e_t2J7u4I47-CB0z-iEMaof89XresIp5xPBhcgYv0AjJqUinClxOXiaSKI509foJsYdpSyRNBkhk28dzsu6JznEn4jnAequglC2Pc4DbBxZev-EX6CC2pb1N17-ubB1sMFfLsQu4pULvgn7IXW4rPEKAlSVq_C6j63bx1t05aGK7u6sY_T5Nsun72SxnH9MnxfECpa2RCsvbMK0s0khpReQgeeUipRnihbpJqNiCDmA0pmk2mpts8ILlRacJ4XmYoweTruH0Px2LrZm13ShHi7NMJFqJZlgQ4udWjY0MQbnzSGUewi9YdQcOZojR3PkaM4cxT9FnmUS</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2786985131</pqid></control><display><type>article</type><title>The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems</title><source>IEEE Electronic Library (IEL)</source><creator>Bora, Stefan ; Walker, Brenton ; Fidler, Markus</creator><creatorcontrib>Bora, Stefan ; Walker, Brenton ; Fidler, Markus</creatorcontrib><description>Models of parallel processing systems typically assume that one has [Formula Omitted] workers and jobs are split into an equal number of [Formula Omitted] tasks. Splitting jobs into [Formula Omitted] smaller tasks, i.e. using “tiny tasks”, can yield performance and stability improvements because it reduces the variance in the amount of work assigned to each worker, but as [Formula Omitted] increases, the overhead involved in scheduling and managing the tasks begins to overtake the performance benefit. We perform extensive experiments on the effects of task granularity on an Apache Spark cluster, and based on these, develop a four-parameter model for task and job overhead that, in simulation, produces sojourn time distributions that match those of the real system. We also present analytical results which illustrate how using tiny tasks improves the stability region of split-merge systems, and analytical bounds on the sojourn and waiting time distributions of both split-merge and single-queue fork-join systems with tiny tasks. Finally we combine the overhead model with the analytical models to produce an analytical approximation to the sojourn and waiting time distributions of systems with tiny tasks which include overhead. We also perform analogous tiny-tasks experiments on a hybrid multi-processor shared memory system based on MPI and OpenMP which has no load-balancing between nodes. Though no longer strict analytical bounds, our analytical approximations with overhead match both the Spark and MPI/OpenMP experimental results very well.</description><identifier>ISSN: 1045-9219</identifier><identifier>EISSN: 1558-2183</identifier><identifier>DOI: 10.1109/TPDS.2022.3233712</identifier><language>eng</language><publisher>New York: The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</publisher><subject>Approximation ; Hybrid systems ; Mathematical models ; Microprocessors ; Multiprocessing ; Parallel processing ; Stability analysis ; Task scheduling</subject><ispartof>IEEE transactions on parallel and distributed systems, 2023-04, Vol.34 (4), p.1128-1144</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2023</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c316t-98f3c419ec4b55f3a7af200362780b6d70319e2aa897509c99c7bf386b224b923</citedby><cites>FETCH-LOGICAL-c316t-98f3c419ec4b55f3a7af200362780b6d70319e2aa897509c99c7bf386b224b923</cites><orcidid>0000-0003-3490-6399 ; 0000-0002-2009-0344</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,778,782,27911,27912</link.rule.ids></links><search><creatorcontrib>Bora, Stefan</creatorcontrib><creatorcontrib>Walker, Brenton</creatorcontrib><creatorcontrib>Fidler, Markus</creatorcontrib><title>The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems</title><title>IEEE transactions on parallel and distributed systems</title><description>Models of parallel processing systems typically assume that one has [Formula Omitted] workers and jobs are split into an equal number of [Formula Omitted] tasks. Splitting jobs into [Formula Omitted] smaller tasks, i.e. using “tiny tasks”, can yield performance and stability improvements because it reduces the variance in the amount of work assigned to each worker, but as [Formula Omitted] increases, the overhead involved in scheduling and managing the tasks begins to overtake the performance benefit. We perform extensive experiments on the effects of task granularity on an Apache Spark cluster, and based on these, develop a four-parameter model for task and job overhead that, in simulation, produces sojourn time distributions that match those of the real system. We also present analytical results which illustrate how using tiny tasks improves the stability region of split-merge systems, and analytical bounds on the sojourn and waiting time distributions of both split-merge and single-queue fork-join systems with tiny tasks. Finally we combine the overhead model with the analytical models to produce an analytical approximation to the sojourn and waiting time distributions of systems with tiny tasks which include overhead. We also perform analogous tiny-tasks experiments on a hybrid multi-processor shared memory system based on MPI and OpenMP which has no load-balancing between nodes. Though no longer strict analytical bounds, our analytical approximations with overhead match both the Spark and MPI/OpenMP experimental results very well.</description><subject>Approximation</subject><subject>Hybrid systems</subject><subject>Mathematical models</subject><subject>Microprocessors</subject><subject>Multiprocessing</subject><subject>Parallel processing</subject><subject>Stability analysis</subject><subject>Task scheduling</subject><issn>1045-9219</issn><issn>1558-2183</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2023</creationdate><recordtype>article</recordtype><recordid>eNotkN9LwzAcxIMoOKd_gG8BnzPzo2kT33TOKQw2WPU1fJslrrNrZ9IK_e_t2J7u4I47-CB0z-iEMaof89XresIp5xPBhcgYv0AjJqUinClxOXiaSKI509foJsYdpSyRNBkhk28dzsu6JznEn4jnAequglC2Pc4DbBxZev-EX6CC2pb1N17-ubB1sMFfLsQu4pULvgn7IXW4rPEKAlSVq_C6j63bx1t05aGK7u6sY_T5Nsun72SxnH9MnxfECpa2RCsvbMK0s0khpReQgeeUipRnihbpJqNiCDmA0pmk2mpts8ILlRacJ4XmYoweTruH0Px2LrZm13ShHi7NMJFqJZlgQ4udWjY0MQbnzSGUewi9YdQcOZojR3PkaM4cxT9FnmUS</recordid><startdate>20230401</startdate><enddate>20230401</enddate><creator>Bora, Stefan</creator><creator>Walker, Brenton</creator><creator>Fidler, Markus</creator><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><orcidid>https://orcid.org/0000-0003-3490-6399</orcidid><orcidid>https://orcid.org/0000-0002-2009-0344</orcidid></search><sort><creationdate>20230401</creationdate><title>The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems</title><author>Bora, Stefan ; Walker, Brenton ; Fidler, Markus</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c316t-98f3c419ec4b55f3a7af200362780b6d70319e2aa897509c99c7bf386b224b923</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2023</creationdate><topic>Approximation</topic><topic>Hybrid systems</topic><topic>Mathematical models</topic><topic>Microprocessors</topic><topic>Multiprocessing</topic><topic>Parallel processing</topic><topic>Stability analysis</topic><topic>Task scheduling</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Bora, Stefan</creatorcontrib><creatorcontrib>Walker, Brenton</creatorcontrib><creatorcontrib>Fidler, Markus</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>IEEE transactions on parallel and distributed systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Bora, Stefan</au><au>Walker, Brenton</au><au>Fidler, Markus</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems</atitle><jtitle>IEEE transactions on parallel and distributed systems</jtitle><date>2023-04-01</date><risdate>2023</risdate><volume>34</volume><issue>4</issue><spage>1128</spage><epage>1144</epage><pages>1128-1144</pages><issn>1045-9219</issn><eissn>1558-2183</eissn><abstract>Models of parallel processing systems typically assume that one has [Formula Omitted] workers and jobs are split into an equal number of [Formula Omitted] tasks. Splitting jobs into [Formula Omitted] smaller tasks, i.e. using “tiny tasks”, can yield performance and stability improvements because it reduces the variance in the amount of work assigned to each worker, but as [Formula Omitted] increases, the overhead involved in scheduling and managing the tasks begins to overtake the performance benefit. We perform extensive experiments on the effects of task granularity on an Apache Spark cluster, and based on these, develop a four-parameter model for task and job overhead that, in simulation, produces sojourn time distributions that match those of the real system. We also present analytical results which illustrate how using tiny tasks improves the stability region of split-merge systems, and analytical bounds on the sojourn and waiting time distributions of both split-merge and single-queue fork-join systems with tiny tasks. Finally we combine the overhead model with the analytical models to produce an analytical approximation to the sojourn and waiting time distributions of systems with tiny tasks which include overhead. We also perform analogous tiny-tasks experiments on a hybrid multi-processor shared memory system based on MPI and OpenMP which has no load-balancing between nodes. Though no longer strict analytical bounds, our analytical approximations with overhead match both the Spark and MPI/OpenMP experimental results very well.</abstract><cop>New York</cop><pub>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</pub><doi>10.1109/TPDS.2022.3233712</doi><tpages>17</tpages><orcidid>https://orcid.org/0000-0003-3490-6399</orcidid><orcidid>https://orcid.org/0000-0002-2009-0344</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 1045-9219
ispartof IEEE transactions on parallel and distributed systems, 2023-04, Vol.34 (4), p.1128-1144
issn 1045-9219
1558-2183
language eng
recordid cdi_proquest_journals_2786985131
source IEEE Electronic Library (IEL)
subjects Approximation
Hybrid systems
Mathematical models
Microprocessors
Multiprocessing
Parallel processing
Stability analysis
Task scheduling
title The Tiny-Tasks Granularity Trade-Off: Balancing Overhead Versus Performance in Parallel Systems
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-16T04%3A08%3A30IST&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=The%20Tiny-Tasks%20Granularity%20Trade-Off:%20Balancing%20Overhead%20Versus%20Performance%20in%20Parallel%20Systems&rft.jtitle=IEEE%20transactions%20on%20parallel%20and%20distributed%20systems&rft.au=Bora,%20Stefan&rft.date=2023-04-01&rft.volume=34&rft.issue=4&rft.spage=1128&rft.epage=1144&rft.pages=1128-1144&rft.issn=1045-9219&rft.eissn=1558-2183&rft_id=info:doi/10.1109/TPDS.2022.3233712&rft_dat=%3Cproquest_cross%3E2786985131%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=2786985131&rft_id=info:pmid/&rfr_iscdi=true