Proceedings of the 14th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems

ICOOOLPS'2007 was the second edition of the ECOOP-ICOOOLPS workshop. ICOOOLPS intends to bring researchers and practitioners both from academia and industry together, with a spirit of openness, to try and identify and begin to address the numerous and very varied issues of optimization. After a first successful edition, this second one put a stronger emphasis on exchanges and discussions amongst the participants, progressing on the bases set last year in Nantes. The workshop attendance was a success, since the 30-people limit we had set was reached about 2 weeks before the workshop itself. Some of the discussions (e.g .annotations) were so successful that they would required even more time than we were able to dedicate to them. That's one area we plan to further improve for the next edition.

[1]  Robert P. Fitzgerald,et al.  The case for profile-directed selection of garbage collectors , 2000, ISMM '00.

[2]  Olivier Zendra,et al.  Compiler support to customize the mark and sweep algorithm , 1998, ISMM '98.

[3]  Rajeev Barua,et al.  Heap data allocation to scratch-pad memory in embedded systems , 2005, J. Embed. Comput..

[4]  Nikil D. Dutt,et al.  Efficient utilization of scratch-pad memory in embedded processor applications , 1997, Proceedings European Design and Test Conference. ED & TC 97.

[5]  R. Kent Dybvig,et al.  Representing control in the presence of one-shot continuations , 1996, PLDI '96.

[6]  Peter Marwedel,et al.  Scratchpad memory: a design alternative for cache on-chip memory in embedded systems , 2002, Proceedings of the Tenth International Symposium on Hardware/Software Codesign. CODES 2002 (IEEE Cat. No.02TH8627).

[7]  BlanchetBruno Escape analysis for object-oriented languages , 1999 .

[8]  Steven K. Reinhardt,et al.  A fully associative software-managed cache design , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[9]  Jan Vitek,et al.  Java Subtype Tests in Real-Time , 2003, ECOOP.

[10]  David Detlefs,et al.  Garbage-first garbage collection , 2004, ISMM '04.

[11]  Matthew Arnold,et al.  A Survey of Adaptive Optimization in Virtual Machines , 2005, Proceedings of the IEEE.

[12]  Jihong Kim,et al.  Low - Power Instruction Encoding Techniques , 2001 .

[13]  Mauricio J. Serrano,et al.  Thin locks: featherweight synchronization for Java , 1998, PLDI '98.

[14]  V. T. Rajan,et al.  A real-time garbage collector with low overhead and consistent utilization , 2003, POPL '03.

[15]  John C. Reynolds,et al.  The discoveries of continuations , 1993, LISP Symb. Comput..

[16]  Erik Ernst,et al.  Family Polymorphism , 2001, ECOOP.

[17]  Matthew B. Dwyer,et al.  Exploiting Object Escape and Locking Information in Partial-Order Reductions for Concurrent Object-Oriented Programs , 2004, Formal Methods Syst. Des..

[18]  Martin C. Rinard,et al.  Compositional pointer and escape analysis for Java programs , 1999, OOPSLA '99.

[19]  Richard S. Hall,et al.  A Policy-Driven Class Loader to Support Deployment in Extensible Frameworks , 2004, Component Deployment.

[20]  Luca Benini,et al.  Compilation and Simulation Tool Chain for Memory Aware Energy Optimizations , 2006, SAMOS.

[21]  Rajeev Barua,et al.  Memory allocation for embedded systems with a compile-time-unknown scratch-pad size , 2005, CASES '05.

[22]  Olivier Zendra,et al.  GC2: a generational conservative garbage collector for the ATImage library , 2004, J. Log. Algebraic Methods Program..

[23]  Heonshik Shin,et al.  Scratchpad memory management for portable systems with a memory management unit , 2006, EMSOFT '06.

[24]  Ulrich Kremer,et al.  Inter-program optimizations for conserving disk energy , 2005, ISLPED '05. Proceedings of the 2005 International Symposium on Low Power Electronics and Design, 2005..

[25]  Jan Vitek,et al.  Real-time Java scoped memory: design patterns and semantics , 2004, Seventh IEEE International Symposium onObject-Oriented Real-Time Distributed Computing, 2004. Proceedings..

