Projects


C1: Invasive Run-Time Support System (iRTSS)

Principal Investigators:

Prof. W. Schröder-Preikschat, Dr. D. Lohmann, Prof. J. Henkel, Dr. L. Bauer

Scientific Researchers:

V. Wenzel, A. Pathania, B. Oechslein, J. Schedel, C. Erhardt, G. Drescher, S. Maier, F. Schmaus

Abstract

Subproject C1 investigates operating-system support for invasive applications. It provides methods, principles and abstractions for the application-aware extension, configuration and adaptation of invasive computing systems. These are technically integrated into the invasive Run-time Support System (iRTSS), a highly scalable native operating system in close contact and constant touch with a standard Unix-like host operating system. The project works address special-purpose MPSoC-based as well as general-purpose multi/manycore machines.

The core areas of research in the first funding phase were (1) new design approaches for low-latency operating systems, (2) new methods based on aspect-oriented programming (AOP) for their static and dynamic (re-)configuration and (3) agent-based strategies for the highly scalable management of their resources. Outcome was (1) OctoPOS, a hardware-centric and lock-free parallel operating system of event-based kernel architecture, (2) an aspect-oriented generator for hardware-tailored cross-tile RPCs and (3) a protocol machine for application-centric bargaining of resource allocations.

In the second funding phase, the focus will be on partial virtualisation of selected computing resources - claim virtualisation in terms of invasive computing - to provide for multiprogramming and compensate for a temporary "invasion deficit" at the time those resources are requested. An invasion deficit may be functional or non-functional (e.g. in terms of protection, isolation, or dark silicon) and arises whenever, at the moment of invade, the number and characteristics of the resources available deviates to an intolerable degree from the resources requested. As soon as the cause for that virtualisation has ceased to exist, devirtualisation shall take place. These changes go along with the dynamic reconfiguration of iRTSS, that is, the extension as well as the contraction of the overall system structure and the replacement of individual system components ("open-heart surgery"). The objective is to "charge" applications only with self-induced system overhead in spatial and temporal respect in order to "shield" other applications from a system-induced negative impact on their non-functional properties, such as predictability. Thus, at run time, iRTSS will include only those functions that are indispensable in order to fulfil the requirements of a certain application mix at a given point in time. In the strict sense, iRTSS provides for the "invasion of its own dominion" in a controlled (and not self-destructive) manner. A central role therein is played by the strategic control when to virtualise which (real) resource and reconfigure which entity of iRTSS. The goal here is to accomplish functional transparency by an interface that allows for the specification of abstract resource demands (i.e. non-functional requirements), such as the desired degree of predictability, level of timeliness, or amount of performance for a certain computation period. Behind that interface, iRTSS then translates such semantically enriched requests into a resource allocation and assignment of a (virtual/real) claim that reflects the actual demand against the background of the current system state and, if applicable, in consideration of state changes to be expected in the near future.

Synopsis

Subproject C1 was assumed office to investigate basic system-software support for application-aware static/dynamic configuration and on-demand adaptation of the invasive computing platform - bridging the gap from invasive hardware (project area B) to invasive applications (project area D). Scientific objective was a flexible run-time system coping with massively-parallel, heterogeneous, and dynamic workloads and requirements of the envisioned invasive applications. The challenge was to map (static/dynamic) application properties to iRTSS configuration variants and to efficient instantiation schemes for i-let entities considering cross-cutting, non-functional properties (e.g. economy, timeliness). In this realm, Subproject C1 looked for (1) new design approaches for low-latency in operating systems, (2) novel AOP-inspired methods for their static and dynamic (re-)configuration, and (3) agent-based strategies for the highly scalable management of their resources.

Subproject C1's main focus now is on temporarily virtualisation of hardware resources, in particular to provide multi-programming and multi-user support. Key aspect thereby is to "virtualise on demand", that is, when requested or tolerated by the application and considered advantageous by iRTSS. This will entail a dynamically alterable iRTSS in order to fade-in and fade-out the system functions that are typically needed for virtualisation. Virtualisation enables the invasion of computational performance instead of whole processing elements. Virtualisation also facilitates transparent claim migration and online tuning of claims by the agent system. Finally, Subproject C1 will also contribute to the "dark silicon" initiative of Subproject B3 as we plan to sensitise resource management to the dynamically changing constraints imposed by high power densities.

Partial virtualisation

As projected in the previous application, iRTSS actually provides uniprogramming in a simultaneous mode, i.e. a run-time executive for parallel processing of single non-sequential programs. The current application pursues the objective to upgrade this executive by system functions for multiprogramming support. These functions include the partial virtualisation of selected computing resources - claim virtualisation in terms of invasive computing - to compensate for temporary shortcomings at the time those resources are requested. Processing element (PE), energy unit and (program) address-space range denote the types of resources that are considered most relevant in the first place. A further goal is to countermand all measures that have been "mounted" previously in the course of enabling claim virtualisation for want of resources when the cause for it has ceased to exist (devirtualisation). Purpose of these measures is less to allow for better system utilisation but rather to dynamically clear out hardware (on-demand, anticipatory) for exclusive use by applications with strict predictability requirements.

