Search Results

Documents authored by Franz, Michael


Document
Accelerating Dynamically-Typed Languages on Heterogeneous Platforms Using Guards Optimization

Authors: Mohaned Qunaibit, Stefan Brunthaler, Yeoul Na, Stijn Volckaert, and Michael Franz

Published in: LIPIcs, Volume 109, 32nd European Conference on Object-Oriented Programming (ECOOP 2018)


Abstract
Scientific applications are ideal candidates for the "heterogeneous computing" paradigm, in which parts of a computation are "offloaded" to available accelerator hardware such as GPUs. However, when such applications are written in dynamic languages such as Python or R, as they increasingly are, things become less straightforward. The same flexibility that makes these languages so appealing to programmers also significantly complicates the problem of automatically and transparently partitioning a program's execution between a CPU and available accelerator hardware without having to rely on programmer annotations. A common way of handling the features of dynamic languages is by introducing speculation in conjunction with guards to ascertain the validity of assumptions made in the speculative computation. Unfortunately, a single guard violation during the execution of "offloaded" code may result in a huge performance penalty and necessitate the complete re-execution of the offloaded computation. In the case of dynamic languages, this problem is compounded by the fact that a full compiler analysis is not always possible ahead of time. This paper presents MegaGuards, a new approach for speculatively executing dynamic languages on heterogeneous platforms in a fully automatic and transparent manner. Our method translates each target loop into a single static region devoid of any dynamic type features. The dynamic parts are instead handled by a construct that we call a mega guard which checks all the speculative assumptions ahead of its corresponding static region. Notably, the advantage of MegaGuards is not limited to heterogeneous computing; because it removes guards from compute-intensive loops, the approach also improves sequential performance. We have implemented MegaGuards along with an automatic loop parallelization backend in ZipPy, a Python Virtual Machine. The results of a careful and detailed evaluation reveal very significant speedups of an order of magnitude on average with a maximum speedup of up to two orders of magnitudes when compared to the original ZipPy performance as a baseline. These results demonstrate the potential for applying heterogeneous computing to dynamic languages.

Cite as

Mohaned Qunaibit, Stefan Brunthaler, Yeoul Na, Stijn Volckaert, and Michael Franz. Accelerating Dynamically-Typed Languages on Heterogeneous Platforms Using Guards Optimization. In 32nd European Conference on Object-Oriented Programming (ECOOP 2018). Leibniz International Proceedings in Informatics (LIPIcs), Volume 109, pp. 16:1-16:29, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2018)


Copy BibTex To Clipboard

@InProceedings{qunaibit_et_al:LIPIcs.ECOOP.2018.16,
  author =	{Qunaibit, Mohaned and Brunthaler, Stefan and Na, Yeoul and Volckaert, Stijn and Franz, Michael},
  title =	{{Accelerating Dynamically-Typed Languages on Heterogeneous Platforms Using Guards Optimization}},
  booktitle =	{32nd European Conference on Object-Oriented Programming (ECOOP 2018)},
  pages =	{16:1--16:29},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-079-8},
  ISSN =	{1868-8969},
  year =	{2018},
  volume =	{109},
  editor =	{Millstein, Todd},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2018.16},
  URN =		{urn:nbn:de:0030-drops-92217},
  doi =		{10.4230/LIPIcs.ECOOP.2018.16},
  annote =	{Keywords: Type Specialization, Guards Optimization, Automatic Heterogeneous Computing, Automatic Parallelism}
}
Document
08441 Final Report – Emerging Uses and Paradigms for Dynamic Binary Translation

Authors: Erik Altman, Bruce R. Childers, Robert Cohn, Jack Davidson, Koen De Brosschere, Bjorn De Sutter, Anton M. Ertl, Michael Franz, Yuan Gu, Matthias Hauswirth, Thomas Heinz, Wei-Chung Hsu, Jens Knoop, Andreas Krall, Naveen Kumar, Jonas Maebe, Robert Muth, Xavier Rival, Erven Rohou, Roni Rosner, Mary Lou Soffa, Jens Troeger, and Christopher Vick

Published in: Dagstuhl Seminar Proceedings, Volume 8441, Emerging Uses and Paradigms for Dynamic Binary Translation (2009)


Abstract
Software designers and developers face many problems in designing, building, deploying, and maintaining cutting-edge software applications–reliability,security,performance,power,legacy code,use of multi-core platforms,and maintenance are just a few of the issues that must be considered. Many of these issues are fundamental parts of the grand challenges in computer science such as reliability and security.