[26]  Dave Thomas,et al.  ECOOP 2006 - Object-Oriented Programming , 2006 .

[27]  Rajeev Barua,et al.  An optimal memory allocation scheme for scratch-pad-based embedded systems , 2002, TECS.

[28]  Hanene Ben Fradj,et al.  Energy aware memory architecture configuration , 2005, SIGARCH Comput. Archit. News.

[29]  Sharad Malik,et al.  Power analysis and minimization techniques for embedded DSP software , 1997, IEEE Trans. Very Large Scale Integr. Syst..

[30]  Luca Benini,et al.  System-level power optimization: techniques and tools , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[31]  Perry Cheng,et al.  Oil and water? High performance garbage collection in Java with MMTk , 2004, Proceedings. 26th International Conference on Software Engineering.

[32]  Michael Franz,et al.  Efficiently Verifiable Escape Analysis , 2004, ECOOP.

[33]  Roland Ducournau,et al.  Link-time static analysis for efficient separate compilation of object-oriented languages , 2005, PASTE '05.

[34]  Steven S. Muchnick,et al.  Advanced Compiler Design and Implementation , 1997 .

[35]  Rajeev Barua,et al.  Dynamic allocation for scratch-pad memory using compile-time decisions , 2006, TECS.

[36]  David Grove,et al.  A framework for call graph construction algorithms , 2001, TOPL.

[37]  Luca Benini,et al.  Increasing Energy Efficiency of Embedded Systems by Application-Specific Memory Hierarchy Generation , 2000, IEEE Des. Test Comput..

[38]  Timothy L. Harris,et al.  Dynamic adaptive pre-tenuring , 2000, ISMM '00.

[39]  Jeffery von Ronne,et al.  SafeTSA: a type safe and referentially secure mobile-code representation based on static single assignment form , 2001, PLDI '01.

[40]  Amer Diwan,et al.  Understanding the connectivity of heap objects , 2002, ISMM '02.

[41]  Santosh Pande,et al.  Storage assignment optimizations through variable coalescence for embedded processors , 2003 .

[42]  Cindy Zheng,et al.  PA-RISC to IA-64: Transparent Execution, No Recompilation , 2000, Computer.

[43]  Peter Marwedel,et al.  Reducing energy consumption by dynamic copying of instructions onto onchip memory , 2002, 15th International Symposium on System Synthesis, 2002..

[44]  Michael R. Clarkson,et al.  Polyglot: An Extensible Compiler Framework for Java , 2003, CC.

[45]  David Detlefs A hard look at hard real-time garbage collection , 2004, Seventh IEEE International Symposium onObject-Oriented Real-Time Distributed Computing, 2004. Proceedings..

[46]  Murali Rangarajan,et al.  Formal Modeling and Analysis of Advanced Scheduling Features in an Avionics RTOS , 2002, EMSOFT.

[47]  Ron K. Cytron,et al.  Automated discovery of scoped memory regions for real-time Java , 2002, ISMM '02.

[48]  M. Teresa Higuera-Toledano,et al.  Region-based memory management for real-time Java , 2001, Fourth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISORC 2001.

[49]  Jack W. Davidson,et al.  EMBARC: an efficient memory bank assignment algorithm for retargetable compilers , 2004, LCTES '04.

[50]  Bruno Blanchet,et al.  Escape analysis for JavaTM: Theory and practice , 2003, TOPL.

[51]  Rafael Dueire Lins,et al.  Garbage collection: algorithms for automatic dynamic memory management , 1996 .

[52]  Sophia Drossopoulou,et al.  Session Types for Object-Oriented Languages , 2006, ECOOP.

[53]  Ulrich Kremer,et al.  Energy management of virtual memory on diskless devices , 2003 .

[54]  Luca Benini,et al.  Polynomial-time algorithm for on-chip scratchpad memory partitioning , 2003, CASES '03.

[55]  Jørgen Lindskov Knudsen ECOOP 2001 — Object-Oriented Programming , 2001, Lecture Notes in Computer Science.

[56]  Sigmund Cherem,et al.  Region analysis and transformation for Java programs , 2004, ISMM '04.

