Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events

In this paper, we present a sophisticated mechanism that allows an application to tightly control the way I/O events are handled within the underlying operating system’s kernel. The goal is to provide an efficient user-level interface to allow applications to quickly detect and handle asynchronous I...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:High Performance Computing - HiPC 2003 2003, Vol.2913, p.490-499
Hauptverfasser: Danjean, Vincent, Namyst, Raymond
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 499
container_issue
container_start_page 490
container_title High Performance Computing - HiPC 2003
container_volume 2913
creator Danjean, Vincent
Namyst, Raymond
description In this paper, we present a sophisticated mechanism that allows an application to tightly control the way I/O events are handled within the underlying operating system’s kernel. The goal is to provide an efficient user-level interface to allow applications to quickly detect and handle asynchronous I/O events. Reactivity is obviously a crucial property for many time-critical applications. For instance, it is a major issue in distributed applications where poor reactivity to communication events may have a direct influence on the observed latency of communications, and may even impact on the whole application behavior. Our approach is based on an extension of the Scheduler Activation kernel scheduling model, originally proposed by Anderson et al. The idea is to minimize the time elapsed between the detection of an I/O event within the kernel and the scheduling of the appropriate user-level thread within the application. The progress of I/O operations still takes place in kernel space, but the scheduling decisions are taken in user space. We have implemented the core of our proposal within the Linux kernel, and the PM2 multithreading environment was ported on top of the corresponding user-level API. Our experiments demonstrate that the implementation of our kernel extensions is very efficient and that the overhead introduced by the user-level interface is very small. Moreover, the observed results show that our approach competes favorably against approaches based on the use of signals or kernel threads.
doi_str_mv 10.1007/978-3-540-24596-4_52
format Article
fullrecord <record><control><sourceid>proquest_pasca</sourceid><recordid>TN_cdi_pascalfrancis_primary_15691360</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>EBC3087395_60_509</sourcerecordid><originalsourceid>FETCH-LOGICAL-j338t-6f64d6ae492a1fdfe2fd711a83ec34574fb6997e21cdf7f6f20d221bcf39b3b3</originalsourceid><addsrcrecordid>eNotkcFuFDEMhlNaEEvZN-CQS49DkziTTLitVgtUVKpEyznKZJLulGkyJGml3niNvh5PQmZbXyz9_mzZvxH6RMlnSog8V7JroGk5aRhvlWi4btkR-gBVOQjkDVpRQWkDwNUxWlf-UCOCCXaCVgQIa5Tk8A6tVEVkx9vuPVrnfEdqUEm6Vq3QvI2hpDhNY7jFP1wKbsLXdu-Gh4PiU7zHv7JL-Ho21n3Bm4A385yisXtcIt6FvQl2Ias6jdaUMYb87-8z_umMLePjWJ4W7uL8Cu8eXSj5I3rrzZTd-jWfopuvu5vt9-by6tvFdnPZ3AF0pRFe8EEYxxUz1A_eMT9ISk0HzgJvJfe9UEo6Ru3gpReekYEx2lsPqoceTtHZy9jZZGsmn5Y1s57TeG_Sk6atUBQEqRx74XIthVuXdB_j76wp0csbdPVNg67G6oPrenlDbYLX4Sn-eXC5aLd02XpfMpPdm7m4lDWQToJqtSC6JQr-A51Th6o</addsrcrecordid><sourcetype>Index Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>EBC3087395_60_509</pqid></control><display><type>article</type><title>Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events</title><source>Springer Books</source><creator>Danjean, Vincent ; Namyst, Raymond</creator><contributor>Pinkston, Timothy Mark ; Prasanna, Viktor K</contributor><creatorcontrib>Danjean, Vincent ; Namyst, Raymond ; Pinkston, Timothy Mark ; Prasanna, Viktor K</creatorcontrib><description>In this paper, we present a sophisticated mechanism that allows an application to tightly control the way I/O events are handled within the underlying operating system’s kernel. The goal is to provide an efficient user-level interface to allow applications to quickly detect and handle asynchronous I/O events. Reactivity is obviously a crucial property for many time-critical applications. For instance, it is a major issue in distributed applications where poor reactivity to communication events may have a direct influence on the observed latency of communications, and may even impact on the whole application behavior. Our approach is based on an extension of the Scheduler Activation kernel scheduling model, originally proposed by Anderson et al. The idea is to minimize the time elapsed between the detection of an I/O event within the kernel and the scheduling of the appropriate user-level thread within the application. The progress of I/O operations still takes place in kernel space, but the scheduling decisions are taken in user space. We have implemented the core of our proposal within the Linux kernel, and the PM2 multithreading environment was ported on top of the corresponding user-level API. Our experiments demonstrate that the implementation of our kernel extensions is very efficient and that the overhead introduced by the user-level interface is very small. Moreover, the observed results show that our approach competes favorably against approaches based on the use of signals or kernel threads.</description><identifier>ISSN: 0302-9743</identifier><identifier>ISBN: 9783540206262</identifier><identifier>ISBN: 3540206264</identifier><identifier>EISSN: 1611-3349</identifier><identifier>EISBN: 3540245960</identifier><identifier>EISBN: 9783540245964</identifier><identifier>DOI: 10.1007/978-3-540-24596-4_52</identifier><identifier>OCLC: 934978458</identifier><identifier>LCCallNum: TK7895.M5</identifier><language>eng</language><publisher>Germany: Springer Berlin / Heidelberg</publisher><subject>Applied sciences ; Artificial intelligence ; Computer science; control theory; systems ; Context Switch ; Distribute Shared Memory ; Exact sciences and technology ; Pattern recognition. Digital image processing. Computational geometry ; Software ; Speech and sound recognition and synthesis. Linguistics ; System Call ; User Space ; Virtual Processor</subject><ispartof>High Performance Computing - HiPC 2003, 2003, Vol.2913, p.490-499</ispartof><rights>Springer-Verlag Berlin Heidelberg 2003</rights><rights>2004 INIST-CNRS</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Uhttps://ebookcentral.proquest.com/covers/3087395-l.jpg</thumbnail><linktopdf>$$Uhttps://link.springer.com/content/pdf/10.1007/978-3-540-24596-4_52$$EPDF$$P50$$Gspringer$$H</linktopdf><linktohtml>$$Uhttps://link.springer.com/10.1007/978-3-540-24596-4_52$$EHTML$$P50$$Gspringer$$H</linktohtml><link.rule.ids>309,310,775,776,780,785,786,789,4036,4037,27902,38232,41418,42487</link.rule.ids><backlink>$$Uhttp://pascal-francis.inist.fr/vibad/index.php?action=getRecordDetail&amp;idt=15691360$$DView record in Pascal Francis$$Hfree_for_read</backlink></links><search><contributor>Pinkston, Timothy Mark</contributor><contributor>Prasanna, Viktor K</contributor><creatorcontrib>Danjean, Vincent</creatorcontrib><creatorcontrib>Namyst, Raymond</creatorcontrib><title>Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events</title><title>High Performance Computing - HiPC 2003</title><description>In this paper, we present a sophisticated mechanism that allows an application to tightly control the way I/O events are handled within the underlying operating system’s kernel. The goal is to provide an efficient user-level interface to allow applications to quickly detect and handle asynchronous I/O events. Reactivity is obviously a crucial property for many time-critical applications. For instance, it is a major issue in distributed applications where poor reactivity to communication events may have a direct influence on the observed latency of communications, and may even impact on the whole application behavior. Our approach is based on an extension of the Scheduler Activation kernel scheduling model, originally proposed by Anderson et al. The idea is to minimize the time elapsed between the detection of an I/O event within the kernel and the scheduling of the appropriate user-level thread within the application. The progress of I/O operations still takes place in kernel space, but the scheduling decisions are taken in user space. We have implemented the core of our proposal within the Linux kernel, and the PM2 multithreading environment was ported on top of the corresponding user-level API. Our experiments demonstrate that the implementation of our kernel extensions is very efficient and that the overhead introduced by the user-level interface is very small. Moreover, the observed results show that our approach competes favorably against approaches based on the use of signals or kernel threads.</description><subject>Applied sciences</subject><subject>Artificial intelligence</subject><subject>Computer science; control theory; systems</subject><subject>Context Switch</subject><subject>Distribute Shared Memory</subject><subject>Exact sciences and technology</subject><subject>Pattern recognition. Digital image processing. Computational geometry</subject><subject>Software</subject><subject>Speech and sound recognition and synthesis. Linguistics</subject><subject>System Call</subject><subject>User Space</subject><subject>Virtual Processor</subject><issn>0302-9743</issn><issn>1611-3349</issn><isbn>9783540206262</isbn><isbn>3540206264</isbn><isbn>3540245960</isbn><isbn>9783540245964</isbn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2003</creationdate><recordtype>article</recordtype><recordid>eNotkcFuFDEMhlNaEEvZN-CQS49DkziTTLitVgtUVKpEyznKZJLulGkyJGml3niNvh5PQmZbXyz9_mzZvxH6RMlnSog8V7JroGk5aRhvlWi4btkR-gBVOQjkDVpRQWkDwNUxWlf-UCOCCXaCVgQIa5Tk8A6tVEVkx9vuPVrnfEdqUEm6Vq3QvI2hpDhNY7jFP1wKbsLXdu-Gh4PiU7zHv7JL-Ho21n3Bm4A385yisXtcIt6FvQl2Ias6jdaUMYb87-8z_umMLePjWJ4W7uL8Cu8eXSj5I3rrzZTd-jWfopuvu5vt9-by6tvFdnPZ3AF0pRFe8EEYxxUz1A_eMT9ISk0HzgJvJfe9UEo6Ru3gpReekYEx2lsPqoceTtHZy9jZZGsmn5Y1s57TeG_Sk6atUBQEqRx74XIthVuXdB_j76wp0csbdPVNg67G6oPrenlDbYLX4Sn-eXC5aLd02XpfMpPdm7m4lDWQToJqtSC6JQr-A51Th6o</recordid><startdate>2003</startdate><enddate>2003</enddate><creator>Danjean, Vincent</creator><creator>Namyst, Raymond</creator><general>Springer Berlin / Heidelberg</general><general>Springer Berlin Heidelberg</general><general>Springer</general><scope>FFUUA</scope><scope>IQODW</scope></search><sort><creationdate>2003</creationdate><title>Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events</title><author>Danjean, Vincent ; Namyst, Raymond</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-j338t-6f64d6ae492a1fdfe2fd711a83ec34574fb6997e21cdf7f6f20d221bcf39b3b3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2003</creationdate><topic>Applied sciences</topic><topic>Artificial intelligence</topic><topic>Computer science; control theory; systems</topic><topic>Context Switch</topic><topic>Distribute Shared Memory</topic><topic>Exact sciences and technology</topic><topic>Pattern recognition. Digital image processing. Computational geometry</topic><topic>Software</topic><topic>Speech and sound recognition and synthesis. Linguistics</topic><topic>System Call</topic><topic>User Space</topic><topic>Virtual Processor</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Danjean, Vincent</creatorcontrib><creatorcontrib>Namyst, Raymond</creatorcontrib><collection>ProQuest Ebook Central - Book Chapters - Demo use only</collection><collection>Pascal-Francis</collection><jtitle>High Performance Computing - HiPC 2003</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Danjean, Vincent</au><au>Namyst, Raymond</au><au>Pinkston, Timothy Mark</au><au>Prasanna, Viktor K</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events</atitle><jtitle>High Performance Computing - HiPC 2003</jtitle><date>2003</date><risdate>2003</risdate><volume>2913</volume><spage>490</spage><epage>499</epage><pages>490-499</pages><issn>0302-9743</issn><eissn>1611-3349</eissn><isbn>9783540206262</isbn><isbn>3540206264</isbn><eisbn>3540245960</eisbn><eisbn>9783540245964</eisbn><abstract>In this paper, we present a sophisticated mechanism that allows an application to tightly control the way I/O events are handled within the underlying operating system’s kernel. The goal is to provide an efficient user-level interface to allow applications to quickly detect and handle asynchronous I/O events. Reactivity is obviously a crucial property for many time-critical applications. For instance, it is a major issue in distributed applications where poor reactivity to communication events may have a direct influence on the observed latency of communications, and may even impact on the whole application behavior. Our approach is based on an extension of the Scheduler Activation kernel scheduling model, originally proposed by Anderson et al. The idea is to minimize the time elapsed between the detection of an I/O event within the kernel and the scheduling of the appropriate user-level thread within the application. The progress of I/O operations still takes place in kernel space, but the scheduling decisions are taken in user space. We have implemented the core of our proposal within the Linux kernel, and the PM2 multithreading environment was ported on top of the corresponding user-level API. Our experiments demonstrate that the implementation of our kernel extensions is very efficient and that the overhead introduced by the user-level interface is very small. Moreover, the observed results show that our approach competes favorably against approaches based on the use of signals or kernel threads.</abstract><cop>Germany</cop><pub>Springer Berlin / Heidelberg</pub><doi>10.1007/978-3-540-24596-4_52</doi><oclcid>934978458</oclcid><tpages>10</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0302-9743
ispartof High Performance Computing - HiPC 2003, 2003, Vol.2913, p.490-499
issn 0302-9743
1611-3349
language eng
recordid cdi_pascalfrancis_primary_15691360
source Springer Books
subjects Applied sciences
Artificial intelligence
Computer science
control theory
systems
Context Switch
Distribute Shared Memory
Exact sciences and technology
Pattern recognition. Digital image processing. Computational geometry
Software
Speech and sound recognition and synthesis. Linguistics
System Call
User Space
Virtual Processor
title Controlling Kernel Scheduling from User Space: An Approach to Enhancing Applications’ Reactivity to I/O Events
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-20T21%3A02%3A34IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_pasca&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Controlling%20Kernel%20Scheduling%20from%20User%20Space:%20An%20Approach%20to%20Enhancing%20Applications%E2%80%99%20Reactivity%20to%20I/O%20Events&rft.jtitle=High%20Performance%20Computing%20-%20HiPC%202003&rft.au=Danjean,%20Vincent&rft.date=2003&rft.volume=2913&rft.spage=490&rft.epage=499&rft.pages=490-499&rft.issn=0302-9743&rft.eissn=1611-3349&rft.isbn=9783540206262&rft.isbn_list=3540206264&rft_id=info:doi/10.1007/978-3-540-24596-4_52&rft_dat=%3Cproquest_pasca%3EEBC3087395_60_509%3C/proquest_pasca%3E%3Curl%3E%3C/url%3E&rft.eisbn=3540245960&rft.eisbn_list=9783540245964&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=EBC3087395_60_509&rft_id=info:pmid/&rfr_iscdi=true