Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Absar, M.J., Catthoor, F.: Compiler-based approach for exploiting scratch-pad in presence of irregular array access. In: DATE, pp. 1162–1167 (2005)
Amme, W., Dalton, N., Franz, M., von Ronne, J.: Safetsa: A type safe and referentially secure mobile-code representation based on static single assignment form. In: PLDI, pp. 137–147 (2001)
Angiolini, E., Benini, L., Caprara, A.: Polynomial-time algorithm for on-chip scratchpad memory partitioning. In: CASES (2003)
Arnold, M., Fink, S., Grove, D., Hind, M., Sweeney, P.F.: Adaptive optimization in the jalapeno jvm. In: OOPSLA, pp. 47–65 (2000)
Arnold, M., Fink, S.J., Grove, D., Hind, M., Sweeney, P.F.: A survey of adaptive optimization in virtual machines. Proceedings of the IEEE 93(2), 449–466 (2005)
Athavale, R., Vijaykrishnan, N., Kandemir, M.T., Irwin, M.J.: Influence of array allocation mechanisms on memory system energy. In: IPDPS, p. 3 (2001)
Avissar, O., Barua, R., Stewart, D.: An optimal memory allocation scheme for scratch-pad-based embedded systems. Transaction on Embedded Computing Systems 1(1), 6–26 (2002)
Bacon, D.F., Cheng, P., Rajan, V.T.: A real-time garbage collector with low overhead and consistent utilization. In: POPL, pp. 285–298 (2003)
Bacon, D.F., Konuru, R.B., Murthy, C., Serrano, M.J.: Thin locks: Featherweight synchronization for java. In: PLDI, pp. 258–268 (1998)
Banakar, R., Steinke, S., Lee, B.-S., Balakrishnan, M., Marwedel, P.: Scratchpad memory: design alternative for cache on-chip memory in embedded systems. In: CODES, pp. 73–78. ACM Press, New York (2002)
Baynes, K., Collins, C., Fiterman, E., Ganesh, B., Kohout, P., Smit, C., Zhang, T., Jacob, B.: The performance and energy consumption of three embedded real-time operating systems. In: CASES 2001. 4th Workshop on Compiler and Architecture Support for Embedded Systems, pp. 203–210 (2001)
Beers, M.Q., Stork, C., Franz, M.: Efficiently verifiable escape analysis. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol. 3086, Springer, Heidelberg (2004)
Benini, L., Macii, A., Macii, E., Poncino, M.: Increasing Energy Efficiency of Embedded Systems by Application Specific Memory Hierarchy Generation. IEEE Design and Test 17(2), 74–85 (2000)
Benini, L., De Micheli, G.: System-level power optimization: techniques and tools. IEEE Design and Test 17(2), 74–85 (2000)
Blackburn, S., Jones, R., McKinley, K.S., Moss, J.E.B.: Beltway: Getting around garbage collection gridlock. In: PLDI, pp. 153–164 (2002)
Blackburn, S.M., Cheng, P., McKinley, K.S.: Oil and water? high performance garbage collection in java with mmtk. In: ICSE, pp. 137–146 (2004)
Blanchet, B.: Escape analysis for javatm: Theory and practice. ACM Trans. Program. Lang. Syst. 25(6), 713–775 (2003)
Bollella, G., Gosling, J.: The real-time specification for java. IEEE Computer 33(6), 47–54 (2000)
Bruggeman, C., Waddell, O., Dybvig, R.K.: Representing control in the presence of one-shot continuations. In: PLDI, pp. 99–107 (1996)
Chambers, C., Ungar, D., Lee, E.: An efficient implementation of self a dynamically-typed object-oriented language based on prototypes. In: OOPSLA, pp. 49–70 (1989)
Cherem, S., Rugina, R.: Region analysis and transformation for java programs. In: ISMM, pp. 85–96 (2004)
Cofer, D.D., Rangarajan, M.: Formal modeling and analysis of advanced scheduling features in an avionics rtos. In: Sangiovanni-Vincentelli, A.L., Sifakis, J. (eds.) EMSOFT 2002. LNCS, vol. 2491, pp. 138–152. Springer, Heidelberg (2002)
Colnet, D., Coucaud, P., Zendra, O.: Compiler support to customize the mark and sweep algorithm. In: ISMM, pp. 154–165 (1998)
Delaluz, V., Kandemir, M., Vijaykrishnan, N., Irwin, M.J., Sivasubramaniam, A., Kolcu, I.: Compiler-directed array interleaving for reducing energy in multi-bank memories. In: ASP-DAC 2002. 2002 conference on Asia South Pacific design automation/VLSI Design, p. 288. IEEE Computer Society Press, Los Alamitos (2002)
Deters, M., Cytron, R.: Automated discovery of scoped memory regions for real-time java. In: MSP/ISMM, pp. 132–142 (2002)
Detlefs, D.: A hard look at hard real-time garbage collection. In: ISORC, pp. 23–32 (2004)
Dezani-Ciancaglini, M., Mostrous, D., Yoshida, N., Drossopoulou, S.: Session types for object-oriented languages. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, pp. 328–352. Springer, Heidelberg (2006)
Dominguez, A., Udayakumaran, S., Barua, R.: Heap data allocation to scratch-pad memory in embedded systems. Journal of Embedded Computing (JEC) 1(4) (2005)
Dwyer, M.B., Hatcliff, J.R., Ranganath, V.P.: Exploiting object escape and locking information in partial-order reductions for concurrent object-oriented programs. Formal Methods in System Design 25(2–3), 199–240 (2004)
Egger, B., Lee, J., Shin, H.: Scratchpad Memory Management for Portable Systems with a Memory Management Unit. In: EMSOFT (2006)
Ernst, E.: Family polymorphism. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 303–326. Springer, Heidelberg (2001)
Fitzgerald, R.P., Tarditi, D.: The case for profile-directed selection of garbage collectors. In: ISMM, pp. 111–120 (2000)
Ben Fradj, H., El Ouardighi, A., Belleudy, C., Auguin, M.: Energy aware memory architecture configuration. 33(3), 3–9 (2005)
Gagnon, E.M., Hendren, L.J.: Sablevm: A research framework for the efficient execution of java bytecode. In: Java Virtual Machine Research and Technology Symposium, pp. 27–40 (2001)
Graybill, R., Melhem, R.: Power aware computing. Kluwer Academic Publishers, Norwell (2002)
Grove, D., Chambers, C.: A framework for call graph construction algorithms. ACM Trans. Program. Lang. Syst. 23(6), 685–746 (2001)
Hall, R.S.: A policy-driven class loader to support deployment in extensible frameworks. In: Component Deployment, pp. 81–96 (2004)
Hallnor, G., Reinhardt, S.K.: A fully associative software-managed cache design. In: ISCA (2000)
Harris, T.L.: Dynamic adaptive pre-tenuring. In: ISMM, pp. 127–136 (2000)
Higuera-Toledano, M.T., Issarny, V., Banâtre, M., Cabillic, G., Lesot, J.-P., Parain, F.: Region-based memory management for real-time java. In: ISORC, pp. 387–394 (2001)
Hirzel, M., Diwan, A., Hertz, M.: Connectivity-based garbage collection. In: OOPSLA, pp. 359–373 (2003)
Hiser, J.D., Davidson, J.W.: EMBARC: An Efficient Memory Bank Assignment Algorithm for Retargetable Compilers. In: LCTES, pp. 182–191. ACM Press, New York (2004)
Hölzle, U., Ungar, D.: Optimizing dynamically-dispatched calls with run-time type feedback. In: PLDI, pp. 326–336 (1994)
Hom, J., Kremer, U.: Inter-program optimizations for conserving disk energy. In: ISLPED, pp. 335–338. ACM Press, New York (2005)
Jones, R., Lins, R.: Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, Chichester (1996)
Kandemir, M., Vijaykrishnan, N., Irwin, M.J., Ye, W., Demirkiran, I.: Register relabeling: A post compilation technique for energy reduction. In: COLP (October 2000)
Krintz, C., Calder, B.: Using annotation to reduce dynamic optimization time. In: PLDI, pp. 156–167 (2001)
LCTES. Compilation Challenges for Network Processors. In: Compilers and Tools for Embedded Systems. Industrial Panel, ACM Conference on Languages (June 2003)
Lee, M., Tiwari, V., Malik, S., Fujita, M.: Power analysis and minimization techniques for embedded dsp software. IEEE Transactions on Very Large Scale Integration, 5 (March 1997)
Moreau, P.-E., Zendra, O.: GC2: a generational conservative garbage collector for the ATterm library. J. Log. Algebr. Program. 59(1–2), 5–34 (2004)
Muchnick., S.S. (ed.): Advanced compiler design and implementation. Morgan Kaufmann Publishers Inc., San Francisco (1997)
Nagpurkar, P., Krintz, C., Hind, M., Sweeney, P.F., Rajan, V.T.: Online phase detection algorithms. In: CGO, pp. 111–123 (2006)
Necula., G.C.: Proof-carrying code. In: POPL, pp. 106–119 (1997)
Nguyen, N., Dominguez, A., Barua, R.: Memory allocation for embedded systems with a compile-time-unknown scratch-pad size. In: CASES (2005)
Nystrom, N., Clarkson, M.R., Myers, A.C.: Polyglot: An extensible compiler framework for java. In: CC (2003)
Palacz, K., Vitek, J.: Java subtype tests in real-time. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol. 2743, pp. 378–404. Springer, Heidelberg (2003)
Panda, P.R., Dutt, N., Nicolau, A.: Efficient utilization of scratch-pad memory in embedded processor applications. In: DATE (1997)
Pizlo, F., Fox, J.M., Holmes, D., Vitek, J.: Real-time java scoped memory: Design patterns and semantics. In: ISORC, pp. 101–110 (2004)
Poletti, F., Marchal, P., Atienza, D., Benini, L., Catthoor, F., Mendias, J.M.: An integrated hardware/software approach for run-time scratchpad management. In: DAC, pp. 238–243 (2004)
Privat, J., Ducournau, R.: Link-time static analysis for efficient separate compilation of object-oriented languages. In: PASTE, pp. 20–27 (2005)
Ravindran, R.A., Senger, R.M., Marsman, E.D., Dasika, G.S., Guthaus, M.R., Mahlke, S.A., Brown, R.B.: Partitioning variables across register windows to reduce spill code in a low-power processor. IEEE Transaction on Computers 54(8), 998–1012 (2005)
Reynolds, J.C.: The discoveries of continuations. Lisp Symb. Comput. 6(3–4), 233–248 (1993)
Siebert., F.: Hard real-time garbage-collection in the jamaica virtual machine. In: RTCSA, pp. 96–102 (1999)
Soman, S., Krintz, C., Bacon, D.F.: Dynamic selection of application-specific garbage collectors. In: ISMM, pp. 49–60 (2004)
Steinke, S., Grunwald, N., Wehmeyer, L., Banakar, R., Balakrishnan, M., Marwedel, P.: Reducing Energy Consumption by Dynamic Copying of Instructions onto Onchip Memory. In: ISSS (2002)
Steinke, S., Knauer, M., Wehmeyer, L., Marwedel, P.: An accurate and fine grain instruction-level energy model supporting software optimizations. In: Proc. of PATMOS (2001)
Suganuma, T., Yasue, T., Nakatani, T.: A region-based compilation technique for a java just-in-time compiler. In: PLDI, pp. 312–323. ACM Press, New York (2003)
Tallam, S., Gupta, R.: Bitwidth aware global register allocation. In: POPL, pp. 85–96 (2003)
Tofte, M., Talpin, J.-P.: Region-based memory management. Inf. Comput. 132(2), 109–176 (1997)
Udayakumaran, S., Dominguez, A., Barua, R.: Dynamic allocation for scratch-pad memory using compile-time decisions. Embedded Comput. Syst. 5(2), 472–511 (2006)
Verma, M., Wehmeyer, L., Pyka, R., Marwedel, P., Benini, L.: Compilation and Simulation Tool Chain for Memory Aware Energy Optimizations. In: Vassiliadis, S., Wong, S., Hämäläinen, T.D. (eds.) SAMOS 2006. LNCS, vol. 4017, pp. 279–288. Springer, Heidelberg (2006)
Whaley, J., Rinard, M.C.: Compositional pointer and escape analysis for java programs. In: OOPSLA, pp. 187–206 (1999)
Woo, S., Yoon, J., Kim, J.: Low-power instruction encoding techniques. In: SOC Design Conference (2001)
Xie, F., Martonosi, M., Malik, S.: Intraprogram dynamic voltage scaling: Bounding opportunities with analytic modeling. ACM Transactions on Architure and Code Optimization (TACO) 1(3), 323–367 (2004)
Zendra, O., Driesen, K.: Stress-testing control structures for dynamic dispatch in java. In: Java Virtual Machine Research and Technology Symposium, pp. 105–118 (2002)
Zhang, Y., Gupta, R.: Data compression transformations for dynamically allocated data structures. In: Horspool, R.N. (ed.) CC 2002 at ETAPS 2002. LNCS, vol. 2304, pp. 14–28. Springer, Heidelberg (2002)
Zhuang, X., Lau, C., Pande, S.: Storage assignment optimizations through variable coalescence for embedded processors. In: LCTES, pp. 220–231. ACM Press, New York (2003)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Zendra, O. et al. (2008). Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems. In: Cebulla, M. (eds) Object-Oriented Technology. ECOOP 2007 Workshop Reader. ECOOP 2007. Lecture Notes in Computer Science, vol 4906. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78195-0_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-78195-0_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-78194-3
Online ISBN: 978-3-540-78195-0
eBook Packages: Computer ScienceComputer Science (R0)