[57]  Chandra Krintz,et al.  Dynamic selection of application-specific garbage collectors , 2004, ISMM '04.

[58]  Luca Cardelli,et al.  ECOOP 2003 – Object-Oriented Programming , 2003, Lecture Notes in Computer Science.

[59]  Fridtjof Siebert,et al.  Hard real-time garbage collection in the Jamaica virtual machine , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[60]  Bruce Jacob,et al.  The performance and energy consumption of three embedded real-time operating systems , 2001, CASES '01.

[61]  Stamatis Vassiliadis,et al.  Embedded Computer Systems: Architectures, Modeling, and Simulation 5th International Workshop, SAMOS 2005, Samos, Greece, July 18-20, 2005, Proceedings , 2005, International Conference / Workshop on Embedded Computer Systems: Architectures, Modeling and Simulation.

[62]  Rami Melhem,et al.  Power Aware Computing , 2002, Series in Computer Science.

[63]  Bruno Blanchet,et al.  Escape analysis for object-oriented languages: application to Java , 1999, OOPSLA '99.

[64]  Mahmut T. Kandemir,et al.  Compiler-directed array interleaving for reducing energy in multi-bank memories , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.

[65]  Laurie J. Hendren,et al.  SableVM: A Research Framework for the Efficient Execution of Java Bytecode , 2001, Java Virtual Machine Research and Technology Symposium.

[66]  Francky Catthoor,et al.  Compiler-Based Approach for Exploiting Scratch-Pad in Presence of Irregular Array Access , 2005, Design, Automation and Test in Europe.

[67]  Martin Odersky ECOOP 2004 – Object-Oriented Programming , 2004, Lecture Notes in Computer Science.

[68]  Mahmut T. Kandemir,et al.  Influence of array allocation mechanisms on memory system energy , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[69]  Rajiv Gupta,et al.  Data Compression Transformations for Dynamically Allocated Data Structures , 2002, CC.

[70]  George C. Necula,et al.  Proof-carrying code , 1997, POPL '97.

[71]  Mads Tofte,et al.  Region-based Memory Management , 1997, Inf. Comput..

[72]  Amer Diwan,et al.  Connectivity-based garbage collection , 2003, OOPSLA 2003.

[73]  Chandra Krintz,et al.  Online phase detection algorithms , 2006, International Symposium on Code Generation and Optimization (CGO'06).

[74]  Srinivas Doddapaneni,et al.  Compilers and tools for embedded systems , 2000, Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.

[75]  James Gosling,et al.  The Real-Time Specification for Java , 2000, Computer.

[76]  Craig Chambers,et al.  An efficient implementation of SELF a dynamically-typed object-oriented language based on prototypes , 1989, OOPSLA 1989.

[77]  Karel Driesen,et al.  Stress-testing Control Structures for Dynamic Dispatch in Java , 2002, Java Virtual Machine Research and Technology Symposium.

[78]  Chandra Krintz,et al.  Using annotations to reduce dynamic optimization time , 2001, PLDI '01.

[79]  Kathryn S. McKinley,et al.  Beltway: getting around garbage collection gridlock , 2002, PLDI '02.

[80]  Scott A. Mahlke,et al.  Partitioning variables across register windows to reduce spill code in a low-power processor , 2005, IEEE Transactions on Computers.

[81]  Rajiv Gupta,et al.  Bitwidth aware global register allocation , 2003, POPL '03.

[82]  Sharad Malik,et al.  Intraprogram dynamic voltage scaling: Bounding opportunities with analytic modeling , 2004, TACO.

[83]  Toshiaki Yasue,et al.  A region-based compilation technique for a Java just-in-time compiler , 2003, PLDI '03.

[84]  Luca Benini,et al.  An integrated hardware/software approach for run-time scratchpad management , 2004, Proceedings. 41st Design Automation Conference, 2004..

[85]  Peter Marwedel,et al.  An Accurate and Fine Grain Instruction-Level Energy Model Supporting Software Optimizations , 2007 .

[86]  Urs Hölzle,et al.  Optimizing dynamically-dispatched calls with run-time type feedback , 1994, PLDI '94.