Dynamic reconfiguration

Claim virtualisation is considered as a means to an end in the provision of a versatile run-time executive that changes its exoteric as well as introversive functional and non-functional appearance depending on the (internal and external) processes it has to control. This change goes along with the dynamic reconfiguration of iRTSS, the extension as well as the contraction of the overall system structure, and the replacement of individual system components ("open-heart surgery"). The objective of this is to "charge" applications only with self-induced system overhead in spatial and temporal respect. Thus, at run time, iRTSS will offer only those functions - and include only those routines - that are indispensable in order to fulfil the requirements of a certain application mix at a given point in time. In the strict sense, iRTSS provides for the "invasion of its own dominion" in a controlled (and not self-destructive) manner. Ambition is to provide means that allow for invasion, infection and retreat at the level of abstraction of virtual machines and no longer real machines.

Strategic control

A key role is taken by the decision making on when to virtualise which (real) resource and when to reconfigure which entity of iRTSS. Decision making is carried out by the agent system, on the one hand on demand, once a request for invasion has been put down by an application program, and on the other hand in an anticipatory manner, whenever iRTSS performs system-state changes that may redound to the current application's advantage. For the acceptance of invasive computing as just refined - not only when regarding virtual, but already in case of real machines - functional transparency is essential: iRTSS must hide its (structural) complexity from higher levels, but not its features. The goal is to accomplish this by an interface that allows for the specification of abstract resource demands (i.e. quality requirements), such as the desired degree of predictability, e.g. with respect to timeliness, or the amount of performance for a certain computation period. Behind that interface, iRTSS translates such semantically enriched requests into a resource allocation and assignment of a (virtual/real) claim that reflects the actual demand against the background of the current system state and, if applicable, in consideration of state changes to be expected in the near future. The system state is influenced from the hardware level (by interactions with the dark-silicon management (subproject B3) and from changing resource demands of applications.

Scientific objective

The research question of the current application emanates from (a) the achievements of the first funding phase and (b) the existing knowledge on partial virtualisation to compensate for temporary resource shortness, on dynamic reconfiguration of kernel-level system software to adapt to resource-virtualisation measures, and on strategic control based on semantically enriched resource-allocation requests to provide for functional transparency. Our basic assumption is that the paradigm of invasive computing particularly applied to system programming is feasible and promotes system-level operating sequences needed to comply with application level predictability requirements. Based on this, the special implication a selective dynamic operating-system structure has on the (predicted) performance of invasive-parallel processes is scrutinised. Likewise, we will try to get to the bottom of the general implications this approach has for the operation of commodity manycore multiprocessor systems.

Detailed Description: OctoPOS

The system software OctoPOS acts as a broker between the X10 runtime system with its applications and the underlying hardware.

Interaction with the X10 runtime system

The OctoPOS provides an interface for mapping the different activities inside an X10 programm onto the different flavours of invasive hardware. Depending on the actual hardware configuration, this process can be partially supported dedicated hardware, for instance by the Dynamic Many-Core i-let Controller (CiC). Moreover the OctoPOS implements facilities for intra-tile, cross-tile and cross-application communication using shared memory, where available, or the invasive NoC (iNoC).

Interaction with the underlying hardware

Among the supported hardware platforms are SPARC Leon, iCore and Intel x86. In addition, it is possible to run OctoPOS as a user process within a Linux system, enabling developers to test applications with the entire invasive software stack.

A comprehensive summary of the major achievements of the first funding phase can be found by accessing Project C1 first phase website.

Publications

