Improving IBM POWER8 Performance Through Symbiotic Job Scheduling

Symbiotic job scheduling, i.e., scheduling applications that co-run well together on a core, can have a considerable impact on the performance of processors with simultaneous multithreading (SMT) cores. SMTcores share most of their microarchitectural components among the co-running applications, whi...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on parallel and distributed systems 2017-10, Vol.28 (10), p.2838-2851
Hauptverfasser: Feliu, Josue, Eyerman, Stijn, Sahuquillo, Julio, Petit, Salvador, Eeckhout, Lieven
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 2851
container_issue 10
container_start_page 2838
container_title IEEE transactions on parallel and distributed systems
container_volume 28
creator Feliu, Josue
Eyerman, Stijn
Sahuquillo, Julio
Petit, Salvador
Eeckhout, Lieven
description Symbiotic job scheduling, i.e., scheduling applications that co-run well together on a core, can have a considerable impact on the performance of processors with simultaneous multithreading (SMT) cores. SMTcores share most of their microarchitectural components among the co-running applications, which causes performance interference between them. Therefore, scheduling applications with complementary resource requirements on the same core can greatly improve the throughput of the system. This paper enhances symbiotic job scheduling for the IBM POWER8 processor. We leverage the existing cycle accounting mechanism to build an interference model that predicts symbiosis between applications. The proposed models achieve higher accuracy than previous models by predicting job symbiosis from throttled CPI stacks, i.e., CPI stacks of the applications when running in the same SMT mode to consider the statically partitioned resources, but without interference from other applications. The symbiotic scheduler uses these interference models to decide, at run-time, which applications should run on the same core or on separate cores. We prototype the symbiotic scheduler as a user-level scheduler in the Linux operating system and evaluate it on an IBM POWER8 server running multiprogram workloads. The symbiotic job scheduler significantly improves performance compared to both an agnostic random scheduler and the default Linux scheduler. Across all evaluated workloads in SMT4 mode, throughput improves by 12.4 and 5.1 percent on average over the random and Linux schedulers, respectively.
doi_str_mv 10.1109/TPDS.2017.2691708
format Article
fullrecord <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_crossref_primary_10_1109_TPDS_2017_2691708</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>7893747</ieee_id><sourcerecordid>2174468954</sourcerecordid><originalsourceid>FETCH-LOGICAL-c336t-fbece0131581d5080fb51d341739668547d5eaabd91674a7c32034b53803870d3</originalsourceid><addsrcrecordid>eNo9kMFOAjEQhhujiYg-gPHSxPPizLbdtkdEUAwGIhiPzW63C0tYil3WhLd3CcTTzOH__pl8hNwj9BBBPy1mL_NeDCh7caJRgrogHRRCRTEqdtnuwEWkY9TX5Kau1wDIBfAO6Y-rXfC_5XZJx88fdDb9Hn4qOnOh8KFKt9bRxSr4Zrmi80OVlX5fWvruMzq3K5c3m5a7JVdFuqnd3Xl2yddouBi8RZPp63jQn0SWsWQfFZmzDpChUJgLUFBkAnPGUTKdJEpwmQuXplmuMZE8lZbFwHgmmAKmJOSsSx5Pve2_P42r92btm7BtT5oYJeeJ0oK3KTylbPB1HVxhdqGs0nAwCOZoyhxNmaMpczbVMg8npnTO_eel0kxyyf4Ac3RiEg</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2174468954</pqid></control><display><type>article</type><title>Improving IBM POWER8 Performance Through Symbiotic Job Scheduling</title><source>IEEE Electronic Library (IEL)</source><creator>Feliu, Josue ; Eyerman, Stijn ; Sahuquillo, Julio ; Petit, Salvador ; Eeckhout, Lieven</creator><creatorcontrib>Feliu, Josue ; Eyerman, Stijn ; Sahuquillo, Julio ; Petit, Salvador ; Eeckhout, Lieven</creatorcontrib><description>Symbiotic job scheduling, i.e., scheduling applications that co-run well together on a core, can have a considerable impact on the performance of processors with simultaneous multithreading (SMT) cores. SMTcores share most of their microarchitectural components among the co-running applications, which causes performance interference between them. Therefore, scheduling applications with complementary resource requirements on the same core can greatly improve the throughput of the system. This paper enhances symbiotic job scheduling for the IBM POWER8 processor. We leverage the existing cycle accounting mechanism to build an interference model that predicts symbiosis between applications. The proposed models achieve higher accuracy than previous models by predicting job symbiosis from throttled CPI stacks, i.e., CPI stacks of the applications when running in the same SMT mode to consider the statically partitioned resources, but without interference from other applications. The symbiotic scheduler uses these interference models to decide, at run-time, which applications should run on the same core or on separate cores. We prototype the symbiotic scheduler as a user-level scheduler in the Linux operating system and evaluate it on an IBM POWER8 server running multiprogram workloads. The symbiotic job scheduler significantly improves performance compared to both an agnostic random scheduler and the default Linux scheduler. Across all evaluated workloads in SMT4 mode, throughput improves by 12.4 and 5.1 percent on average over the random and Linux schedulers, respectively.</description><identifier>ISSN: 1045-9219</identifier><identifier>EISSN: 1558-2183</identifier><identifier>DOI: 10.1109/TPDS.2017.2691708</identifier><identifier>CODEN: ITDSEO</identifier><language>eng</language><publisher>New York: IEEE</publisher><subject>Computer architecture ; IBM POWER8 ; Interference ; interference model ; Linux ; Mathematical models ; Message systems ; Microprocessors ; Model accuracy ; Multicore processing ; Performance enhancement ; performance estimation ; Predictive models ; Production scheduling ; Program processors ; Resource scheduling ; simultaneous multithreading (SMT) ; Stacks ; Symbiosis ; Symbiotic job scheduling ; Throughput ; Workloads</subject><ispartof>IEEE transactions on parallel and distributed systems, 2017-10, Vol.28 (10), p.2838-2851</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2017</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c336t-fbece0131581d5080fb51d341739668547d5eaabd91674a7c32034b53803870d3</citedby><cites>FETCH-LOGICAL-c336t-fbece0131581d5080fb51d341739668547d5eaabd91674a7c32034b53803870d3</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/7893747$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,780,784,796,27924,27925,54758</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/7893747$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Feliu, Josue</creatorcontrib><creatorcontrib>Eyerman, Stijn</creatorcontrib><creatorcontrib>Sahuquillo, Julio</creatorcontrib><creatorcontrib>Petit, Salvador</creatorcontrib><creatorcontrib>Eeckhout, Lieven</creatorcontrib><title>Improving IBM POWER8 Performance Through Symbiotic Job Scheduling</title><title>IEEE transactions on parallel and distributed systems</title><addtitle>TPDS</addtitle><description>Symbiotic job scheduling, i.e., scheduling applications that co-run well together on a core, can have a considerable impact on the performance of processors with simultaneous multithreading (SMT) cores. SMTcores share most of their microarchitectural components among the co-running applications, which causes performance interference between them. Therefore, scheduling applications with complementary resource requirements on the same core can greatly improve the throughput of the system. This paper enhances symbiotic job scheduling for the IBM POWER8 processor. We leverage the existing cycle accounting mechanism to build an interference model that predicts symbiosis between applications. The proposed models achieve higher accuracy than previous models by predicting job symbiosis from throttled CPI stacks, i.e., CPI stacks of the applications when running in the same SMT mode to consider the statically partitioned resources, but without interference from other applications. The symbiotic scheduler uses these interference models to decide, at run-time, which applications should run on the same core or on separate cores. We prototype the symbiotic scheduler as a user-level scheduler in the Linux operating system and evaluate it on an IBM POWER8 server running multiprogram workloads. The symbiotic job scheduler significantly improves performance compared to both an agnostic random scheduler and the default Linux scheduler. Across all evaluated workloads in SMT4 mode, throughput improves by 12.4 and 5.1 percent on average over the random and Linux schedulers, respectively.</description><subject>Computer architecture</subject><subject>IBM POWER8</subject><subject>Interference</subject><subject>interference model</subject><subject>Linux</subject><subject>Mathematical models</subject><subject>Message systems</subject><subject>Microprocessors</subject><subject>Model accuracy</subject><subject>Multicore processing</subject><subject>Performance enhancement</subject><subject>performance estimation</subject><subject>Predictive models</subject><subject>Production scheduling</subject><subject>Program processors</subject><subject>Resource scheduling</subject><subject>simultaneous multithreading (SMT)</subject><subject>Stacks</subject><subject>Symbiosis</subject><subject>Symbiotic job scheduling</subject><subject>Throughput</subject><subject>Workloads</subject><issn>1045-9219</issn><issn>1558-2183</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2017</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><recordid>eNo9kMFOAjEQhhujiYg-gPHSxPPizLbdtkdEUAwGIhiPzW63C0tYil3WhLd3CcTTzOH__pl8hNwj9BBBPy1mL_NeDCh7caJRgrogHRRCRTEqdtnuwEWkY9TX5Kau1wDIBfAO6Y-rXfC_5XZJx88fdDb9Hn4qOnOh8KFKt9bRxSr4Zrmi80OVlX5fWvruMzq3K5c3m5a7JVdFuqnd3Xl2yddouBi8RZPp63jQn0SWsWQfFZmzDpChUJgLUFBkAnPGUTKdJEpwmQuXplmuMZE8lZbFwHgmmAKmJOSsSx5Pve2_P42r92btm7BtT5oYJeeJ0oK3KTylbPB1HVxhdqGs0nAwCOZoyhxNmaMpczbVMg8npnTO_eel0kxyyf4Ac3RiEg</recordid><startdate>20171001</startdate><enddate>20171001</enddate><creator>Feliu, Josue</creator><creator>Eyerman, Stijn</creator><creator>Sahuquillo, Julio</creator><creator>Petit, Salvador</creator><creator>Eeckhout, Lieven</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><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></search><sort><creationdate>20171001</creationdate><title>Improving IBM POWER8 Performance Through Symbiotic Job Scheduling</title><author>Feliu, Josue ; Eyerman, Stijn ; Sahuquillo, Julio ; Petit, Salvador ; Eeckhout, Lieven</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c336t-fbece0131581d5080fb51d341739668547d5eaabd91674a7c32034b53803870d3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2017</creationdate><topic>Computer architecture</topic><topic>IBM POWER8</topic><topic>Interference</topic><topic>interference model</topic><topic>Linux</topic><topic>Mathematical models</topic><topic>Message systems</topic><topic>Microprocessors</topic><topic>Model accuracy</topic><topic>Multicore processing</topic><topic>Performance enhancement</topic><topic>performance estimation</topic><topic>Predictive models</topic><topic>Production scheduling</topic><topic>Program processors</topic><topic>Resource scheduling</topic><topic>simultaneous multithreading (SMT)</topic><topic>Stacks</topic><topic>Symbiosis</topic><topic>Symbiotic job scheduling</topic><topic>Throughput</topic><topic>Workloads</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Feliu, Josue</creatorcontrib><creatorcontrib>Eyerman, Stijn</creatorcontrib><creatorcontrib>Sahuquillo, Julio</creatorcontrib><creatorcontrib>Petit, Salvador</creatorcontrib><creatorcontrib>Eeckhout, Lieven</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><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_linktorsrc</fulltext></delivery><addata><au>Feliu, Josue</au><au>Eyerman, Stijn</au><au>Sahuquillo, Julio</au><au>Petit, Salvador</au><au>Eeckhout, Lieven</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Improving IBM POWER8 Performance Through Symbiotic Job Scheduling</atitle><jtitle>IEEE transactions on parallel and distributed systems</jtitle><stitle>TPDS</stitle><date>2017-10-01</date><risdate>2017</risdate><volume>28</volume><issue>10</issue><spage>2838</spage><epage>2851</epage><pages>2838-2851</pages><issn>1045-9219</issn><eissn>1558-2183</eissn><coden>ITDSEO</coden><abstract>Symbiotic job scheduling, i.e., scheduling applications that co-run well together on a core, can have a considerable impact on the performance of processors with simultaneous multithreading (SMT) cores. SMTcores share most of their microarchitectural components among the co-running applications, which causes performance interference between them. Therefore, scheduling applications with complementary resource requirements on the same core can greatly improve the throughput of the system. This paper enhances symbiotic job scheduling for the IBM POWER8 processor. We leverage the existing cycle accounting mechanism to build an interference model that predicts symbiosis between applications. The proposed models achieve higher accuracy than previous models by predicting job symbiosis from throttled CPI stacks, i.e., CPI stacks of the applications when running in the same SMT mode to consider the statically partitioned resources, but without interference from other applications. The symbiotic scheduler uses these interference models to decide, at run-time, which applications should run on the same core or on separate cores. We prototype the symbiotic scheduler as a user-level scheduler in the Linux operating system and evaluate it on an IBM POWER8 server running multiprogram workloads. The symbiotic job scheduler significantly improves performance compared to both an agnostic random scheduler and the default Linux scheduler. Across all evaluated workloads in SMT4 mode, throughput improves by 12.4 and 5.1 percent on average over the random and Linux schedulers, respectively.</abstract><cop>New York</cop><pub>IEEE</pub><doi>10.1109/TPDS.2017.2691708</doi><tpages>14</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1045-9219
ispartof IEEE transactions on parallel and distributed systems, 2017-10, Vol.28 (10), p.2838-2851
issn 1045-9219
1558-2183
language eng
recordid cdi_crossref_primary_10_1109_TPDS_2017_2691708
source IEEE Electronic Library (IEL)
subjects Computer architecture
IBM POWER8
Interference
interference model
Linux
Mathematical models
Message systems
Microprocessors
Model accuracy
Multicore processing
Performance enhancement
performance estimation
Predictive models
Production scheduling
Program processors
Resource scheduling
simultaneous multithreading (SMT)
Stacks
Symbiosis
Symbiotic job scheduling
Throughput
Workloads
title Improving IBM POWER8 Performance Through Symbiotic Job Scheduling
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-26T17%3A32%3A31IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Improving%20IBM%20POWER8%20Performance%20Through%20Symbiotic%20Job%20Scheduling&rft.jtitle=IEEE%20transactions%20on%20parallel%20and%20distributed%20systems&rft.au=Feliu,%20Josue&rft.date=2017-10-01&rft.volume=28&rft.issue=10&rft.spage=2838&rft.epage=2851&rft.pages=2838-2851&rft.issn=1045-9219&rft.eissn=1558-2183&rft.coden=ITDSEO&rft_id=info:doi/10.1109/TPDS.2017.2691708&rft_dat=%3Cproquest_RIE%3E2174468954%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2174468954&rft_id=info:pmid/&rft_ieee_id=7893747&rfr_iscdi=true