[gforth] / res / PP-compiler.tex  

gforth: res/PP-compiler.tex


1 : andi 1.1 \documentclass[11pt,a4paper]{article}
2 :     %\usepackage{latexsym}
3 :     \usepackage{url}
4 :     %\usepackage{times}
5 :     \usepackage{comment}
6 :    
7 :     \pagestyle{plain}
8 :     \setlength{\textwidth}{16truecm}
9 :     \setlength{\textheight}{24truecm}
10 :     \setlength{\oddsidemargin}{-0.3truecm}
11 :     \setlength{\evensidemargin}{-0.3truecm}
12 :     \setlength{\topmargin}{0.0truecm}
13 :     \setlength{\topskip}{0.0truecm}
14 :     \setlength{\headheight}{0.0truecm}
15 :     \setlength{\headsep}{0.0truecm}
16 :    
17 :     \newcommand{\emn}[1]{{\em #1\/}}
18 :     \newcommand{\NOTE}[1]{{\medskip\bf #1\medskip}}
19 :    
20 :     \title{\bf PP \emph{Compilation Techniques for Robust Embedded Systems}}
21 :    
22 :     \author{{\sc Ulrich Schmid}\\
23 :     s@ecs.tuwien.ac.at
24 :     }
25 :    
26 :     \bibliographystyle{unsrt}
27 :    
28 :     \begin{document}
29 :     \maketitle
30 :    
31 :     PP leader: \emph{Jens Knoop}
32 :    
33 :     Associated researchers: \emph{Andreas Krall}
34 :    
35 :    
36 :    
37 :     \subsubsection*{Motivation:}
38 :     %\emph{Informal description of the purpose of the PP (3-5 lines)}
39 :     Every embedded system consists of software which is written in a high
40 :     level language, compiled to machine language and executed on a
41 :     processor. For robust embedded systems new verified compilation
42 :     techniques are necessary to optimize for performance, power, space,
43 :     concurrency and reliability.
44 :    
45 :     \subsubsection*{State of the art and related work:}
46 :     %\emph{Briefly describe the scientific state of the art (20-30 lines)}
47 :    
48 :     Compiler Verification \cite{Hoare,1328444,1314860}
49 :    
50 :     Reliability \cite{LeeShrivastava09}
51 :    
52 :     ADL \cite{MishraDutt08}
53 :    
54 :     WCET \cite{}
55 :    
56 :     \subsubsection*{Previous achievements:}
57 :     %\emph{Brief description of your own contributions to the related
58 :     %scientific state-of-the art (5-10 lines)}
59 :     Jens Knoop has a long history on work on program analysis with topics
60 :     like partial redundancy elimination or lazy code motion
61 :     \cite{knoop:DSP:2008:1575,conf/cc/XueK06,scholz04}. Recently he
62 :     changed his research focus on worst case execution time analysis
63 :     \cite{SchrSchoKn09,Prantl:WLPE2008,prantl_et_al:DSP:2008:1661,
64 :     kirner_et_al:DSP:2008:1657,kirner_et_al:DSP:2007:1197}. He is involved
65 :     in the organization of many compiler conferences and since 2002 program
66 :     cochair of the yearly workshop on compiler optimization meets verification.
67 :    
68 :     Andreas Krall does research in the area of architecture description
69 :     languages and the automatic generation of highly optimizing compilers,
70 :     efficient instruction set simulators and hardware from one single
71 :     specification of a processor \cite{BrFeKrRi09,BrEbKr07,FaKrHo07,
72 :     FarKrStBrand06,Krall+04micro}. An important focus is on optimization
73 :     techniques for embedded processors
74 :     \cite{EbBrSchKrWiKa08,MeKr07,PrKrHo06,HiKr03} as he lead the Christian
75 :     Doppler research laboratory {\em compilation techniques for embedded
76 :     processors} with partners from industry (Infineon, OnDemand
77 :     Microelectronics).
78 :    
79 :    
80 :     \subsubsection*{Goals (first 4 years):}
81 :     %\emph{Description of the research
82 :     %topics to be addressed during the first 4 years. Make sure to explicitly
83 :     %stress what the significant additions to the scientific knowledge are,
84 :     %and why they are important. (30-40 lines)}
85 :    
86 :     New modeling and representation techniques of non-functional program and system properties on the programming and intermediate language levels
87 :     Definitions and measures of non-functional program and system properties (performance, time, space/memory, power, concurrency).
88 :     Modeling and representation of these properties alongside with the programming languages semantics
89 :     Adapting and enhancing state-of-the-art compilation techniques towards non-functional property and platform awareness
90 :     New functional and non-functional property and platform-aware compilation techniques
91 :     Analyses for non-functional program and system properties
92 :     Functional and non-functional property and platform-aware code generation techniques
93 :     Enabling validation and verification throughout the compilation process
94 :     Techniques for reducing or eliminating trusted code, annotation, etc., bases
95 :    
96 :    
97 :     \subsubsection*{Work Plan (first 4 years):}
98 :     %\emph{Brief description of how
99 :     %you intend to conduct the actual research during the first 4 years. Be sure
100 :     %to also describe and (coarsely) quantify the resources (staff, cost of
101 :     %special equipment) required for this work in a table. (20-30 lines)}
102 :    
103 :    
104 :    
105 :     (1) WCET NN!
106 :    
107 :     (2) Specification and efficient simulation of reliable processors (partial redundancy,
108 :     ECC, lockstep etc) and compiler optimizations to exploit/balance reliabiliy features.
109 :     Connection with CESAR NN2
110 :    
111 :     (3) translation verification, specification of semantics of IRs solving
112 :     subproblems. NN1 + NN2
113 :    
114 :    
115 :     \begin{tabular}{llll}
116 :     \hline
117 :     {\bf Pos} & {\bf Type} & {\bf Description} & {\bf Duration} \\
118 :     NN1 & PostDoc & WCET & 4 years \\
119 :     NN2 & PostDoc & reliable compilation / simulation & 4 years \\
120 :     \hline
121 :     \end{tabular}
122 :    
123 :    
124 :     \subsubsection*{Goals (last 4 years):}
125 :     %\emph{Brief description of the
126 :     %eesearch topics to be addressed during the last 4 years. Make sure to
127 :     %explicitly stress what the significant additions to the scientific
128 :     %knowledge are, and why they are important. (20-30 lines)}
129 :    
130 :     New programming languages and compilers for RESs
131 :     Non-functional properties and requirements as first-class language and compiler citizens
132 :     New compilation techniques enabling a uniform and integrated approach
133 :     for ensuring functional and non-functional program and system requirements
134 :     Replacing trust by proof
135 :     Certifying compilation, proof-carrying code, translation validation
136 :     Verified compilers, verifying compilation for RESs
137 :     Making legacy applications fit to and available on RESs
138 :     Techniques for adjusting and decompiling legacy applications
139 :    
140 :     \subsubsection*{Collaboration with other PPs:}
141 :     %\emph{List the PPs you are expecting to collaborate with, and describe briefly
142 :     %the topic and nature of such a collaboration. (10-20 lines)}
143 :    
144 :     \begin{itemize}
145 :     \item PP Composition of Non-functional Requirements [I.S.T.A./Henzinger]:
146 :     Links to specification and modeling of timing properties, to execution
147 :     models, hardware and software models.
148 :     \item PP Composition and Predictability in RES Architectures
149 :     [E182/Puschner]: Links to hard- and software models for time
150 :     predictable systems, verification of timing behaviour.
151 :     \item PP Formal Verification for Robustness [E184/Veith]: Links to software
152 :     model checking and testing of code (on source code and intermediate
153 :     code levels), support for program analysis and transformation.
154 :     \item PP Modeling \& Analysis of Robust Distributed Systems [E182/Schmid]:
155 :     Links to functional and non-functional system requirements,
156 :     distribution, concurrency.
157 :     \end{itemize}
158 :    
159 :     \subsubsection*{External Collaborations:}
160 :     %\emph{List envisioned international and national collaborations, and
161 :     %describe briefly the topic and nature of such a collaboration. (5-10
162 :     %lines)}
163 :    
164 :     To be done.
165 :    
166 :     \begin{comment}
167 :     %Bitte hier die Bibtex-Entries einfuellen, z.B.,
168 :    
169 :    
170 :     ------------------------------------
171 :    
172 :     @article{Hoare,
173 :     author = {Tony Hoare},
174 :     title = {The verifying compiler: A grand challenge for computing research},
175 :     journal = {Journal of the ACM},
176 :     volume = {50},
177 :     number = {1},
178 :     year = {2003},
179 :     issn = {0004-5411},
180 :     pages = {63--69},
181 :     doi = {http://doi.acm.org/10.1145/602382.602403},
182 :     publisher = {ACM},
183 :     address = {New York, NY, USA},
184 :     }
185 :    
186 :     @article{1328444,
187 :     author = {Jean-Baptiste Tristan and Xavier Leroy},
188 :     title = {Formal verification of translation validators: a case study on instruction scheduling optimizations},
189 :     journal = {SIGPLAN Not.},
190 :     volume = {43},
191 :     number = {1},
192 :     year = {2008},
193 :     issn = {0362-1340},
194 :     pages = {17--27},
195 :     doi = {http://doi.acm.org/10.1145/1328897.1328444},
196 :     publisher = {ACM},
197 :     address = {New York, NY, USA},
198 :     }
199 :    
200 :     @article{1314860,
201 :     author = {Jan Olaf Blech and Arnd Poetzsch-Heffter},
202 :     title = {A Certifying Code Generation Phase},
203 :     journal = {Electron. Notes Theor. Comput. Sci.},
204 :     volume = {190},
205 :     number = {4},
206 :     year = {2007},
207 :     issn = {1571-0661},
208 :     pages = {65--82},
209 :     doi = {http://dx.doi.org/10.1016/j.entcs.2007.09.008},
210 :     publisher = {Elsevier Science Publishers B. V.},
211 :     address = {Amsterdam, The Netherlands, The Netherlands},
212 :     }
213 :    
214 :     @INPROCEEDINGS{LeeShrivastava09,
215 :     TITLE = {A Compiler Optimization to Reduce Soft Errors in Register Files},
216 :     AUTHOR = {Jongeun Lee and Aviral Shrivastava},
217 :     BOOKTITLE = {ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems},
218 :     EDITOR = {Mahmut Kandemir},
219 :     PUBLISHER = {ACM},
220 :     PAGES = {??--??},
221 :     ADDRESS = {Dublin},
222 :     MONTH = {June},
223 :     YEAR = {2009},
224 :     }
225 :    
226 :     @BOOK{MishraDutt08,
227 :     TITLE = {Processor Description Languages},
228 :     AUTHOR = {Prabhat Mishra and Nikil Dutt (Editor)},
229 :     PUBLISHER = {Morgan Kaufmann},
230 :     YEAR = {2008},
231 :     }
232 :    
233 :    
234 :    
235 :     %Eigene Referenzen ab hier.
236 :    
237 :     @InProceedings{SchrSchoKn09,
238 :     TITLE = "Adding Timing-Awareness to {AUTOSAR} Basic-Software - A Component Based Approach",
239 :     AUTHOR = "Dietmar Schreiner and Markus Schordan and Jens Knoop",
240 :     BOOKTITLE = "12th IEEE International Symposium on Object/component/service-oriented
241 :     Real-time distributed Computing (ISORC 2009)",
242 :     PUBLISHER = "IEEE",
243 :     ADDRESS = "Tokyo, Japan",
244 :     YEAR = "2009",
245 :     MONTH = "March",
246 :     PAGES = "288--292",
247 :     }
248 :    
249 :     @inproceedings{Prantl:WLPE2008,
250 :     Address = {Udine, Italy},
251 :     Author = {Adrian Prantl and Jens Knoop and Markus Schordan and Markus Triska},
252 :     Booktitle = {The 18th Workshop on Logic-based methods in Programming Environments (WLPE 2008)},
253 :     Month = {December 12},
254 :     Title = {Constraint solving for high-level WCET analysis},
255 :     Year = {2008},
256 :     URL = {http://costa.tuwien.ac.at/papers/wlpe08.pdf}
257 :     }
258 :    
259 :     @InProceedings{prantl_et_al:DSP:2008:1661,
260 :     author = "Adrian Prantl and Markus Schordan and Jens Knoop",
261 :     title = "TuBound - {A} Conceptually New Tool for Worst-Case
262 :     Execution Time Analysis",
263 :     booktitle = "8th Intl. Workshop on Worst-Case Execution Time (WCET)
264 :     Analysis",
265 :     year = "2008",
266 :     editor = "Raimund Kirner",
267 :     publisher = "Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik,
268 :     Germany",
269 :     address = "Dagstuhl, Germany",
270 :     URL = "http://drops.dagstuhl.de/opus/volltexte/2008/1661",
271 :     annote = "Keywords: Worst-case execution time (WCET) analysis,
272 :     Tool Chain, Flow Constraints, Source-To-Source",
273 :     ISBN = "978-3-939897-10-1",
274 :     note = "also published in print by Austrian Computer Society
275 :     (OCG) under ISBN 978-3-85403-237-3",
276 :     }
277 :    
278 :     @InProceedings{kirner_et_al:DSP:2008:1657,
279 :     author = "Raimund Kirner and Albrecht Kadlec and Adrian Prantl
280 :     and Markus Schordan and Jens Knoop",
281 :     title = "Towards a Common {WCET} Annotation Language: Essential
282 :     Ingredients",
283 :     booktitle = "8th Intl. Workshop on Worst-Case Execution Time (WCET)
284 :     Analysis",
285 :     year = "2008",
286 :     editor = "Raimund Kirner",
287 :     publisher = "Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik,
288 :     Germany",
289 :     address = "Dagstuhl, Germany",
290 :     URL = "http://drops.dagstuhl.de/opus/volltexte/2008/1657",
291 :     annote = "Keywords: Worst-case execution time (WCET) analysis,
292 :     annotation languages, WCET annotation language
293 :     challenge",
294 :     ISBN = "978-3-939897-10-1",
295 :     note = "also published in print by Austrian Computer Society
296 :     (OCG) under ISBN 978-3-85403-237-3",
297 :     }
298 :    
299 :     @InProceedings{kirner_et_al:DSP:2007:1197,
300 :     author = "Raimund Kirner and Jens Knoop and Adrian Prantl and
301 :     Markus Schordan and Ingomar Wenzel",
302 :     title = "{WCET} Analysis: The Annotation Language Challenge",
303 :     booktitle = "7th Intl. Workshop on Worst-Case Execution Time (WCET)
304 :     Analysis",
305 :     year = "2007",
306 :     editor = "Christine Rochange",
307 :     publisher = "Internationales Begegnungs- und Forschungszentrum
308 :     f{"u}r Informatik (IBFI), Schloss Dagstuhl, Germany",
309 :     address = "Dagstuhl, Germany",
310 :     URL = "http://drops.dagstuhl.de/opus/volltexte/2007/1197",
311 :     annote = "Keywords: Worst-case execution time analysis, WCET,
312 :     path description, annotation language challenge,
313 :     expressiveness, convenience",
314 :     }
315 :    
316 :    
317 :     @InProceedings{knoop:DSP:2008:1575,
318 :     author = {Jens Knoop},
319 :     title = {Data-Flow Analysis for Multi-Core Computing Systems: A Reminder to Reverse Data-Flow Analysis},
320 :     booktitle = {Scalable Program Analysis},
321 :     year = {2008},
322 :     editor = {Florian Martin and Hanne Riis Nielson and Claudio Riva and Markus Schordan},
323 :     number = {08161},
324 :     series = {Dagstuhl Seminar Proceedings},
325 :     ISSN = {1862-4405},
326 :     publisher = {Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, Germany},
327 :     address = {Dagstuhl, Germany},
328 :     URL = {http://drops.dagstuhl.de/opus/volltexte/2008/1575},
329 :     annote = {Keywords: Multi-core computing systems, scalable program analysis, reverse data-flow analysis, demand-driven data-flow analysis}
330 :     }
331 :    
332 :     @InProceedings{conf/cc/XueK06,
333 :     title = "A Fresh Look at {PRE} as a Maximum Flow Problem",
334 :     author = "Jingling Xue and Jens Knoop",
335 :     bibdate = "2006-04-05",
336 :     bibsource = "DBLP,
337 :     http://dblp.uni-trier.de/db/conf/cc/cc2006.html#XueK06",
338 :     booktitle = "CC",
339 :     booktitle = "Compiler Construction, 15th International Conference,
340 :     {CC} 2006, Held as Part of the Joint European
341 :     Conferences on Theory and Practice of Software, {ETAPS}
342 :     2006, Vienna, Austria, March 30-31, 2006, Proceedings",
343 :     publisher = "Springer",
344 :     year = "2006",
345 :     volume = "3923",
346 :     editor = "Alan Mycroft and Andreas Zeller",
347 :     ISBN = "3-540-33050-X",
348 :     pages = "139--154",
349 :     series = "Lecture Notes in Computer Science",
350 :     URL = "http://dx.doi.org/10.1007/11688839_13",
351 :     }
352 :    
353 :     @InProceedings{scholz04,
354 :     author = "Bernhard Scholz and Nigel Horspool and Jens Knoop",
355 :     title = "Optimizing for space and time usage with speculative
356 :     partial redundancy elimination",
357 :     booktitle = "LCTES '04: Proceedings of the 2004 ACM SIGPLAN/SIGBED
358 :     conference on Languages, Compilers, and Tools for Embedded Systems",
359 :     year = "2004",
360 :     ISBN = "1-58113-806-7",
361 :     pages = "221--230",
362 :     location = "Washington, DC, USA",
363 :     publisher = "ACM Press",
364 :     }
365 :    
366 :     @InProceedings{HiKr03,
367 :     TITLE = "{VLIW} Operation Refinement for Reducing Energy Consumption",
368 :     AUTHOR = "Ulrich Hirnschrott and Andreas Krall",
369 :     BOOKTITLE = "International Symposium on System-on Chip",
370 :     PUBLISHER = "IEEE",
371 :     ADDRESS = "Tampere, Finland",
372 :     YEAR = "2003",
373 :     PAGES = "131--134",
374 :     }
375 :    
376 :     @Article{Krall+04micro,
377 :     author = {Andreas Krall and Ulrich Hirnschrott and Christian Panis and Ivan Pryanishnikov},
378 :     title = {x{DSP}core: {A} {C}ompiler-{B}ased {C}onfigureable {D}igital {S}ignal {P}rocessor},
379 :     journal = {IEEE Micro},
380 :     year = {2004},
381 :     OPTkey = {},
382 :     volume = {24},
383 :     number = {4},
384 :     pages = {67-78},
385 :     month = {July/August},
386 :     OPTnote = {},
387 :     OPTannote = {},
388 :     }
389 :    
390 :     @INPROCEEDINGS{FarKrStBrand06,
391 :     TITLE = {Effective Compiler Generation by Architecture Description},
392 :     AUTHOR = {Stefan Farfeleder and Andreas Krall and Edwin Steiner and Florian Brandner},
393 :     BOOKTITLE = {ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems},
394 :     EDITOR = {Koen De Bosschere},
395 :     PUBLISHER = {ACM},
396 :     PAGES = {145--152},
397 :     ADDRESS = {Ottawa},
398 :     MONTH = {June},
399 :     YEAR = {2006},
400 :     URL = {http://doi.acm.org/10.1145/1134650.1134671},
401 :     }
402 :    
403 :     @ARTICLE{PrKrHo06,
404 :     AUTHOR = {Ivan Pryanishnikov and Andreas Krall and Nigel Horspool},
405 :     TITLE = {Compiler Optimizations for Processors with {SIMD} Instructions},
406 :     JOURNAL = {Software---Practice and Experience},
407 :     PUBLISHER = {Wiley},
408 :     VOLUME = {37},
409 :     NUMBER = {1},
410 :     PAGES = {93--113},
411 :     YEAR = {2007},
412 :     URL = {http://www3.interscience.wiley.com/cgi-bin/fulltext/112783581/PDFSTART},
413 :     }
414 :    
415 :     @ARTICLE{FaKrHo07,
416 :     AUTHOR = {Stefan Farfeleder and Andreas Krall and Nigel Horspool},
417 :     TITLE = {Ultra Fast Cycle-Accurate Compiled Emulation of Inorder Pipelined Architectures},
418 :     JOURNAL = {Journal of Systems Architecture},
419 :     PUBLISHER = {Elsevier},
420 :     VOLUME = {53},
421 :     NUMBER = {8},
422 :     PAGES = {501--510},
423 :     YEAR = {2007},
424 :     }
425 :    
426 :     @INPROCEEDINGS{MeKr07,
427 :     TITLE = {Instruction Set Encoding Optimization for Code Size Reduction},
428 :     AUTHOR = {Michael Med and Andreas Krall},
429 :     BOOKTITLE = {International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation},
430 :     ADDRESS = {Samos, Greece},
431 :     PAGES = {9--17},
432 :     MONTH = {July},
433 :     YEAR = {2007}
434 :     }
435 :    
436 :     @INPROCEEDINGS{BrEbKr07,
437 :     TITLE = {Compiler Generation from Structural Architecture Descriptions},
438 :     AUTHOR = {Florian Brandner and Dietmar Ebner and Andreas Krall},
439 :     BOOKTITLE = {International Conference on Compilers, Architecture, and Synthesis for Embedded Systems},
440 :     ADDRESS = {Salzburg, Austria},
441 :     PAGES = {13--22},
442 :     MONTH = {September},
443 :     YEAR = {2007}
444 :     }
445 :    
446 :     @INPROCEEDINGS{EbBrSchKrWiKa08,
447 :     TITLE = {Generalized Instruction Selection using {SSA}-Graphs},
448 :     AUTHOR = {Dietmar Ebner and Florian Brandner and Bernhard Scholz and Andreas Krall and Peter Wiedermann and Albrecht Kadlec},
449 :     BOOKTITLE = {ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems},
450 :     EDITOR = {John Regehr},
451 :     PUBLISHER = {ACM},
452 :     PAGES = {31--40},
453 :     ADDRESS = {Tucson},
454 :     MONTH = {June},
455 :     YEAR = {2008},
456 :     }
457 :    
458 :     @INPROCEEDINGS{BrFeKrRi09,
459 :     TITLE = {Fast and Accurate Simulation using the LLVM Compiler Framework},
460 :     AUTHOR = {Florian Brandner and Andreas Fellnhofer and Andreas Krall and David Riegler},
461 :     BOOKTITLE = {Rapid Simulation and Performance Evaluation: Methods and Tools (RAPIDO'09)},
462 :     EDITOR = {Smail Niar, Rainer Leupers, Olivier Temam},
463 :     PUBLISHER = {HiPEAC},
464 :     PAGES = {1--6},
465 :     ADDRESS = {Paphos, Cyprus},
466 :     MONTH = {January},
467 :     YEAR = {2009},
468 :     }
469 :     \end{comment}
470 :    
471 :     \bibliography{res} % Input von res.bib, kommt dann spaeter dazu ...
472 :    
473 :     \end{document}

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help