[1] Jörg Henkel. The triangle of power density, circuit degradation and reliability. Invited Keynote Speech, 30th IEEE International System-On-Chip Conference (SoCC 2017), Munich, Germany, September 7, 2017.
[2] A. Pathania, V. Venkataramani, M. Shafique, T. Mitra, and J. Henkel. Defragmentation of tasks in many-core architectures. ACM Transactions on Architecture and Code Optimization (TACO), 14(1):2:1–2:21, March 2017. [ DOI ]
[3] Christian Dietrich and Daniel Lohmann. OSEK-V: Application-specific rtos instantiation in hardware. In Zili Shao and Vijay Nagarajan, editors, Proceedings of LCTES '17, New York, 2017. [ DOI | .pdf ]
Keywords: Computer systems organization; Embedded systems; Real-time operating systems; Special purpose systems;
[4] Christian Dietrich, Peter Wägemann, Peter Ulbrich, and Daniel Lohmann. SysWCET: whole-system response-time analysis for fixed-priority real-time systems. In Rob Davis and Gabriel Parmer, editors, Proceedings of the 23rd Real-Time and Embedded Technology and Applications Symposium (RTAS '17), 2017. Outstanding Paper Award. [ DOI | .pdf ]
Keywords: worst-case response time, WCRT, worst-case execution time, WCET, OSEK, AutoSAR, IPET, ILP, whole-system analysis, system-state enumeration
[5] Christian Dietrich, Valentin Rothberg, Ludwig Füracker, Andreas Ziegler, and Daniel Lohmann. chash: Detection of redundant compilations via AST hashing. In USENIX Association, editor, Proceedings of the 2017 USENIX Annual Technical Conference (ATC '17), pages 527–538, 2017. Best Paper Award. [ .pdf ]
Keywords: Compiler, Optimization
[6] Stefan Reif, Timo Hönig, and Wolfgang Schröder-Preikschat. In the heat of conflict: On the synchronisation of critical sections. In Proceedings of the 20th IEEE Symposium on Real-Time Computing (ISORC 2017), pages 42–51, Washington, DC, USA, 2017. IEEE Computer Society Press. [ DOI ]
[7] Volkmar Sieh, Robert Burlacu, Timo Hönig, Heiko Janker, Phillip Raffeck, Peter Wägemann, and Wolfgang Schröder-Preikschat. An end-to-end toolchain: From automated cost modeling to static WCET and WCEC analysis. In Proceedings of the 20th IEEE Symposium on Real-Time Computing (ISORC 2017), pages 158–167, Washington, DC, USA, 2017. IEEE Computer Society Press. Best paper award. [ DOI ]
[8] Peter Wägemann, Tobias Distler, Christian Eichler, and Wolfgang Schröder-Preikschat. Benchmark generation for timing analysis. In Proceedings of the 23rd IEEE International Symposium on Real-Time and Embedded Technology and Applications (RTAS '17), pages 319–330. IEEE Computer Society Press, 2017. [ DOI ]
[9] Simon Schuster, Peter Ulbrich, Isabella Stilkerich, Christian Dietrich, and Wolfgang Schröder-Preikschat. Demystifying soft-error mitigation by control-flow checking—a new perspective on its effectiveness. In Proceedings of the 2017 International Conference on Embedded Software (EMSOFT 2017). ACM, 2017. Forthcoming.
[10] Alexander Pöppl, Marvin Damschen, Florian Schmaus, Andreas Fried, Manuel Mohr, Matthias Blankertz, Lars Bauer, Jörg Henkel, Wolfgang Schröder-Preikschat, and Michael Bader. Shallow water waves on a deep technology stack: Accelerating a finite volume tsunami model using reconfigurable hardware in invasive computing. In Euro-Par 2017: Proceedings of the 10th Workshop on UnConventional High Performance Computing (UCHPC 2017), Lecture Notes in Computer Science (LNCS). Springer, 2017.
[11] Gabor Drescher, Christoph Erhardt, Felix Freiling, Johannes Götzfried, Daniel Lohmann, Pieter Maene, Tilo Müller, Ingrid Verbauwhede, Andreas Weichslgartner, and Stefan Wildermann. Providing security on demand using invasive computing. it – Information Technology, 58(6):281–295, September 30, 2016. [ DOI ]
[12] Santiago Pagani, Lars Bauer, Qingqing Chen, Elisabeth Glocker, Frank Hannig, Andreas Herkersdorf, Heba Khdr, Anuj Pathania, Ulf Schlichtmann, Doris Schmitt-Landsiedel, Mark Sagi, Éricles Sousa, Philipp Wagner, Volker Wenzel, Thomas Wild, and Jörg Henkel. Dark silicon management: An integrated and coordinated cross-layer approach. it – Information Technology, 58(6):297–307, September 16, 2016. [ DOI ]
[13] Jürgen Teich, Michael Glaß, Sascha Roloff, Wolfgang Schröder-Preikschat, Gregor Snelting, Andreas Weichslgartner, and Stefan Wildermann. Language and compilation of parallel programs for *-predictable MPSoC execution using invasive computing. In Proceedings of the 10th IEEE International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC), pages 313–320, Lyon, France, September 2016. [ DOI ]
[14] Anuj Pathania, Vanchinathan Venkataramani, Muhammad Shafique, Tulika Mitra, and Jörg Henkel. Distributed scheduling for many-cores using cooperative game theory. In Proceedings of the 53rd Annual Design Automation Conference (DAC), pages 133:1–133:6. ACM, June 2016.
[15] Christopher Eibel, Timo Hönig, and Wolfgang Schröder-Preikschat. Energy claims at scale: Decreasing the energy demand of hpc workloads at os level. In IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pages 1114–1117, May 2016. [ DOI ]
[16] Shafaq Iqtedar, Osman Hasan, Muhammad Shafique, and Jörg Henkel. Formal probabilistic analysis of distributed resource management schemes in on-chip systems. In IEEE/ACM 19th Design, Automation and Test in Europe Conference (DATE'16), pages 930–935, March 2016.
[17] Anuj Pathania, Vanchinathan Venkataramani, Muhammad Shafique, Tulika Mitra, and Jörg Henkel. Distributed fair scheduling for many-cores. In Design Automation and Test in Europe (DATE), pages 379–384, March 2016.
[18] Johannes Götzfried, Tilo Müller, Gabor Drescher, Stefan Nürnberger, and Michael Backes. RamCrypt: Kernel-based Address Space Encryption for User-mode Processes. In 11th ACM Asia Conference on Computer and Communications Security (ASAICCS), Special Interest Group on Security, Audit and Control (SIGSAC). ACM, 2016. [ DOI | http ]
[19] A. K. Singh, M. Shafique, A. Kumar, and J. Henkel. Resource and throughput aware execution trace analysis for efficient run-time mapping on mpsocs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD), 35(1):72–85, January 2016. [ DOI ]
[20] Alexander Würstlein, Michael Gernoth, Johannes Götzfried, and Tilo Müller. Exzess: Hardware-based RAM Encryption against Physical Memory Disclosure. In Architecture of Computing Systems (ARCS'16). Springer, 2016. [ DOI | http ]
[21] Timo Hönig, Benedict Herzog, and Wolfgang Schröder-Preikschat. The narrow way: Constructive measures at operating-system level for low energy use. In Proceedings of the 30th Environmental Informatics Conference (EnviroInfo 2016), pages 329–335, 2016.
[22] A. Pathania, V. Venkataramani, M. Shafique, T. Mitra, and J. Henkel. Optimal greedy algorithm for many-core scheduling. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD), PP(99):1–1, 2016. [ DOI ]
[23] Gabor Drescher and Wolfgang Schröder-Preikschat. Adaptive memory protection for many-core systems. In Adaptive Isolation for Predictability and Security, volume 6 of Dagstuhl Reports, pages 120–153:140. Dagstuhl Publishing, 2016. [ DOI | .pdf ]
[24] Daniel Lohmann. Configurable system software. Invited Talk, University of Ulm, November 28, 2015.
[25] Timo Hönig, Christopher Eibel, Benedict Herzog, Heiko Janker, Peter Wägemann, and Wolfgang Schröder-Preikschat. Playing hare and tortoise: The FigarOS kernel for fine-grained system-level energy optimizations. In 2015 Brazilian Symposium on Computing Systems Engineering (SBESC '15), Fóz do Iguaçú, Brazil, November 2015. IEEE. [ http ]
[26] Johny Paul, Walter Stechele, Benjamin Oechslein, Christoph Erhardt, Jens Schedel, Daniel Lohmann, Wolfgang Schröder-Preikschat, Manfred Kröhnert, Tamim Asfour, Éricles R. Sousa, Vahid Lari, Frank Hannig, Jürgen Teich, Artjom Grudnitsky, Lars Bauer, and Jörg Henkel. Resource-awareness on heterogeneous MPSoCs for image processing. Journal of Systems Architecture, 61(10):668–680, November 6, 2015. [ DOI ]
[27] Wolfgang Schröder-Preikschat. Predicatbility issues in operating systems. Invited Talk, Technical University Dortmund, October 2, 2015.
[28] Daniel Lohmann. Predictability by hardware-centric operating-system design. Lecture, Sarntal Akademie, Italy, September 22, 2015.
[29] Wolfgang Schröder-Preikschat. Predicatbility in operating systems. Lecture, Sarntal Akademie, Italy, September 22, 2015.
[30] Daniel Lohmann. Adaptable system software. Invited Talk, Leibnitz-University Hanover, September 9, 2015.
[31] Peter Wägemann, Tobias Distler, Timo Hönig, Heiko Janker, Rüdiger Kapitza, and Wolfgang Schröder-Preikschat. Worst-case energy consumption analyis for energy-constrained embedded systems. In Proceedings of the 27th EUROMICRO Conference on Real-Time Systems (ECRTS 2015), pages 105–114, Lund, Sweden, July 9, 2015. [ DOI ]
[32] Peter Wägemann, Tobias Distler, Timo Hönig, Volkmar Sieh, and Wolfgang Schröder-Preikschat. GenE: A benchmark generator for WCET analysis. In Proceedings of the 15th International Workshop on Worst-Case Execution Time Analysis (WCET 2015), pages 33–43, Lund, Sweden, July 2015.
[33] Manuel Mohr, Sebastian Buchwald, Andreas Zwinkau, Christoph Erhardt, Benjamin Oechslein, Jens Schedel, and Daniel Lohmann. Cutting out the middleman: OS-level support for X10 activities. In Proceedings of the fifth ACM SIGPLAN X10 Workshop, X10 '15, pages 13–18, New York, NY, USA, June 14, 2015. ACM. [ DOI ]
[34] Timo Hönig. Plan ahead: Making energy-aware computing systems. Invited talk, ICSI, Berkeley, CA, USA, June 2015.
[35] Timo Hönig. When less is more: Invasive energy optimizations of system software. Invited talk, University of California, Berkeley, CA, USA, June 2015.
[36] Timo Hönig, Heiko Janker, and Wolfgang Schröder-Preikschat. The FigarOS operating system kernel for fine-grained system-level energy analysis. In DAC 2015 Workshop on System-to-Silicon Performance Modeling and Analysis: Power, Temperature and Reliability, San Francisco, CA, USA, June 7, 2015.
[37] Sebastian Kobbe. Scalable and Distributed Resource Management for Many-Core Systems. Dissertation, Chair for Embedded Systems (CES), Department of Computer Science, Karlsruhe Institute of Technology (KIT), Germany, May 11, 2015.
[38] Janmartin Jahn, Santiago Pagani, Sebastian Kobbe, Jian-Jia Chen, and Jörg Henkel. Runtime resource allocation for software pipelines. ACM Transactions on Parallel Computing (TOPC), 2(1):5:1–5:23, May 2015. [ DOI ]
[39] Wolfgang Schröder-Preikschat. Invasive computing: A systems-programming perspective. Invited talk, Auckland University, Auckland, New Zealand, April 10, 2015.
[40] Gabor Drescher and Wolfgang Schröder-Preikschat. Guarded sections: Structuring aid for wait-free synchronisation. Poster at the 18th IEEE Symposium on Real-Time Computing (ISORC 2015)., April 2015.
[41] Sebastian Kobbe, Lars Bauer, and Jörg Henkel. Adaptive on-the-fly application performance modeling for many cores. In Proceedings of Design, Automation and Test in Europe Conference (DATE), pages 730–735, March 2015.
[42] Daniel Lohmann. Two-dimensional tailoring of rtos kernels: Rethinking the hardware–application bridge. Invited Talk, INRIA/LIP6 Paris, January 15, 2015.
[43] Gabor Drescher and Wolfgang Schröder-Preikschat. An experiment in wait-free synchronisation of priority-controlled simultaneous processes: Guarded sections. Technical Reports CS-2015-01, Friedrich-Alexander-Universität Erlangen-Nürnberg, Department of Computer Science, Erlangen, Germany, January 2015.
[44] Gabor Drescher and Wolfgang Schröder-Preikschat. Wartefreie Synchronisation von Echtzeitprozessen mittels abgeschirmter Abschnitte. In Echtzeit 2015 — Betriebssysteme und Echtzeit, pages 59–68, Heidelberg, 2015. Springer.
[45] Gabor Drescher and Wolfgang Schröder-Preikschat. Guarded sections: Structuring aid for wait-free synchronisation. In Proceedings of the 18th IEEE Symposium on Real-Time Computing (ISORC 2015), pages 280–283, Washington, DC, USA, 2015. IEEE Computer Society Press.
[46] Wolfgang Schröder-Preikschat. Invasive computing: A systems-programming perspective. Invited talk, TU Dresden, Institute of Systems Architecture, November 7, 2014.
[47] Timo Hönig, Heiko Janker, Oliver Mihelic, Christopher Eibel, Rüdiger Kapitza, and Wolfgang Schröder-Preikschat. Proactive energy-aware programming with PEEK. In 2014 Conference on Timely Results in Operating Systems (TRIOS '14), Broomfield, CO, October 2014. USENIX Association. [ http ]
[48] Isabella Stilkerich, Michael Strotz, Christoph Erhardt, and Michael Stilkerich. RT-LAGC: Fragmentation-Tolerant Real-Time Memory Management Revisited. In Proceedings of the 12th International Workshop on Java Technologies for Real-time and Embedded Systems (JTRES '14), pages 87–96, New York, NY, USA, October 2014. ACM. [ DOI ]
[49] Isabella Stilkerich, Philip Taffner, Christoph Erhardt, Christian Dietrich, Christian Wawersich, and Michael Stilkerich. Team Up: Cooperative Memory Management in Embedded Systems. In Proceedings of the 2014 Conference on Compilers, Architectures and Synthesis for Embedded Systems (CASES'14), page Art. No. 10, New York, NY, USA, October 2014. ACM. [ DOI ]
[50] Peter Wägemann, Timo Hönig, Rüdiger Kapitza, and Wolfgang Schröder-Preikschat. Worst-case energy consumption analysis for soft and hard energy systems. 11th USENIX Symposium on Operating System Design and Implementation (OSDI '14), October 2014. Poster.
[51] Stefan Nürnberger, Gabor Drescher, Randolf Rotta, Jörg Nolte, and Wolfgang Schröder-Preikschat. Shared memory in the many-core age. In Proceedings of the International Workshop on Runtime and Operating Systems for the Many-core Era (ROME 2014), Lecture Notes in Computer Science (LNCS). Springer, August 26, 2014.
[52] Daniel Lohmann. Automatic tailoring of system software: Rethinking the application-hardware bridge. Invited talk, June 23, 2014. D. E. Shaw Research, New York City, USA.
[53] Benjamin Oechslein, Christoph Erhardt, Jens Schedel, Daniel Lohmann, and Wolfgang Schröder-Preikschat. OctoPOS: A hardware-assisted OS for many-cores, April 15, 2014. Poster.
[54] Wolfgang Schröder-Preikschat. Embedded computing systems in the multi-core era. Invited talk, University of Canterbury, Christchurch, New Zealand, March 7, 2014.
[55] Wolfgang Schröder-Preikschat. Embedded computing systems in the multi-core era. Invited talk, Victoria University of Wellington, New Zealand, February 28, 2014.
[56] Wolfgang Schröder-Preikschat. Embedded computing systems in the multi-core era. Invited talk, Multicore World 2014, Auckland, New Zealand, February 25, 2014.
[57] Janmartin Jahn. Resource Allocation for Software Pipelines in Many-core Systems. Dissertation, Chair for Embedded Systems (CES), Department of Computer Science, Karlsruhe Institute of Technology (KIT), Germany, February 13, 2014.
[58] Johny Paul, Walter Stechele, Manfred Kröhnert, Tamim Asfour, Benjamin Oechslein, Christoph Erhardt, Jens Schedel, Daniel Lohmann, and Wolfgang Schröder-Preikschat. Resource-aware harris corner detection based on adaptive pruning. In Proceedings of the Conference on Architecture of Computing Systems (ARCS), number 8350 in LNCS, pages 1–12. Springer, February 2014. [ DOI ]
[59] Daniel Danner, Rainer Müller, Wolfgang Schröder-Preikschat, Wanja Hofer, and Daniel Lohmann. Safer Sloth: Efficient, hardware-tailored memory protection. In Proceedings of the 20th IEEE International Symposium on Real-Time and Embedded Technology and Applications (RTAS '14), pages 37–47, Washington, DC, USA, 2014. IEEE Computer Society Press. [ .pdf ]
[60] Jan Heisswolf, Aurang Zaib, Andreas Zwinkau, Sebastian Kobbe, Andreas Weichslgartner, Jürgen Teich, Jörg Henkel, Gregor Snelting, Andreas Herkersdorf, and Jürgen Becker. Cap: Communication aware programming. In 51th ACM/EDAC/IEEE Design Automation Conference (DAC), pages 105:1–105:6, 2014.
[61] Wanja Hofer. Sloth: The Virtue and Vice of Latency Hiding in Hardware-Centric Operating Systems. Dissertation, Friedrich-Alexander-Universität Erlangen-Nürnberg, 2014. [ .pdf ]
[62] Rainer Müller, Daniel Danner, Wolfgang Schröder-Preikschat, and Daniel Lohmann. MultiSloth: An efficient multi-core RTOS using hardware-based scheduling. In Proceedings of the 26th Euromicro Conference on Real-Time Systems (ECRTS '14), pages 289–198, Washington, DC, USA, 2014. IEEE Computer Society Press. [ DOI ]
[63] Wolfgang Schröder-Preikschat. Embedded computing systems in the multi-core era. Invited keynote, 3rd Brazilian Symposium on Computing Systems Engineering (SBESC 2013), Niterói, Brazil, November 5, 2013.
[64] Johny Paul, Walter Stechele, Manfred Kröhnert, Tamim Asfour, Benjamin Oechslein, Christoph Erhardt, Jens Schedel, Daniel Lohmann, and Wolfgang Schröder-Preikschat. A resource-aware nearest neighbor search algorithm for K-dimensional trees. In Proceedings of the Conference on Design and Architectures for Signal and Image Processing (DASIP), pages 80–87. IEEE Computer Society Press, October 2013.
[65] Wolfgang Schröder-Preikschat. Virtuelle maschinen. Eingeladener Vortrag, INFORMATIK 2013, Workshop "`Virtualisierung: gestern, heute und morgen"', Koblenz, September 19, 2013.
[66] Jörg Henkel, Vijaykrishnan Narayanan, Sri Parameswaran, and Jürgen Teich. Run-time adaptation for highly-complex multi-core systems. In Proceedings of the IEEE International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), September 2013. [ DOI ]
[67] Gabor Drescher, Timo Hönig, Sebastian Maier, Benjamin Oechslein, and Wolfgang Schröder-Preikschat. A scalability-aware kernel executive for many-core operating systems. In Proceedings of the International Workshop on Runtime and Operating Systems for the Many-core Era (ROME 2013), Lecture Notes in Computer Science (LNCS), pages 1–10. Springer-Verlag, August 26, 2013.
[68] Janmartin Jahn, Santiago Pagani, Sebastian Kobbe, Jian-Jia Chen, and Jörg Henkel. Optimizations for configuring and mapping software pipelines in manycore. In IEEE/ACM 50th Design Automation Conference (DAC), June 2013. [ DOI ]
[69] Amit Singh, Muhammad Shafique, Akash Kumar, and Jörg Henkel. Mapping on multi/many core systems: Survey of current and emerging trends. In IEEE/ACM 50th Design Automation Conference (DAC), June 2013. [ DOI ]
[70] Janmartin Jahn and Jörg Henkel. Pipelets: Self-organizing software pipelines for many core architectures. In Proceedings of Design, Automation and Test in Europe Conference (DATE), March 2013. [ DOI ]
[71] Reinhard Tartler. Mastering Variability Challenges in Linux and related Highly-Configurable System Software. Dissertation, Friedrich-Alexander-Universität Erlangen-Nürnberg, 2013.
[72] Jürgen Teich, Wolfgang Schröder-Preikschat, and Andreas Herkersdorf. Invasive computing - common terms and granularity of invasion. CoRR, abs/1304.6067, 2013.
[73] Wanja Hofer, Daniel Danner, Rainer Müller, Fabian Scheler, Wolfgang Schröder-Preikschat, and Daniel Lohmann. Sloth on Time: Efficient hardware-based scheduling for time-triggered RTOS. In Proceedings of the 33rd IEEE International Symposium on Real-Time Systems (RTSS '12), pages 237–247. IEEE Computer Society Press, December 2012. [ DOI ]
[74] Wolfgang Schröder-Preikschat. Invasive computing: A systems-programming perspective. Invited talk, Université Pierre et Marie Curie (UPMC), Laboratoire d'Informatique de Paris (LIP6), Paris, September 28, 2012.
[75] Jürgen Teich, Andreas Weichslgartner, Benjamin Oechslein, and Wolfgang Schröder-Preikschat. Invasive computing – concepts and overheads. In Proceedings of the Forum on Specification and Design Languages (FDL), pages 193–200, September 2012.
[76] Janmartin Jahn, Sebastian Kobbe, Santiago Pagani, Jian-Jia Chen, and Jörg Henkel. Work in Progress: Malleable Software Pipelines for Efficient Many-core System Utilization. In Eric Noulard and Simon Vernhes, editors, Proceedings of the 6th Many-core Applications Research Community (MARC) Symposium, pages 30–33, Toulouse, France, July 19, 2012. ONERA, The French Aerospace Lab. [ http ]
[77] Timo Hönig, Rüdiger Kapitza, and Wolfgang Schröder-Preikschat. ProSEEP: A proactive approach to energy-aware programming, June 2012. Poster.
[78] Reinhard Tartler, Julio Sincero, Christian Dietrich, Wolfgang Schröder-Preikschat, and Daniel Lohmann. Revealing and repairing configuration inconsistencies in large-scale system software. International Journal on Software Tools for Technology Transfer (STTT), 14(5):531–551, February 2012. [ DOI ]
[79] Jörg Henkel, Andreas Herkersdorf, Lars Bauer, Thomas Wild, Michael Hübner, Ravi Kumar Pujari, Artjom Grudnitsky, Jan Heisswolf, Aurang Zaib, Benjamin Vogel, Vahid Lari, and Sebastian Kobbe. Invasive manycore architectures. In Proceedings of the 17th Asia and South Pacific Design Automation Conference (ASP-DAC), pages 193–200, January 2012. [ DOI ]
[80] Julio Sincero. Variability Bugs in System Software. Dissertation, Friedrich-Alexander-Universität Erlangen-Nürnberg, 2012.
[81] Daniel Lohmann, Olaf Spinczyk, Wanja Hofer, and Wolfgang Schröder-Preikschat. The aspect-aware design and implementation of the CiAO operating-system family. In Gary T. Leavens and Shigeru Chiba, editors, Transactions on AOSD IX, number 7271 in Lecture Notes in Computer Science, pages 168–215. Springer-Verlag, 2012. [ DOI ]
[82] Wanja Hofer, Daniel Lohmann, and Wolfgang Schröder-Preikschat. Sleepy Sloth: Threads as interrupts as threads. In Proceedings of the 32nd IEEE International Symposium on Real-Time Systems (RTSS), pages 67–77. IEEE Computer Society, December 2011. [ DOI ]
[83] Sebastian Kobbe, Lars Bauer, Jörg Henkel, Daniel Lohman, and Wolfgang Schröder-Preikschat. DistRM: Distributed resource management for on-chip many-core systems. In Proceedings of the IEEE International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), pages 119–128, October 2011. [ DOI ]
[84] Wolfgang Schröder-Preikschat. System software in the many-core era. Invited talk, Future Trends in SOC, Hasso-Plattner-Institut (HPI), Universität Potsdam, June 16, 2011.
[85] Benjamin Oechslein, Jens Schedel, Jürgen Kleinöder, Lars Bauer, Jörg Henkel, Daniel Lohmann, and Wolfgang Schröder-Preikschat. OctoPOS: A parallel operating system for invasive computing. In Ross McIlroy, Joe Sventek, Tim Harris, and Timothy Roscoe, editors, Proceedings of the International Workshop on Systems for Future Multi-Core Architectures (SFMA), volume USB Proceedings of Sixth International ACM/EuroSys European Conference on Computer Systems (EuroSys), pages 9–14. EuroSys, April 2011.
[86] Reinhard Tartler, Daniel Lohmann, Julio Cezar Rodrigues Sincero, and Wolfgang Schröder-Preikschat. Feature consistency in compile-time configurable system software. In Christoph Kirsch and Gernot Heiser, editors, Proceedings of the Sixth International ACM/EuroSys European Conference on Computer Systems (EuroSys), pages 47–60. ACM Press, April 2011. [ DOI ]
[87] J. Jahn, M.A. Al Faruque, and Jörg Henkel. CARAT: Context-aware runtime adaptive task migration for multi core architectures. In Proceedings of Design, Automation and Test in Europe Conference (DATE), pages 515–520, March 2011.
[88] Jürgen Teich, Jörg Henkel, Andreas Herkersdorf, Doris Schmitt-Landsiedel, Wolfgang Schröder-Preikschat, and Gregor Snelting. Invasive computing: An overview. In Michael Hübner and Jürgen Becker, editors, Multiprocessor System-on-Chip – Hardware Design and Tool Integration, pages 241–268. Springer, Berlin, Heidelberg, 2011. [ DOI ]
[89] Wolfgang Schröder-Preikschat. Systemsoftware im zeitalter mehrkerniger prozessoren. Vortrag, October 15, 2010. GI-Fachgruppe Betriebssysteme, IBM, Böblingen.
[90] Wolfgang Schröder-Preikschat. Systemsoftware im zeitalter mehrkerniger prozessoren. Vortrag, April 23, 2010. Innovation Forum Embedded Systems, BICC-NET, München.
[91] Wolfgang Schröder-Preikschat. Laufzeitsysteme mehrkerniger Prozessoren - Aspekte der Synchronisation in Betriebssystemen. Eingeladener Vortrag, April 13, 2010. Workshop zu Multicore Architecture and Programming Model Co-Optimization (MAPCO), TU München, Kloster Seeon.
[92] Wolfgang Schröder-Preikschat. Systemsoftware im zeitalter mehrkerniger prozessoren, December 11, 2009. Embedded Multi-Core Systems, Robert Bosch GmbH, Schwieberdingen.
[93] Wolfgang Schröder-Preikschat. Invasive Computing - Paralleles Betriebssystem einer SFB/TRR-Projektinitiative. Vortrag, November 12, 2009. GI-Fachgruppe Betriebssysteme, TU Dortmund, Universitätskolleg Bommerholz.
[94] Wolfgang Schröder-Preikschat. Systemsoftware im zeitalter mehrkerniger prozessoren. Eingeladener Vortrag, November 3, 2009. Vom Single-Core zum Multi-Core-Processing: Chancen und Herausforderungen für Eingebettete Systeme, Fraunhofer FIRST, Berlin.
[95] Jürgen Teich. Invasive algorithms and architectures. it - Information Technology, 50(5):300–310, 2008.
[96] Timo Hönig, Christopher Eibel, Rüdiger Kapitza, and Wolfgang Schröder-Preikschat. Seep: exploiting symbolic execution for energy-aware programming. ACM SIGOPS Operating Systems Review, 45(3):58–62. [ DOI ]
[97] Tiago Rogério Mück, Antônio Augusto Medeiros Fröhlich, Michael Gernoth, and Wolfgang Schröder-Preikschat. Implementing OS components in hardware using AOP. ACM SIGOPS Operating Systems Review, 46(1):64–72. Best Papers from 2011 Brazilian Symposium on Computing Systems Engineering (SBESC).
[98] Philippe Stellwag and Wolfgang Schröder-Preikschat. Challenges in real-time synchronization. In Michael McCool and Mendel Rosenblum, editors, Proceedings of the 3rd USENIX Workshop on Hot Topics in Parallelism (HotPar). USENIX Association.