Cite as

Erik Altman, Bruce R. Childers, Robert Cohn, Jack Davidson, Koen De Brosschere, Bjorn De Sutter, Anton M. Ertl, Michael Franz, Yuan Gu, Matthias Hauswirth, Thomas Heinz, Wei-Chung Hsu, Jens Knoop, Andreas Krall, Naveen Kumar, Jonas Maebe, Robert Muth, Xavier Rival, Erven Rohou, Roni Rosner, Mary Lou Soffa, Jens Troeger, and Christopher Vick. 08441 Final Report – Emerging Uses and Paradigms for Dynamic Binary Translation. In Emerging Uses and Paradigms for Dynamic Binary Translation. Dagstuhl Seminar Proceedings, Volume 8441, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2009)


Copy BibTex To Clipboard

@InProceedings{altman_et_al:DagSemProc.08441.2,
  author =	{Altman, Erik and Childers, Bruce R. and Cohn, Robert and Davidson, Jack and De Brosschere, Koen and De Sutter, Bjorn and Ertl, Anton M. and Franz, Michael and Gu, Yuan and Hauswirth, Matthias and Heinz, Thomas and Hsu, Wei-Chung and Knoop, Jens and Krall, Andreas and Kumar, Naveen and Maebe, Jonas and Muth, Robert and Rival, Xavier and Rohou, Erven and Rosner, Roni and Soffa, Mary Lou and Troeger, Jens and Vick, Christopher},
  title =	{{08441 Final Report – Emerging Uses and Paradigms for Dynamic Binary Translation}},
  booktitle =	{Emerging Uses and Paradigms for Dynamic Binary Translation},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2009},
  volume =	{8441},
  editor =	{Bruce R. Childers and Jack Davidson and Koen De Bosschere and Mary Lou Soffa},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.08441.2},
  URN =		{urn:nbn:de:0030-drops-18888},
  doi =		{10.4230/DagSemProc.08441.2},
  annote =	{Keywords: Dynamic binary translation, Virtual machines}
}
Document
A Multilevel Introspective Dynamic Optimization System For Holistic Power-Aware Computing

Authors: Vasanth Venkatachalam, Christian W. Probst, and Michael Franz

Published in: Dagstuhl Seminar Proceedings, Volume 5141, Power-aware Computing Systems (2005)


Abstract
Power consumption is rapidly becoming the dominant limiting factor for further improvements in computer design. Curiously, this applies both at the "high end" of workstations and servers and the "low end" of handheld devices and embedded computers. At the high-end, the challenge lies in dealing with exponentially growing power densities. At the low-end, there is a demand to make mobile devices more powerful and longer lasting, but battery technology is not improving at the same rate that power consumption is rising. Traditional power-management research is fragmented; techniques are being developed at specific levels, without fully exploring their synergy with other levels. Most software techniques target either operating systems or compilers but do not explore the interaction between the two layers. These techniques also have not fully explored the potential of virtual machines for power management. In contrast, we are developing a system that integrates information from multiple levels of software and hardware, connecting these levels through a communication channel. At the heart of this system are a virtual machine that compiles and dynamically profiles code, and an optimizer that reoptimizes all code, including that of applications and the virtual machine itself. We believe this introspective, holistic approach enables more informed power-management decisions.

Cite as

Vasanth Venkatachalam, Christian W. Probst, and Michael Franz. A Multilevel Introspective Dynamic Optimization System For Holistic Power-Aware Computing. In Power-aware Computing Systems. Dagstuhl Seminar Proceedings, Volume 5141, pp. 1-14, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2005)


Copy BibTex To Clipboard

@InProceedings{venkatachalam_et_al:DagSemProc.05141.3,
  author =	{Venkatachalam, Vasanth and Probst, Christian W. and Franz, Michael},
  title =	{{A Multilevel Introspective Dynamic Optimization System For Holistic Power-Aware Computing}},
  booktitle =	{Power-aware Computing Systems},
  pages =	{1--14},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2005},
  volume =	{5141},
  editor =	{Luca Benini and Ulrich Kremer and Christian W. Probst and Peter Schelkens},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.05141.3},
  URN =		{urn:nbn:de:0030-drops-3099},
  doi =		{10.4230/DagSemProc.05141.3},
  annote =	{Keywords: Power-aware Computing, Virtual Machines, Dynamic Optimization}
}
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail