Posted
almost 11 years
ago
by
Robin Garner
Page
edited by
Robin Garner
Below is a list of publications that use Jikes RVM. This list includes both papers written by Jikes RVM developers, as well as users of the
... [More]
system. We strongly encourage authors to utilize the Research Archive to publish source code used in their studies, and thus, allow others to build on their results. When the implementation described in a paper is available in a Jikes RVM release, this is noted with the paper.Information of dissertations relating to the Jikes RVM is available here.If you would like to see a paper listed then please send details to the RVM researchers mailing list.2014 Fast Conservative Garbage CollectionRifat Shahriyar, Stephen M. Blackburn and Kathryn S. McKinleyACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Portland OR, October 20142013Taking Off the Gloves with Reference Counting ImmixRifat Shahriyar, Stephen M. Blackburn, Xi Yang and Kathryn S. McKinleyACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Indianapolis IN, October 20132012Work-Stealing Without The BaggageVivek Kumar, Daniel Frampton, Stephen M. Blackburn, David Grove, Olivier TardieuACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012A Black-box Approach to Understanding Concurrency in DaCapoTomas Kalibera, Matthew Mole, Richard Jones and Jan VitekACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012Down for the Count? Getting Reference Counting Back in the RingR. Shahriyar, S. M. Blackburn, and D. FramptonACM SIGPLAN International Symposium on Memory Management, ISMM ‘12, Beijing, China, June 15-16, 2012Source code available in the Jikes RVM repository as of August 2012 (see RVM-979)Barriers Reconsidered: Friendlier Still!Xi Yang, Stephen M. Blackburn, Daniel Frampton, Antony L. HoskingACM SIGPLAN International Symposium on Memory Management, ISMM'12, Beijing, China, June 15-16, 20122011Fine-Grained Adaptive Biased LockingFilip Pizlo, Daniel Frampton, Antony L. Hosking9th International Conference on Principles and Practice of Programming in Java, Kongens Lyngby, Denmark, August 24-26, 2011Next In Line, Please! Efficiently Estimating and Exploiting the Indirect Benefits of InliningA. Sewe, J. Jochem and M. Mezini5th workshop on Virtual Machines and Intermediate Languages (VMIL), Portland, OR, USA, 24 October 2011SOS: Saving Time in Dynamic Race Detection with Stationary AnalysisD. Li, W. Srisa-an, and M. DwyerACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, USA, October 22-27, 2011A Literate Experimentation ManifestoJ. SingerACM SIGPLAN Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (ONWARD), Portland, Oregon, USA, October 22-27, 2011Quarantine: A Framework to Mitigate Memory Errors in JNI ApplicationsD. Li and W. Srisa-anACM Conference on Principles and Practice of Programming in Java (PPPJ), Kongens Lyngby, Denmark, August 24-26, 2011A Comprehensive Evaluation of Object Scanning TechniquesR. Garner, S. M. Blackburn and D. FramptonACM SIGPLAN International Symposium on Memory Management (ISMM), San Jose, CA, USA, June 2011LeakChaser: Helping Programmers Narrow Down Causes of Memory LeaksG. Xu, M. D. Bond, F. Qin, and A. RountevACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), San Jose, CA, USA, June 2011Source code available on the Research ArchiveMagic for the Masses: Safer High-level Low-level Programming through Customizable Static AnalysesR. Mitschke, A. Sewe, M. Mezini1st workshop on Modularity in Systems Software (MISS), Porto de Galinhas, Brazil, 22 Mar 20112010Hera-JVM: A System for Heterogeneous Multi-Core ArchitecturesR. McIlroy and J. Sventek.ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010An Input-Centric Paradigm for Program Dynamic OptimizationsK. Tian, Y. Jiang, E. Zhang, X. ShenACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010What Can the GC Compute Efficiently? A Language for Heap Assertions at GC TimeC. Reichenbach, E. Aftandilian, N. Immerman, S. Guyer, and Y. SmaragdakisACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010Headroom-based pretenuring: dynamically pretenuring objects that live "long enough"A. Sewe, D. Yuan, J. Sinschek and M. MeziniPrinciples and Practice of Programming in Java (PPPJ '10), Vienna, Austria, 15-17 September 2010Local redundant polymorphism query eliminationRhodes H. F. Brown and R. Nigel HorspoolPrinciples and Practice of Programming in Java (PPPJ '10), Vienna, Austria, 15-17 September 2010Z-Rays: Divide Arrays and Conquer Speed and FlexibilityJ. Sartor, S. M. Blackburn, D. Frampton, M. Hirzel, and K. S. McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available herePacer: Proportional Detection of Data RacesM. D. Bond, K. E. Coons, and K. S. McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available on the Research ArchiveBreadcrumbs: Efficient Context Sensitivity for Dynamic Bug Detection AnalysesM. D. Bond, G. Z. Baker, and S. Z. GuyerACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available on the Research ArchiveThe Locality of Concurrent Write BarriersL. Hellyer, R.E. Jones and A.L. HoskingACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010The Economics of Garbage CollectionJ. Singer, R.E. Jones, G. Brown and M. LujanACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010Efficient, Context-Sensitive Detection of Real-World Semantic AttacksM. D. Bond, V. Srivastava, K. S. McKinley, and V. ShmatikovACM SIGPLAN Workshop on Programming Languages and Analysis for Security (PLAS), Toronto, Canada, June 2010Source code available on the Research ArchiveAutomated just-in-time compiler tuningKenneth Hoste, Andy Georges and Lieven EeckhoutCode generation and optimization (CGO '10), Toronto, Canada, 24-28 April 20102009GC Assertions: Using the Garbage Collector to Check Heap PropertiesE. Aftandilian and S. GuyerACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Dublin, Ireland, June 2009.An Experimental Study of Methods for Executing Test Suites in Memory Constrained EnvironmentsSuvarshi Bhadra, Alexander Conrad, Charles Hurkes, Brian Kirklin, and Gregory M. KapfhammerIn the Proceedings of the 4th Workshop on the Automation of Software Test, Vancouver, Canada, May 2009.Demystifying Magic: High-level Low-level ProgrammingFrampton, Blackburn, Cheng, Garner, Grove, Moss, and Salishev.VEE 2009.Flexible Reference-Counting-Based Hardware Acceleration for Garbage CollectionJose A. Joao, Onur Mutlu, and Yale N. PattInternational Symposium on Computer Architecture (ISCA), Austin, TX, June 2009Laminar: Practical Fine-Grained Decentralized Information Flow ControlIndrajit Roy, Donald E. Porter, Michael D. Bond, Kathryn S. McKinley, and Emmett WitchelACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Dublin, June 2009Leak PruningMichael D. Bond, Kathryn S. McKinleyInternational Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Washington, DC, March 2009Source code available on the Research ArchiveThe Impact of Java Applications at Microarchitectural Level from Branch Prediction PerspectiveAdrian Florea, Arpad Gellert, Lucian Vințan, Marius Velțan.International Journal of Computers, Communication and ControlMostly-Functional Behavior in Java ProgramsWilliam C. Benton, Charles N. FischerProceedings of the Tenth International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI '09). Savannah, Georgia, USA 18-20 January 2009.2008Tolerating Memory LeaksMichael D. Bond, Kathryn S. McKinleyACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Nashville, TN, October 2008Source code available on the Research ArchiveJava Performance Evaluation through Rigorous Replay CompilationAndy Georges, Lieven Eeckhout, Dries BuytaertACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Nashville, TN, October 2008Constraint Based Optimization of Stationary FieldsIan Rogers, Jisheng Zhao, Chris Kirkham, Ian WatsonPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.The PIM: an Innovative Robot Coordination Model based on Java Thread MigrationRaffaele Quitadamo, Danilo Ansaloni, Niranjan Suri, Kenneth M. Ford, James Allen, Giacomo CabriPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.A Lazy Developer Approach: Building a JVM with Third Party SoftwareNicolas Geoffray, Gael Thomas, Charles Clement, Bertil FolliotPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.Speculative Improvements to Verifiable Bounds Check EliminationAndreas Gampe, Jeffrey von Ronne, David Niedzielski, Kleanthis PsarrisPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.Wake Up and Smell the Coffee: Evaluation Methodology for the 21st CenturyStephen M. Blackburn, Kathryn S. McKinley, Robin Garner, Chris Hoffmann, Asjad M. Khan, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot, B. Moss, Aashish Phansalkar, Darko Stefanović, Thomas VanDrunen, Daniel von Dincklage, Ben Wiedermann.Communications of the ACM (CACM), pages 83-89, August 2008.Boot Image Layout for Jikes RVMIan Rogers, Jisheng Zhao and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codePure Method Analysis within Jikes RVMJisheng Zhao, Ian Rogers, Chris Kirkham and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codeApproaches to Reflective Method InvocationIan Rogers, Jisheng Zhao and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codeSpeculative Multithreading: An Object-Driven ApproachSimon Wilkinson, Ian WatsonParallel Execution of Sequential Programs on Multi-core Architectures (PESPMA), Beijing, China, 22 June 2008.No Bit Left Behind: The Limits of Heap Data CompressionJ.B. Sartor, M. Hirzel, and K.S. McKinleyThe 2008 International Symposium on Memory Management. Tucson, AZ, June 2008.Immix: A Mark-Region Garbage Collector with Space Efficiency, Fast Collection, and Mutator PerformanceStephen Blackburn and Kathryn McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2008), Tucson, AZ, June 7-13, 2008Patch against r13767 here. Code being integrated into svn head April-May 2008.Adaptive Loop Tiling for a Multi-Cluster CMPJisheng Zhao, Matthew Horsnell, Mikel Lujan, Ian Rogers, Chris Kirkham and Ian WatsonInternational Conference on Algorithms and Architectures, Cyprus, 9-11 June 2008.A Study of Java Object DemographicsRichard Jones and Chris RyderInternational Symposium on Memory Management, Tucson, AZ, June 7-8, 2008Phase-based Adaptive Recompilation in a JVMDayong Gu and Clark Verbrugge2008 International Symposium on Code Generation and Optimization (CGO), Boston, Massachusetts, 6-9 April.Branch-on-RandomEdward Lee and Craig Zilles2008 International Symposium on Code Generation and Optimization (CGO), Boston, Massachusetts, 6-9 April.GC Assertions: Using the Garbage Collector to Check Heap PropertiesEdward Aftandilian and Samuel GuyerACM SIGPLAN Workshop on Memory Systems Performance and Correctness, Seattle, Washington, USA, 2 March, 2008A Method Specialisation and Virtualised Execution Environment for JavaA.M. Cheadle, A.J. Field and J. Nystrom-PerssonFourth ACM SIGPLAN/SIGOPS international conference on Virtual Execution Environments (VEE), Seattle, Washington, USA, 5-7 March, 2008Dynamic Analysis of Java Program Concepts for Visualization and ProfilingJeremy Singer and Chris KirkhamScience of Computer Programming, vol. 70, no.2-3, pp.111-126, Elsevier, Feb 2008.Object Co-location and Memory Reuse for Java ProgramsZoe C. H. Yu, Francis C. M. Lau, and Cho-Li WangACM Transactions on Architecture and Code Optimization, Vol. 4, No. 4, Article 23, January 2008.2007Effective Prefetch for Mark-Sweep Garbage CollectionRobin Garner, Stephen Blackburn, & Daniel FramptonACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Patch against Jikes RVM r10327 available here.Decrypting the Java Gene Pool: Predicting Object Lifetimes with Micro-PatternsSebastien Marion, Richard Jones, & Chris RyderACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Uniqueness Inference for Compile-Time Object DeallocationSigmund Cherem & Radu RuginaACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Statistically Rigorous Java Performance EvaluationAndy Georges, Dries Buytaert, Lieven EeckhoutACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Using HPM-Sampling to Drive Dynamic CompilationDries Buytaert, Andy Georges, Michael Hind, Matthew Arnold, Lieven Eeckhout, Koen De BosschereACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Intelligent Selection of Application-Specific Garbage CollectorsJeremy Singer, Gavin Brown, Ian Watson, John CavazosACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Probabilistic Calling ContextMichael D. Bond, Kathryn S. McKinley.ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Source code available on the Research Archive.Tracking Bad Apples: Reporting the Origin of Null and Undefined Value ErrorsMichael D. Bond, Nicholas Nethercote, Stephen W. Kent, Samuel Z. Guyer, Kathryn S. McKinley.ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Source code available on the Research Archive.Java Object Header Elimination for Reduced Memory Consumption in 64-Bit Virtual MachinesKris Venstermans, Lieven Eeckhout, and Koen De Bosschere.ACM Transactions on Code Optimizations (TACO), Vol 4, No. 3, Article 17, September 2007Optimizing Chip Multiprocessor Work Distribution using Dynamic CompilationJisheng Zhao, Matthew Horsnell, Ian Rogers, Andrew Dinn, Chris Kirkham, Ian Watson.Proceedings of Euro-Par, IRISA/ENS Cachan, Rennes, France, 28-31 August 2007GCH: Hints for Triggering Garbage CollectionsDries Buytaert, Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.Transactions on High-Performance Embedded Architectures and Compilers IObject-Relative Addressing: Compressed Pointers in 64-Bit Java Virtual Machines Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.Proceedings of 21st European Conference on Object-Oriented Programming (ECOOP '07), July 30 - August 3, 2007Fast Online Pointer AnalysisMartin Hirzel, Daniel von Dincklage, Amer Diwan, and Michael Hind.Transactions on Programming Languages and Systems (TOPLAS), April 2007.Correcting the Dynamic Call Graph Using Control Flow ConstraintsByeongcheol Lee, Kevin Resnick, Michael D. Bond, Kathryn S. McKinleyProceedings of the 16th International Conference on Compiler Construction (CC 2007), Braga, Portugal, March 2007Isla Vista Heap Sizing: Using Feedback to Avoid PagingChris Grzegorczyk, Sunil Soman, Chandra Krintz, Rich WolskiProceedings of the 5th International Symposium on Code Generation and Optimization (CGO 2007), San Jose, California, March 2007Transactional Collection ClassesBrian D. Carlstrom, Austen McDonald, Michael Carbin, Christos Kozyrakis, Kunle Olukotun (Stanford University)Principles and Practice of Parallel Computing (PPoPP 2007), San Jose, California, 15 March 2007.A Scalable, Non-blocking Approach to Transactional MemoryH. Chafi, J. Casper, B. D. Carlstrom, A. McDonald, C. Cao Minh, W. Baek, C. Kozyrakis, and K. Olukotun (Stanford University)The 13th International Symposium on High-Performance Computer Architecture (HPCA), Phoenix, Arizona, February 10-14, 2007.Mobility of Data in Distributed Hybrid Computing SystemsPhilippe Faes, Mark Christiaens and Dirk StroobandtProceedings of the 21st International Parallel and Distributed Processing Symposium, 2007Transactional Memory: The Hardware-Software InterfaceAusten McDonald, Brian D. Carlstrom, JaeWoong Chung, Chi Cao Minh, Hassan Chafi, Christos Kozyrakis, Kunle OlukotunMicro's Top Picks, IEEE Micro January/February 2007 (Vol. 27, No. 1).Cork: Dynamic Memory Leak Detection for JavaMaria Jump, Kathryn S. McKinleyProceedings of the 2007 Principles of Programming Languages, Nice, France, January 20072006Lazy Interprocedural Analysis for Dynamic Loop ParallelizationJisheng Zhao, Chris Kirkham, Ian RogersNew Horizons in Compilers, Bangalore, India, December 18, 2006.Leveraging strong agent mobility for Aglets with the Mobile JikesRVM frameworkRaffaele Quitadamo, Letizia Leonardi, Giacomo CabriScalable Computing: Practice and Experience, ISSN: 1895-1767, Volume 7, No. 4, December 2006.Executing Java programs with transactional memoryBrian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, Kunle OlukotunScience of Computer Programming, Volume 63, Issue 2, 1 December 2006, Pages 111-129.CRAMM: Virtual Memory Support for Garbage-Collected ApplicationsTing Yang and Emery D. Berger and Scott F. Kaplan and J. Eliot B. MossProceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Seattle, Washington, November, 2006.Revocation techniques for Java concurrencyWelc A, Jagannathan S and Hosking AL.Concurrency and Computation - Practice and Experience 18(2):1613-1656, October 2006.JAVANA: A System for Building Customized Java Program Analysis ToolsJonas Maebe, Dries Buytaert, Lieven Eeckhout, Koen De BosschereACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.The DaCapo Benchmarks: Java Benchmarking Development and AnalysisStephen M Blackburn, Robin Garner, Chris Hoffmann, Asjad M Khan, Kathryn S. McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot B. Moss, Aashish Phansalkar, Darko Stefanovic, Thomas VanDrunen, Daniel von Dincklage, Benjamin WiedermannACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Method-Specific Dynamic Compilation using Logistic RegressionJohn Cavazos, Michael O'BoyleACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Adapting VM Techniques for Seamless Aspect SupportChristoph Bockisch, Matthew Arnold, Tom Dinkelaker, Mira MeziniACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Efficient Control Flow QuantificationChristoph Bockisch, Sebastian Kanthak, Michael Haupt, Matthew Arnold, Mira Mezini,ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Bell: Bit-Encoding Online Memory Leak DetectionMichael D. Bond, Kathryn S. McKinley.Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-XII), San Jose, October 21-25, 2006.Source code available on the Research Archive.Trace-based automatic parallelization in the Jikes RVMBorys Bradel and Tarek S. Abdelrahman''Proceedings of the 5th Workshop on Compiler-Driven Performance,'' Toronto, Canada, Oct 16, 2006.Enabling Java Mobile Computing on the IBM Jikes Research Virtual MachineGiacomo Cabri, Letizia Leonardi, '''Raffaele Quitadamo'''.''Proceedings of the 4th International Conference on the Principles and Practice of Programming in Java 2006 (PPPJ)'', Mannheim, Germany, August 2006, ACM Press.Transparently reconciling transactions with locking for Java synchronizationWelc A, Hosking AL, Jagannathan S.Proceedings of the 20th European Conference on Object-Oriented Programming (ECOOP):148-173 (Nantes, France, July 2006), Lecture Notes in Computer Science 4067, Springer-Verlag, 2006.Architectural Semantics for Practical Transactional MemoryAusten McDonald, JaeWoong Chung, Brian D. Carlstrom, Chi Cao Minh, Hassan Chafi, Christos Kozyrakis, and Kunle Olukotun.''Proceedings of the 33rd Annual International Symposium on Computer Architecture'', Boston, Massachusetts, June 17-21, 2006.Relative Factors in Performance Analysis of JVMsDayong Gu, Clark Verbrugge, and Etienne M. Gagnon''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.Impact of Virtual Execution Environments on Processor Energy Consumption and Hardware AdaptationShiwen Hu and Lizy K. John''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.Free-Me: A Static Analysis for Automatic Individual Object ReclamationSamuel Z. Guyer, Kathryn S. McKinley, and Daniel Frampton.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.The Compressor: Concurrent, Incremental, and Parallel CompactionHaim Kermany, Erez Petrank.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.The Atomos Transactional Programming LanguageBrian D. Carlstrom, Austen McDonald, Hassan Chafi, JaeWoong Chung, Chi Cao Minh, Christos Kozyrakis, and Kunle Olukotun.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.Parallelizing SPECjbb2000 with Transactional MemoryJaeWoong Chung, Chi Cao Minh, Brian D. Carlstrom, and Christos Kozyrakis.''Workshop on Transactional Memory Workloads'', Ottawa, Canada, June 10, 2006.Reducing generational copy reserve overhead with fallback compactionMcGachey P, Hosking AL.Proceedings of the 4th ACM SIGPLAN International Symposium on Memory Management (ISMM):17-28 (Ottawa, Canada, June 2006), ACM.Strong Agent Mobility for Aglets based on the IBM JikesRVMGiacomo Cabri, Luca Ferrari, Letizia Leonardi, Raffaele QuitadamoThe 21st ACM International Symposium on Applied Computing (SAC), Dijon, France, April 2006Hybrid Optimizations: Which Optimization Algorithm to Use?John Cavazos, J. Eliot B. Moss, and Michael F.P. O'Boyle''15th International Conference on Compiler Construction (CC 2006)'', Vienna, Austria, March 30 - 31, 2006.Space-Efficient 64-bit Java Objects through Selective Typed Virtual AddressingKris Venstermans, Lieven Eeckhout, and Koen De Bosschere.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.Dynamic Class Hierarchy MutationLixin Su and Mikko H Lipasti.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.Online Phase Detection AlgorithmsPriya Nagpurkar, Michael Hind, Chandra Krintz, Peter F. Sweeney, and V.T. Rajan.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.The Common Case Transactional Behavior of Multithreaded ProgramsJaeWoong Chung, Chi Cao Minh, Hassan Chafi, Austen McDonald, Brian D. Carlstrom, Christos Kozyrakis, and Kunle Olukotun.''12th International Symposium on High Performance Computer Architecture (HPCA)'', Austin, Texas, USA, February 11-15, 2006.64-bit versus 32-bit Virtual Machines for JavaKris Venstermans, Lieven Eeckhout, and Koen De Bosschere''Software: Practice and Experience'', January 2006.Compiler Techniques for High Performance Sequentially Consistant Java Programs.Zehra Sura, Xing Fang, Chi-Leung Wong, Samuel P. Midkiff, Jaejin Lee, David Padua.''11th International Workshop on Compilers for Parallel Computers (CPC 2006)'', A Coruna, Spain. January 2006.Automatic Tuning of Inlining HeuristicsJohn Cavazos and Michael F.P. O'Boyle''11th International Workshop on Compilers for Parallel Computers (CPC 2006)'', A Coruna, Spain. January 2006.2005Loop Parallelisation for the Jikes RVMJisheng Zhao, Ian Rogers, Chris Kirkham, and Ian Watson.''6th Parallel and Distributed Computing, Applications and Technologies (PDCAT)'', Dalian, China, December 5-8, 2005.Continuous Path and Edge ProfilingMichael D. Bond and Kathryn S. McKinley.38th International Symposium on Microarchitecture (MICRO), Barcelona, November 14-16, 2005.Source code available on the Research Archive.Garbage Collection HintsDries Buytaert, Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.''International Conference on High Performance Embedded Architectures & Compilers (HIPEAC'05)'', Lecture Notes in Computer Science Volume 3793, Springer-Verlag. Barcelona, Spain, November 2005.Towards Continuous Usage Control on Grid Computational Services.Fabio Martinelli, Paolo Mori, and Anna Vaccarelli''International Conference on Autonomic and Autonomous Systems and International Conference on Networking and Services'', Papeete, Tahiti, October 23-28, 2005.A Platform to Use Hardware Performance Counters for Dynamic CompilationFlorian Schneider and Thomas Gross.''Languages and Compilers for Parallel Computing (LCPC)'', IBM, Hawthorne, New York, October 20-21, 2005.''Comparing Low-Level Behavior of SPEC CPU and Java WorkloadsAndy Georges, Lieven Eeckhout and Koen De BosschereProceedings of 10th Asia-Pacific Conference, Advances in Computer Systems Architecture (ACSAC), Singapore, October 24-26, 2005.Are Patches Cutting it? Structuring Distribution within a JVM using AspectsJennifer Baldwin, Yvonne Coady''2005 conference of the Centre for Advanced Studies on Collaborative research (CASCON)'', Toronto, Canada, Oct 17-20, 2005.Automating Vertical ProfilingMatthias Hauswirth, Amer Diwan, Peter F. Sweeney, and Michael Mozer.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Improving Virtual Machine Performance Using a Cross-Run RepositoryMatthew Arnold, Adam Welc, and V.T. Rajan.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Quantifying the Performance of Garbage Collection vs. Explicit Memory ManagementMatthew Hertz and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Quantifying the Performance of Garbage Collection vs.Explicit Memory ManagementMatthew Hertz and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Runtime Specialization With Optimistic Heap AnalysisAjeet Shanker, Rastislav Bodik, Subramanya Sastry, and James Smith.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Safe Futures for JavaAdam Welc, Suresh Jagannathan, and Antony L. Hosking.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Transactional Execution of Java ProgramsBrian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, and Kunle Olukotun.''OOPSLA 2005 Workshop on Synchronization and Concurrency in Object-Oriented Languages (SCOOL)'', San Diego, California, USA, October 16, 2005.Automatic Tuning of Inlining HeuristicsJohn Cavazos and Michael F.P. O'Boyle''SC|05 (Supercomputing): International Conference for High Performance Computing, Networking, and Storage'', Seattle WA, November 12-18, 2005.Testing in Resource Constrained Execution EnvironmentsGregory M. Kapfhammer, Mary Lou Soffa, and Daniel Mosse''ACM/IEEE International Conference on Automated Software Engineering'', LongBeach, CA, November 7-11, 2005.JikesNode and PearColator: A Jikes RVM Operating System and Legacy Code Execution EnvironmentIan Rogers and Chris Kirkham.''The 2nd ECOOP Workshop on Programming Languages and Operating Systems (ECOOP-PLOS '05)'', Glasgow, UK, July 26, 2005.An Automatic Runtime DOALL Loop Parallelisation Optimization for JavaIan Rogers, Jisheng Zhao, Chris Kirkham, Ian Watson.''Parallel/High-Performance Object-Oriented Scientific Computing (POOSC '05)'', Glasgow, UK, July 25, 2005.Characterization of TCC on Chip-MultiprocessorsAusten McDonald, JaeWoong Chung, Hassan Chafi, Chi Cao Minh, Brian D. Carlstrom, Lance Hammond, Christos Kozyrakis, and Kunle Olukotun. *''The Fourteenth International Conference on Parallel Architectures and Compilation Techniques (PACT '05)'', Saint Louis, Missouri, September 19, 2005.FPGA-Aware Garbage Collection in JavaFaes, Ph.; Christiaens, M.; Buytaert, D. ; Stroobandt, D.''IEEE 2005 International Conference on Field Programmable Logic and Applications (FPL).'', August 2005.Garbage Collection Without PagingMatthew Hertz, Yi Feng, and Emery Berger.''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '05)'', Chicago, Il, June 13, 2005An Execution Layer for Aspect-Oriented Programming LanguagesMichael Haupt, Mira Mezini, Christoph Bockisch, Tom Dinelaker, Michael Eichberg, and Michael Krebs''ACM SIGPLAN/USENIX Conference on Virtual Execution Environments (VEE '05)'', Chicago, Il, June 11-12, 2005Immutability Specification and its ApplicationIgor Pechtchanski and Vivek Sarkar.''Concurrency and Computation: Practice and Experience'', Vol 17, No 5-6, April/May 2005.Age-Oriented Concurrent Garbage CollectionHarel Paz, Erez Petrank, and Steve Blackburn.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.An Efficient On-The-Fly Cycle CollectionHarel Paz, Erez Petrank, David F. Bacon, Eliot K. Kolodner, and V.T. Rajan.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Jazz: A Tool for Demand-Driven Structural TestingJonathan Misurda, Jim Clause, Juliya Reed, Bruce R. Childers, and Mary Lou Soffa.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.A Study of Type Analysis for Speculative Method Inlining in a JIT EnvironmentFeng Qian and Laurie Hendren.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Using Interprocedural Side-effect Information in JIT OptimizationsAnatole Le, Ondrej Lhotak, and Laurie Hendren.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Effective Adaptive Computing Environment Management via Dynamic OptimizationShiwen Hu, Madhavi Valluri, Lizy K. John''2005 International Symposium on Code Generation and Optimization'', San Jose, California, March 2005.Collecting and Exploiting High-Accuracy Call Graph Profiles in Virtual MachinesMatthew Arnold and David Grove''2005 International Symposium on Code Generation and Optimization'', San Jose, California, March 2005.'''(Source code available as of version 2.3.5 of Jikes RVM.)'''The Jikes Research Virtual Machine project: Building an open-source research communityB. Alpern, S. Augart, S.M. Blackburn, M. Butrico, A. Cocchi, P Cheng, J. Dolby, S. Fink, D. Grove, M. Hind, K.S. McKinley, M. Mergen, J.E.B. Moss, T. Ngo, V. Sarkar, and M. Trapp.''IBM Systems Journal'', Vol 44, No 2, 2005.2004Anticipation-Based Partial Redundancy Elimination for Static Single Assignment FormThomas VanDrunen and Antony Hosking.''Software - Practice and Experience'', 34(15):1413-1439, December 2004.An Inlining Technique in Jikes RVM to Improve PerformanceRitesh Kumar, Ragesh Jaiswal, and Sanjeev K. Aggarwal.''Advances in Computer Science and Technology'', St. Thomas, Virgin Islands, November 2004.Finding Your Cronies: Static Analysis for Dynamic Object ColocationSamuel Z. Guyer and Kathryn McKinley.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.MC2: High-Performance Garbage Collection for Memory-Constrained EnvironmentsNarendran Sachindran, J. Eliot B. Moss, and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Method-Level Phase Behavior in Java WorkloadsAndy Georges, Dries Buytaert, Lieven Eeckhout, and Koen De Bosschere.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Program Locality: The Garbage Collection AdvantageXianglong Huang, Steve Blackburn, Kathryn McKinley, J. Eliot B. Moss, Zhenlin Wang, and Perry Cheng.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Vertical Profiling: Understanding the Behavior of Object-Oriented ApplicationsMatthias Hauswirth, Peter F. Sweeney, Amer Diwan, and Michael Hind.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Automatic Heap Sizing: Taking Real Memory Into AccountTing Yang, Emery Berger, Matthew Hertz, Scott F. Kaplan, and J. Eliot B. Moss.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Barriers: Friend or Foe?Steve Blackburn, and Antony Hosking.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Dynamic Object Sampling for PretenuringMaria Jump, Steve Blackburn, and Kathryn McKinley.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Dynamic Selection of Application-Specific Garbage CollectorsSunil Soman, Chandra Krintz, and David F. Bacon.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Write Barrier Elision for Concurrent Garbage CollectorsMartin Vechev and David F. Bacon.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Improving Grid Service Security with Fine Grain PoliciesFabrizio Baiardi, Fabio Martinelli, Paolo Mori, and Anna Vaccarelli''On the Move to Meaningful Internet System 2004: OTM Workshops, Lecture Notes in Computer Science'' 3292: Springer Verlag (2004)Virtual Machine Support for Aspects with Advice Instance TablesMichael Haupt and Mira Mezini.''First French Workshop on Aspect-Oriented Programming'', Paris, France, September 2004.Micro-Measurements for Dynamic Aspect-Oriented SystemsMichael Haupt and Mira Mezini.''Net.ObjectDays 2004 (NODe)'', Erfurt, Germany, September 2004.The Use of Traces for Inlining in Java ProgramsBorys J. Bradel and Tarek S. Abdelrahman.''Languages and Compilers for Parallel Computing (LCPC)'', Purdue University, Indiana, September 2004.Online Impact Analysis via Dynamic Compilation TechnologyBen Breech, Anthony Danalis, Stacey Shindo, and Lori Pollock''International Conference on Software Maintenance (ICSM)'', September 2004.Preemption-Based Avoidance of Priority Inversion for JavaAdam Welc, Antony L. Hosking, and Suresh Jagannathan.''International Conference on Parallel Programming (ICPP'04)'', Montreal, Canada, August 2004.Value-Based Partial Redundancy EliminationThomas VanDrunen and Antony Hosking.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Barcelona, Spain, June 2004.Adaptive Tuning of Reserved Space in an Appel CollectorJose Manuel Velasco, Katzalin Olcoz, and Francisco Tirado.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Pointer Analysis in the Presence of Dynamic Class LoadingMartin Hirzel, Amer Diwan, and Michael Hind.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Transactional Monitors for Concurrent ObjectsAdam Welc, Suresh Jagannathan, Antony L. Hosking.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Visualization and Analysis of Phased Behavior in Java ProgramsPriya Nagpurka and Chandra Krintz.''ACM International Conference on the Principles and Practice of Programming in Java (PPPJ)'', Las Vegas, NV, June 2004.Myths and Reality: The Performance Impact of Garbage CollectionSteve Blackburn, Perry Cheng, and Kathryn McKinley.''Sigmetrics - Performance 2004, Joint International Conference on Measurement and Modeling of Computer Systems'', New York, New York, June 2004.'''(Source code available as of version 2.3.2 of Jikes RVM.)'''Adaptive Code Unloading for Resource-Constrained JVMsLingli Zhang and Chandra Krintz.''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '04) and Software and Compilers for Embedded Systems (SCOPES '04)'', Washington DC, June 2004.Inducing Heuristics to Decide Whether to ScheduleJohn Cavazos and J. Eliot B. Moss.''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '04)'', Washington DC, June 2004.Oil and Water: High Performance Garbage Collection in Java with MMTkSteve Blackburn, Perry Cheng, and Kathryn McKinley.''ICSE 2004, 26th International Conference on Software Engineering'', Edinburgh, Scotland, May 2004.'''(Source code available as of version 2.3.2 of Jikes RVM.)'''Towards Dynamic Interprocedural Analysis in JVMsFeng Qian and Laurie Hendren.''USENIX 3rd Virtual Machine Research and Technology Symposium (VM'04)'', San Jose, California, May, 2004.Using Hardware Performance Monitors to Understand the Behavior of Java ApplicationPeter F. Sweeney, Matthias Hauswirth, Brendon Cahoon, Perry Cheng, Amer Diwan, David Grove, and Michael Hind.''USENIX 3rd Virtual Machine Research and Technology Symposium (VM'04)'', San Jose, California, May, 2004.JVM Independent Replay in JavaViktor Schuppan, Marcel Baur, and Armin Biere.''Fourth Workshop on Runtime Verification (RV'04)'', Barcelona, Spain, April, 2004.A Semantic Framework for Designer TransactionsJan Vitek, Suresh Jagannathan, Adam Welc, and Antony L. Hosking.''European Symposium on Programming (ESOP'04)'', Barcelona, Spain, March, 2004.Virtual Machine Support for Dynamic Join PointsChristoph Bockisch, Michael Haupt, Mira Mezini,and Klaus Ostermann.''International Conference on Aspect-Oriented Software Development (AOSDP'04)'', Lancaster, UK, March, 2004.2003The Metronome: A Simpler Approach to Garbage Collection in Real-time SystemsDavid F. Bacon, Perry Cheng, and V.T. Rajan.''Workshop on Java Technologies for Real-Time and Embedded Systems'', Catania, Sicily, November 2003.Ulterior Reference Counting: Fast Garbage Collection without a Long WaitSteve Blackburn and Kathryn McKinley.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.An On-the-Fly Mark and Sweep Garbage Collector Based on Sliding ViewsHezi Azatchi, Yossi Levanoni, Harel Paz, and Erez Petrank.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.MarkCopy: Fast Copying GC with Less Space OverheadNarendran Sachindran and J. Eliot B. Moss.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.Connectivity-Based Garbage CollectionMartin Hirzel, Amer Diwan, and Matthew Hertz.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.How Java Programs Interact with Virtual Machines at the Microarchitectural LevelLieven Eeckhout, Andy Georges, and Koen De Bosschere.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.Transparent Fault-Tolerant Java Virtual MachineRoy Friedman and Alon Kama.''22nd IEEE Symposium on Reliable Distributed Systems (SRDS)'', Florence, Italy, October, 2003.JToe: A Java API for Object ExchangeSerge Chaumette, Pascal Grange, Benoit Metrot, and Pierre Vigneras.''Parallel Computing/ParCo 2003'', September 2003.High-performance Java code for computation fluid dynamicsC. J. Riley, Sid Chatterjee, and R. Biswas.''Concurrency and Computation: Practice and Experience'', 15:395-415, 2003.Detecting Malicious Java Code Using Virtual Machine AuditingSunil Soman, Chandra Krintz and Giovanni Vigna.''12th USENIX Security Symposium'', Washington D.C., August 2003.Controlling Fragmentation and Space Consumption in the Metronome, a Real-time Garbage Collector for JavaDavid F. Bacon, Perry Cheng, and V.T. Rajan.''Conference on Languages, Compilers, and Tools for Embedded Systems'', San Diego, California, June 2003.Designing a Distributed JVM on a ClusterJohn N Zigman and Ramesh Sanakaranarayana.''17th European Simulation Multiconference'', Nottingham, United Kingdom, June 2003.Integrating Generations with Advanced Reference Counting Garbage CollectorsHezi Azatchi and Erez Petrank.''12th International Conference on Compiler Construction'', Warsaw, Poland, April 2003.Just-In-Time Aspects: Efficient Dynamic Weaving for JavaAndrei Popovici, Gustavo Alonso and Thomas Gross.''2nd International Conference on Aspect-Oriented Software Development'', Boston, Massachussetts, March 2003.Design, Implementation and Evaluation of Adaptive Recompilation with On-Stack ReplacementStephen Fink, and Feng Qian.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.'''(Source code available as of version 2.2.1 of Jikes RVM.)'''Adaptive Online Context-Sensitive InliningKim Hazelwood and David Grove.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.Coupling On-Line and Off-Line Profile Information to Improve Program PerformanceChandra Krintz.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.A Real-time Garbage Collector with Low Overhead and Consistent UtilizationDavid F. Bacon, Perry Cheng, and V. T. Rajan.''Conference Record of the Thirtieth ACM Symposium on Principles of Programming Languages'', New Orleans, Louisiana, January 2003.Using the SafeTSA Representation to Boost the Performance of an Existing Java Virtual MachineWolfram Amme, Jeffrey von Ronne, and Michael Franz.''10th International Workshop on Compilers for Parallel Computers (CPC 2003)'', Amsterdam, The Netherlands. January 2003.2002Online Feedback-Directed Optimization of JavaMatthew Arnold, Michael Hind, and Barbara G. Ryder.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.Creating and Preserving Locality of Java Applications at Allocation and Garbage Collection TimesYefim Shuf, Manish Gupta, Hubertus Franke, Andrew Appel, and Jaswinder Pal Singh.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.GCspy: An Adaptable Heap Visualisation FrameworkTony Printezis and Richard Jones.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.Immutability Specification and its ApplicationsIgor Pechtchanski and Vivek Sarkar.''Joint ACM Java Grande - ISCOPE 2002 Conference'', Seatle, Washington, November 3-5, 2002.Experiences Porting the Jikes RVM to Linux/IA32Bowen Alpern, Maria Butrico, Tony Cocchi, Julian Dolby, Stephen Fink, David Grove, and Ton Ngo.''2nd Java Virtual Machine Research and Technology Symposium (JVM '02)'', San Francisco, California, August 1-2, 2002.'''(Source code available as of version 2.1.0 of Jikes RVM.)'''Automatic Implementation of Programming Language Consistency ModelsZehra Sura, Chi-Leung Wong, Xing Fang, Jaejin Lee, S.P. Midkiff, and David Padua.''Fifteenth Workshop on Languages and Compilers for Parallel Computing'', July, 2002.In or Out? Putting Write Barriers in Their PlaceSteve Blackburn and Kathryn McKinley.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.An Adaptive, Region-based Allocator for JavaFeng Qian and Laurie Hendren.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.Understanding the Connectivity of Heap ObjectsMartin Hirzel, Johannes Henkel, Amer Diwan, Michael Hind.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.When to Use a Compilation Service?Jeffrey Palm, Han Lee, Amer Diwan, J. Eliot B. Moss.''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '02) and Software and Compilers for Embedded Systems (SCOPES '02)'', Berlin, Germany, June 19-21 2002.Beltway: Getting Around Garbage Collection GridlockSteve Blackburn, Richard Jones, Kathryn McKinley, J. Eliot B. Moss.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Static Load Classification for Improving the Value Predictability of Data-Cache MissesMartin Burtscher, Amer Diwan, Matthias Hauswirth.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Efficient and Precise Datarace Detection for Multithreaded Object-Oriented ProgramsJong-Deok Choi, Keunwoo Lee, Alexey Loginov, Robert O'Callahan, Vivek Sarkar, and Manu Sridharan.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Older-first Garbage Collection in Practice: Evaluation in a Java Virtual MachineDarko Stefanovic, Matthew Hertz, Steve M. Blackburn, Kathryn S. McKinley and J. Eliot B. Moss.''ACM SIGPLAN Workshop on Memory System Performance (MSP '02)'', Berlin, Germany, June 16, 2002.Error-Free Garbage Collection Traces: How To Cheat and Not Get CaughtMatthew Hertz, Steve Blackburn, J. Eliot B. Moss, Kathryn McKinley, and Darko Stefanovic.''ACM SIGMetrics 2002'', Marina del Rey, CA June 15-19 2002.Using Adaptive Optimization Techniques to Teach Mobile Java ComputingChandra Krintz.''Principles and Practice of Programming in Java'', Dublin, Ireland, June 13-14, 2002.Thin Guards: A Simple and Effective Technique for Reducing the Penalty of Dynamic Class Loading.Matthew Arnold and Barbara G. Ryder.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14 2002.Atomic Instructions in JavaDavid Hovemeyer, William Pugh, and Jaime Spacco.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14 2002.Space- and Time-Efficient Implementation of the Java Object ModelDavid Bacon, Stephen Fink, and David Grove.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14, 2002.'''(Source code available as of version 2.1.0 of Jikes RVM.)'''The Pensieve Project: A Compiler Infrastructure for Memory ModelsC.-L. Wong, Z. Sura, X. Fang, S.P. Midkiff, J. Lee, and D. Padua.''The Sixth International Symposium on Parallel Architectures, Algorithms, and Networks'', May, 2002.Exploiting Prolific Types for Memory Management and OptimizationsYefim Shuf, Manish Gupta, Rajesh Bordawekar, and Jaswinder Pal Singh.''29th ACM SIGPLAN/SIGACT Symposium on Principles of Programming Languages (POPL)'', Portland, OR, January 2002.2001Efficient Implementation of Java Interfaces: Invokeinterface Considered HarmlessBowen Alpern, Anthony Cocchi, Stephen Fink, David Grove, and Derek Lieber.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Pretenuring for JavaSteve Blackburn, Sharad Singhai, Matthew Hertz, Kathryn S. McKinley, and J. Eliot B. Moss.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.Dynamic Optimistic Interprocedural Analysis: A Framework and an ApplicationIgor Pechtchanski and Vivek Sarkar.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.Efficient Dependence Analysis For Java ArraysVivek Sarkar and Stephen Fink.''EURO-PAR 2001'', Manchester, England, September, 2001.A Comparative Evaluation of Parallel Garbage CollectorsC. Attansio, David Bacon, Anthony Cocchi, and Stephen Smith.''Fourteenth Annual Workshop on Languages and Compilers for Parallel Computing'', Cumberland Falls, Kentucky, Aug, 2001.'''(Source code available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''A Framework for Reducing the Cost of Instrumented CodeMatthew Arnold and Barbara G. Ryder.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.'''(Source code available as of version 2.3.0 of Jikes RVM.)'''Java without the Coffee Breaks: A Non-intrusive Multiprocessor Garbage CollectorDavid Bacon, C. Attanasio, Han Lee, V. Rajan, and Stephen Smith.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.'''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''Program Analysis for Safety Guarantees in a Java Virtual Machine Written in Java.Jan-Willem Maessen, Vivek Sarkar, and David Grove.''ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '01),'' Snowbird, Utah, June 18-19, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Concurrent Cycle Collection in Reference Counted SystemsDavid Bacon and V. Rajan.''The Fifteenth European Conference on Object-Oriented Programming (ECOOP)'', University Eötvös Loránd, Budapest, Hungary, June 18-22, 2001.'''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''Characterizing the Memory Behavior of Java Workloads: A Structured View and Opportunities for OptimizationsYefim Shuf, Mauricio Serrano, Manish Gupta, and Jaswinder Pal Singh.''ACM SIGMETRICS 2001/Performance 2001'', Cambridge, MA, June 2001.High-Performance Java Codes for Computational Fluid DynamicsC. J. Riley, Sid Chatterjee, and R. Biswas.''The Joint ACM Java Grande - ISCOPE 2001 Conference'', Stanford, CA, June 2001.Dynamic Type Checking in JalapeñoBowen Alpern, Anthony Cocchi, and David Grove.''The Usenix Java Virtual Machine Research and Technology Symposium,'' April, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''2000Reducing the Overhead of Dynamic CompilationChandra Krintz, David Grove, Vivek Sarkar, and Brad Calder.''Software: Practice and Experience'', 31(8), 717-738, December 2000.Adaptive Optimization in the Jalapeño JVM: The Controller's Analytical ModelMatthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney.''3rd ACM Workshop on Feedback-Directed and Dynamic Optimization (FDDO-3)'', December 10, 2000, Monterey, California.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Adaptive Optimization in the Jalapeño JVMMatthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney.''ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA 2000)'', Minneapolis, Minnesota, October 15-19, 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Quasi-Static Compilation for JavaMauricio Serrano, Rajesh Bordawekar, Sam Midkiff and Manish Gupta.''ACM Conference onObject-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', October 2000.Debugging by Remote ReflectionTon Ngo and John Barton.''Euro-Par 2000,'' Munich, Germany, August 27 - Sept 1 2000.'''(Source code available as of versions 2.0.0 through 2.1.1 of Jikes RVM.)'''An Empirical Study of Selective OptimizationMatthew Arnold, Michael Hind, and Barbara G. Ryder.''13th International Workshop on Languages and Compilers for Parallel Computing'', Yorktown Heights, New York, August 10-12, 2000.Unified Analysis of Array and Object References in Strongly Typed LanguagesStephen Fink, Kathleen Knobe, and Vivek Sarkar.''2000 Static Analysis Symposium (SAS 2000)'', Santa Barbara, CA, June, 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''ABCD: Eliminating Array Bounds Checks on DemandRastislav Bodik, Rajiv Gupta, and Vivek Sarkar.''ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.'''(Source code prototype available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''A Framework for Interprocedural Analysis and Optimization in the Presence of Dynamic Class LoadingVugranam C. Sreedhar, Michael Burke, and Jong-Deok Choi.'' ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.Optimizing Java Programs in the Presence of ExceptionsManish Gupta, Jong-Deok Choi, and Michael Hind.'' 14th European Conference on Object-Oriented Programming (ECOOP 2000),'', June 12-16, 2000, Cannes, France.The Jalapeño Virtual MachineB. Alpern, C. R. Attanasio, J. J. Barton, M. G. Burke, P Cheng, J.-D. Choi, A. Cocchi, S. J. Fink, D. Grove, M. Hind, S. F. Hummel, D. Lieber, V. Litvinov, M. F. Mergen, T. Ngo, J. R. Russell, V. Sarkar, M. J. Serrano, J. C. Shepherd, S. E. Smith, V. C. Sreedhar, H. Srinivasan, and J. Whaley.''IBM System Journal'', Vol 39, No 1, February 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''A Comparative Study of Static and Profile-Based Heuristics for InliningMatthew Arnold, Stephen Fink, Vivek Sarkar, and Peter F. Sweeney.''2000 ACM SIGPLAN Workshop on Dynamic and Adaptive Compilation and Optimization (DYNAMO '00)'', Boston, Massachusetts, January 19-21, 2000.1999Implementing Jalapeño in JavaBowen Alpern, Dick Attanasio, John J. Barton, Anthony Cocchi, Susan Flynn Hummel, Derek Lieber, Mark Mergen, Ton Ngo, Janice Shepherd, and Stephen Smith.''1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '99)'', Denver, Colorado, November 1, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Efficient and Precise Modeling of Exceptions for the Analysis of Java ProgramsJong-Deok Choi, David Grove, Michael Hind, Vivek Sarkar.''1999 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '99)'', Toulouse, France, September 6, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Dependence Analysis for JavaCraig Chambers, Igor Pechtchanski, Vivek Sarkar, Mauricio Serrano, and Harini Srinivasan.''Workshop on Languages and Compilers for Parallel Computing (LCPC 99),'' La Jolla, CA, Aug 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''The Jalapeño Dynamic Optimizing Compiler for JavaMichael Burke, Jong-Deok Choi, Stephen Fink, David Grove, Michael Hind, Vivek Sarkar, Mauricio Serrano, V.C. Sreedhar, and Harini Srinivasan.''1999 ACM Java Grande Conference'', San Francisco, June 12-14, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Jalapeño — a Compiler-supported Java Virtual Machine for ServersBowen Alpern, Anthony Cocchi, Derek Lieber, Mark Mergen, and Vivek Sarkar.''Workshop on Compiler Support for Software System (WCSSS 99)'', Atlanta, GA, May 1999, held in conjunction with PLDI '99.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''
View Online
·
View Changes Online
[Less]
|
Posted
about 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "attempt#2 to correct formatting"
Below is a list of all dissertations that use Jikes RVM. We strongly encourage authors to
... [More]
utilize the Research Archive to publish source code used in their studies, and thus, allow others to build on their results. For information on reviewed papers, see the main Publications page.2013SIAAM: Simple Isolation for an Abstract Actor MachineQuentin Sabah PhD Thesis, Université de Grenoble2012The Design and Construction of High Performance Garbage CollectorsRobin GarnerPhD, School of Computer Science, The Australian National University2011Locality Aware Zeroing: Exploiting Both Hardware and Software SemanticsXi YangMPhil, School of Computer Science, The Australian National University2010Garbage Collection and the Case for High-level Low-level ProgramingDaniel FramptonPhD, School of Computer Science, The Australian National University2008Diagnosing and Tolerating Bugs in Deployed SystemsMichael D. BondPhD, Computer Sciences, The University of Texas at AustinFast, Effective Program Analysis for Object-Level ParallelismWilliam C. BentonPhD, University of Wisconsin-MadisonProfiling Techniques for Performance Analysis and Optimization of Java ApplicationsDries BuytaertPhD in Computer Science and Engineering from Ghent UniversityThree Pitfalls in Java Performance EvaluationAndy GeorgesPhD in Computer Science and Engineering from Ghent UniversityProgramming with Transactional MemoryBrian D. CarlstromPhD in Computer Science, Department of Computer Science, Stanford UniversityAutomatic Parallelization for Graphics Processing Units in JikesRVMAlan Chun-Wai LeungMaster of Mathematics in Computer Science, Waterloo, Ontario, Canada, 2008The Issue of Strong Mobility: an Innovative Approach based on the IBM Jikes Research Virtual MachineRaffaele QuitadamoPhD in Computer Science and Engineering, Department of Computer Science and Engineering, University of Modena and R. Emilia, Italy.2007Adaptive Parallelization and Optimization for the JAMAICA Chip Multi-Processor ArchitectureJisheng ZhaoPh.D thesis, School of Computer Science, University of Manchester.Runtime Value SpecializationPanagiota BilianouMPhil thesis, School of Computer Science, University of Manchester.Note: available via the Electronic Thesis Online Service of the British Library (needs registration)Emulating the ARM Architecture Using a Java Dynamic Binary TranslatorMichael BaerMSc thesis, School of Computer Science, University of Manchester.Configurable JVM ThreadingRahul MehtaMSc thesis, School of Computer Science, University of Manchester.2006Concurrency abstractions for object-oriented programming languages using optimistic protocolsWelc A.PhD dissertation, Purdue University, May 2006.An improved generational copying garbage collectorMcGachey P.MS thesis, Purdue University, May 2006.Quantifying and Improving the Performance of Garbage CollectionMatthew HertzPh.D thesis, Dept. of Computer Science, University of Massachusetts.Memory Management Strategies to Improve the Space-Time Performance of Java ProgramsYu Ching HanPh.D thesis, Systems Research Group, Department of Computer Science, The University of Hong KongA Java Virtual Machine Extended to Run Parrot BytecodeMartin DahlMSc thesis, Dept. of Computer Science, University of Manchester.Design and Implementation of a Baseline port of the Jikes Research Virtual Machine to the IA-64 ArchitectureRavi kiran GorrepatiMaster's thesis, The University of New Mexico, Albuquerque, New MexicoAdding an Interpreter to the Jikes RVMAnastasios KatsigiannisMSc thesis, Dept. of Computer Science, University of Manchester.Parallelizing the Jikes Research Virtual MachineChristos KotselidisMSc thesis, Dept. of Computer Science, University of Manchester.Dynamically Improving Program Locality on-the-FlyXianglong HuangPh.D thesis, Dept. of Computer Sciences, University of Texas at Austin2005An X86 Emulator Written Using JavaJohn BurchamMSc thesis, Dept. of Computer Science, University of Manchester.Jikes RVM voor een 64-bit x86 platformFrederik De SchrijverThesisVirtual Machine Support for Aspect-Oriented Programming LanguagesMichael HauptDissertationUnderstanding Program Performance Using Temporal Vertical ProfilingMatthias HauswirthDoctoral Dissertation, Computer Science Department, the University of Colorado at BoulderA Space-Aware AMD64 Port of Jikes RVMArun Thomas, Dan WilliamsCS771 Project, Department of Computer Science, School of Engineering, University of VirginiaMemory Management in JikesNode Operating SystemYun ZhangMSc thesis, Dept. of Computer Science, University of Manchester.2004Automatically Constructing Compiler Optimization Heuristics Using Supervised LearningJohn CavazosPh.D thesis, Dept. of Computer Science, University of Massachusetts.A Java Virtual Machine For The ARM ProcessorMing ChenMSc thesis, Dept. of Computer Science, University of Manchester.JikesNODE: A Java Operating SystemGeorgios GousiosMSc thesis, Dept. of Computer Science, University of Manchester.Connectivity-Based Garbage CollectionMartin HirzelPhD thesis, Dept. of Computer Science, University of Colorado at Boulder.Native Code Execution Within a JVMRichard MatleyMSc thesis, Dept. of Computer Science, University of Manchester.Partial Redundancy Elimination for Global Value NumberingThomas VanDrunenPhD Thesis, Purdue University.Jikes RVM Adaptive Optimization System with Intelligent AlgorithmsJisheng ZhaoMSc thesis, Dept. of Computer Science, University of Manchester.2003Incorporating Domain-Specific Information into the Compilation ProcessSamuel Z. GuyerDoctoral dissertation, Department of Computer Sciences, the University of Texas at AustinJikes Research Virtual Machine - design and implementation of a 64-bit PowerPC portS. KyrylkovMaster's thesis, University of New Mexico.JMTk: A portable memory management toolkitRobin GarnerHonours thesis, Australian National University.A Framework for Optimistic Program OptimizationIgor Peshansky, (former last name: Pechtchanski)Ph.D thesis, Department of Computer Science, New York University2002Online Profiling and Feedback-Directed Optimization of JavaMatthew ArnoldPh.D Thesis, Rutgers UniversityData Reorganization for Improving Cache Performance of Object-Oriented ProgramsSharad SinghaiPh.D Thesis, University of Massachusetts2001Reducing Load Delay to Improve Performance of Internet-Computing ProgramsChandra KrintzPh.D Thesis, University of California, San Diego1999Dynamic Optimization through the use of Automatic Runtime SpecializationJohn WhaleyM.Eng. thesis, Massachusetts Institute of Technology.
View Online
·
View Changes Online
[Less]
|
Posted
about 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "remove PhD thesis because they've got a separate page"
Below is a list of publications that use Jikes RVM. This list includes
... [More]
both papers written by Jikes RVM developers, as well as users of the system. We strongly encourage authors to utilize the Research Archive to publish source code used in their studies, and thus, allow others to build on their results. When the implementation described in a paper is available in a Jikes RVM release, this is noted with the paper.Information of dissertations relating to the Jikes RVM is available here.If you would like to see a paper listed then please send details to the RVM researchers mailing list.2012Work-Stealing Without The BaggageVivek Kumar, Daniel Frampton, Stephen M. Blackburn, David Grove, Olivier TardieuACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012A Black-box Approach to Understanding Concurrency in DaCapoTomas Kalibera, Matthew Mole, Richard Jones and Jan VitekACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Tuscon AZ, October 2012Down for the Count? Getting Reference Counting Back in the RingR. Shahriyar, S. M. Blackburn, and D. FramptonACM SIGPLAN International Symposium on Memory Management, ISMM ‘12, Beijing, China, June 15-16, 2012Source code available in the Jikes RVM repository as of August 2012 (see RVM-979)Barriers Reconsidered: Friendlier Still!Xi Yang, Stephen M. Blackburn, Daniel Frampton, Antony L. HoskingACM SIGPLAN International Symposium on Memory Management, ISMM'12, Beijing, China, June 15-16, 20122011Fine-Grained Adaptive Biased LockingFilip Pizlo, Daniel Frampton, Antony L. Hosking9th International Conference on Principles and Practice of Programming in Java, Kongens Lyngby, Denmark, August 24-26, 2011Next In Line, Please! Efficiently Estimating and Exploiting the Indirect Benefits of InliningA. Sewe, J. Jochem and M. Mezini5th workshop on Virtual Machines and Intermediate Languages (VMIL), Portland, OR, USA, 24 October 2011SOS: Saving Time in Dynamic Race Detection with Stationary AnalysisD. Li, W. Srisa-an, and M. DwyerACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, USA, October 22-27, 2011A Literate Experimentation ManifestoJ. SingerACM SIGPLAN Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (ONWARD), Portland, Oregon, USA, October 22-27, 2011Quarantine: A Framework to Mitigate Memory Errors in JNI ApplicationsD. Li and W. Srisa-anACM Conference on Principles and Practice of Programming in Java (PPPJ), Kongens Lyngby, Denmark, August 24-26, 2011A Comprehensive Evaluation of Object Scanning TechniquesR. Garner, S. M. Blackburn and D. FramptonACM SIGPLAN International Symposium on Memory Management (ISMM), San Jose, CA, USA, June 2011LeakChaser: Helping Programmers Narrow Down Causes of Memory LeaksG. Xu, M. D. Bond, F. Qin, and A. RountevACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), San Jose, CA, USA, June 2011Source code available on the Research ArchiveMagic for the Masses: Safer High-level Low-level Programming through Customizable Static AnalysesR. Mitschke, A. Sewe, M. Mezini1st workshop on Modularity in Systems Software (MISS), Porto de Galinhas, Brazil, 22 Mar 20112010Hera-JVM: A System for Heterogeneous Multi-Core ArchitecturesR. McIlroy and J. Sventek.ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010An Input-Centric Paradigm for Program Dynamic OptimizationsK. Tian, Y. Jiang, E. Zhang, X. ShenACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010What Can the GC Compute Efficiently? A Language for Heap Assertions at GC TimeC. Reichenbach, E. Aftandilian, N. Immerman, S. Guyer, and Y. SmaragdakisACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Reno/Tahoe, Nevada, October, 2010Headroom-based pretenuring: dynamically pretenuring objects that live "long enough"A. Sewe, D. Yuan, J. Sinschek and M. MeziniPrinciples and Practice of Programming in Java (PPPJ '10), Vienna, Austria, 15-17 September 2010Local redundant polymorphism query eliminationRhodes H. F. Brown and R. Nigel HorspoolPrinciples and Practice of Programming in Java (PPPJ '10), Vienna, Austria, 15-17 September 2010Z-Rays: Divide Arrays and Conquer Speed and FlexibilityJ. Sartor, S. M. Blackburn, D. Frampton, M. Hirzel, and K. S. McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available herePacer: Proportional Detection of Data RacesM. D. Bond, K. E. Coons, and K. S. McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available on the Research ArchiveBreadcrumbs: Efficient Context Sensitivity for Dynamic Bug Detection AnalysesM. D. Bond, G. Z. Baker, and S. Z. GuyerACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Toronto, Canada, June 2010Source code available on the Research ArchiveThe Locality of Concurrent Write BarriersL. Hellyer, R.E. Jones and A.L. HoskingACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010The Economics of Garbage CollectionJ. Singer, R.E. Jones, G. Brown and M. LujanACM SIGPLAN International Symposium on Memory Management (ISMM), Toronto, Canada, June 2010Efficient, Context-Sensitive Detection of Real-World Semantic AttacksM. D. Bond, V. Srivastava, K. S. McKinley, and V. ShmatikovACM SIGPLAN Workshop on Programming Languages and Analysis for Security (PLAS), Toronto, Canada, June 2010Source code available on the Research ArchiveAutomated just-in-time compiler tuningKenneth Hoste, Andy Georges and Lieven EeckhoutCode generation and optimization (CGO '10), Toronto, Canada, 24-28 April 20102009GC Assertions: Using the Garbage Collector to Check Heap PropertiesE. Aftandilian and S. GuyerACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Dublin, Ireland, June 2009.An Experimental Study of Methods for Executing Test Suites in Memory Constrained EnvironmentsSuvarshi Bhadra, Alexander Conrad, Charles Hurkes, Brian Kirklin, and Gregory M. KapfhammerIn the Proceedings of the 4th Workshop on the Automation of Software Test, Vancouver, Canada, May 2009.Demystifying Magic: High-level Low-level ProgrammingFrampton, Blackburn, Cheng, Garner, Grove, Moss, and Salishev.VEE 2009.Flexible Reference-Counting-Based Hardware Acceleration for Garbage CollectionJose A. Joao, Onur Mutlu, and Yale N. PattInternational Symposium on Computer Architecture (ISCA), Austin, TX, June 2009Laminar: Practical Fine-Grained Decentralized Information Flow ControlIndrajit Roy, Donald E. Porter, Michael D. Bond, Kathryn S. McKinley, and Emmett WitchelACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Dublin, June 2009Leak PruningMichael D. Bond, Kathryn S. McKinleyInternational Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Washington, DC, March 2009Source code available on the Research ArchiveThe Impact of Java Applications at Microarchitectural Level from Branch Prediction PerspectiveAdrian Florea, Arpad Gellert, Lucian Vințan, Marius Velțan.International Journal of Computers, Communication and ControlMostly-Functional Behavior in Java ProgramsWilliam C. Benton, Charles N. FischerProceedings of the Tenth International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI '09). Savannah, Georgia, USA 18-20 January 2009.2008Tolerating Memory LeaksMichael D. Bond, Kathryn S. McKinleyACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Nashville, TN, October 2008Source code available on the Research ArchiveJava Performance Evaluation through Rigorous Replay CompilationAndy Georges, Lieven Eeckhout, Dries BuytaertACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Nashville, TN, October 2008Constraint Based Optimization of Stationary FieldsIan Rogers, Jisheng Zhao, Chris Kirkham, Ian WatsonPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.The PIM: an Innovative Robot Coordination Model based on Java Thread MigrationRaffaele Quitadamo, Danilo Ansaloni, Niranjan Suri, Kenneth M. Ford, James Allen, Giacomo CabriPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.A Lazy Developer Approach: Building a JVM with Third Party SoftwareNicolas Geoffray, Gael Thomas, Charles Clement, Bertil FolliotPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.Speculative Improvements to Verifiable Bounds Check EliminationAndreas Gampe, Jeffrey von Ronne, David Niedzielski, Kleanthis PsarrisPrinciples and Practice of Programming in Java (PPPJ '08), Modena, Italy, 9-11 September 2008.Wake Up and Smell the Coffee: Evaluation Methodology for the 21st CenturyStephen M. Blackburn, Kathryn S. McKinley, Robin Garner, Chris Hoffmann, Asjad M. Khan, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot, B. Moss, Aashish Phansalkar, Darko Stefanović, Thomas VanDrunen, Daniel von Dincklage, Ben Wiedermann.Communications of the ACM (CACM), pages 83-89, August 2008.Boot Image Layout for Jikes RVMIan Rogers, Jisheng Zhao and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codePure Method Analysis within Jikes RVMJisheng Zhao, Ian Rogers, Chris Kirkham and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codeApproaches to Reflective Method InvocationIan Rogers, Jisheng Zhao and Ian WatsonImplementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems (ICOOOLPS), Cyprus, 7 July 2008.Presentation, tracker and source codeSpeculative Multithreading: An Object-Driven ApproachSimon Wilkinson, Ian WatsonParallel Execution of Sequential Programs on Multi-core Architectures (PESPMA), Beijing, China, 22 June 2008.No Bit Left Behind: The Limits of Heap Data CompressionJ.B. Sartor, M. Hirzel, and K.S. McKinleyThe 2008 International Symposium on Memory Management. Tucson, AZ, June 2008.Immix: A Mark-Region Garbage Collector with Space Efficiency, Fast Collection, and Mutator PerformanceStephen Blackburn and Kathryn McKinleyACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2008), Tucson, AZ, June 7-13, 2008Patch against r13767 here. Code being integrated into svn head April-May 2008.Adaptive Loop Tiling for a Multi-Cluster CMPJisheng Zhao, Matthew Horsnell, Mikel Lujan, Ian Rogers, Chris Kirkham and Ian WatsonInternational Conference on Algorithms and Architectures, Cyprus, 9-11 June 2008.A Study of Java Object DemographicsRichard Jones and Chris RyderInternational Symposium on Memory Management, Tucson, AZ, June 7-8, 2008Phase-based Adaptive Recompilation in a JVMDayong Gu and Clark Verbrugge2008 International Symposium on Code Generation and Optimization (CGO), Boston, Massachusetts, 6-9 April.Branch-on-RandomEdward Lee and Craig Zilles2008 International Symposium on Code Generation and Optimization (CGO), Boston, Massachusetts, 6-9 April.GC Assertions: Using the Garbage Collector to Check Heap PropertiesEdward Aftandilian and Samuel GuyerACM SIGPLAN Workshop on Memory Systems Performance and Correctness, Seattle, Washington, USA, 2 March, 2008A Method Specialisation and Virtualised Execution Environment for JavaA.M. Cheadle, A.J. Field and J. Nystrom-PerssonFourth ACM SIGPLAN/SIGOPS international conference on Virtual Execution Environments (VEE), Seattle, Washington, USA, 5-7 March, 2008Dynamic Analysis of Java Program Concepts for Visualization and ProfilingJeremy Singer and Chris KirkhamScience of Computer Programming, vol. 70, no.2-3, pp.111-126, Elsevier, Feb 2008.Object Co-location and Memory Reuse for Java ProgramsZoe C. H. Yu, Francis C. M. Lau, and Cho-Li WangACM Transactions on Architecture and Code Optimization, Vol. 4, No. 4, Article 23, January 2008.2007Effective Prefetch for Mark-Sweep Garbage CollectionRobin Garner, Stephen Blackburn, & Daniel FramptonACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Patch against Jikes RVM r10327 available here.Decrypting the Java Gene Pool: Predicting Object Lifetimes with Micro-PatternsSebastien Marion, Richard Jones, & Chris RyderACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Uniqueness Inference for Compile-Time Object DeallocationSigmund Cherem & Radu RuginaACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Statistically Rigorous Java Performance EvaluationAndy Georges, Dries Buytaert, Lieven EeckhoutACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Using HPM-Sampling to Drive Dynamic CompilationDries Buytaert, Andy Georges, Michael Hind, Matthew Arnold, Lieven Eeckhout, Koen De BosschereACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Intelligent Selection of Application-Specific Garbage CollectorsJeremy Singer, Gavin Brown, Ian Watson, John CavazosACM SIGPLAN International Symposium on Memory Management (ISMM), Montreal, October 2007Probabilistic Calling ContextMichael D. Bond, Kathryn S. McKinley.ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Source code available on the Research Archive.Tracking Bad Apples: Reporting the Origin of Null and Undefined Value ErrorsMichael D. Bond, Nicholas Nethercote, Stephen W. Kent, Samuel Z. Guyer, Kathryn S. McKinley.ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Montreal, October 2007Source code available on the Research Archive.Java Object Header Elimination for Reduced Memory Consumption in 64-Bit Virtual MachinesKris Venstermans, Lieven Eeckhout, and Koen De Bosschere.ACM Transactions on Code Optimizations (TACO), Vol 4, No. 3, Article 17, September 2007Optimizing Chip Multiprocessor Work Distribution using Dynamic CompilationJisheng Zhao, Matthew Horsnell, Ian Rogers, Andrew Dinn, Chris Kirkham, Ian Watson.Proceedings of Euro-Par, IRISA/ENS Cachan, Rennes, France, 28-31 August 2007GCH: Hints for Triggering Garbage CollectionsDries Buytaert, Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.Transactions on High-Performance Embedded Architectures and Compilers IObject-Relative Addressing: Compressed Pointers in 64-Bit Java Virtual Machines Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.Proceedings of 21st European Conference on Object-Oriented Programming (ECOOP '07), July 30 - August 3, 2007Fast Online Pointer AnalysisMartin Hirzel, Daniel von Dincklage, Amer Diwan, and Michael Hind.Transactions on Programming Languages and Systems (TOPLAS), April 2007.Correcting the Dynamic Call Graph Using Control Flow ConstraintsByeongcheol Lee, Kevin Resnick, Michael D. Bond, Kathryn S. McKinleyProceedings of the 16th International Conference on Compiler Construction (CC 2007), Braga, Portugal, March 2007Isla Vista Heap Sizing: Using Feedback to Avoid PagingChris Grzegorczyk, Sunil Soman, Chandra Krintz, Rich WolskiProceedings of the 5th International Symposium on Code Generation and Optimization (CGO 2007), San Jose, California, March 2007Transactional Collection ClassesBrian D. Carlstrom, Austen McDonald, Michael Carbin, Christos Kozyrakis, Kunle Olukotun (Stanford University)Principles and Practice of Parallel Computing (PPoPP 2007), San Jose, California, 15 March 2007.A Scalable, Non-blocking Approach to Transactional MemoryH. Chafi, J. Casper, B. D. Carlstrom, A. McDonald, C. Cao Minh, W. Baek, C. Kozyrakis, and K. Olukotun (Stanford University)The 13th International Symposium on High-Performance Computer Architecture (HPCA), Phoenix, Arizona, February 10-14, 2007.Mobility of Data in Distributed Hybrid Computing SystemsPhilippe Faes, Mark Christiaens and Dirk StroobandtProceedings of the 21st International Parallel and Distributed Processing Symposium, 2007Transactional Memory: The Hardware-Software InterfaceAusten McDonald, Brian D. Carlstrom, JaeWoong Chung, Chi Cao Minh, Hassan Chafi, Christos Kozyrakis, Kunle OlukotunMicro's Top Picks, IEEE Micro January/February 2007 (Vol. 27, No. 1).Cork: Dynamic Memory Leak Detection for JavaMaria Jump, Kathryn S. McKinleyProceedings of the 2007 Principles of Programming Languages, Nice, France, January 20072006Lazy Interprocedural Analysis for Dynamic Loop ParallelizationJisheng Zhao, Chris Kirkham, Ian RogersNew Horizons in Compilers, Bangalore, India, December 18, 2006.Leveraging strong agent mobility for Aglets with the Mobile JikesRVM frameworkRaffaele Quitadamo, Letizia Leonardi, Giacomo CabriScalable Computing: Practice and Experience, ISSN: 1895-1767, Volume 7, No. 4, December 2006.Executing Java programs with transactional memoryBrian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, Kunle OlukotunScience of Computer Programming, Volume 63, Issue 2, 1 December 2006, Pages 111-129.CRAMM: Virtual Memory Support for Garbage-Collected ApplicationsTing Yang and Emery D. Berger and Scott F. Kaplan and J. Eliot B. MossProceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Seattle, Washington, November, 2006.Revocation techniques for Java concurrencyWelc A, Jagannathan S and Hosking AL.Concurrency and Computation - Practice and Experience 18(2):1613-1656, October 2006.JAVANA: A System for Building Customized Java Program Analysis ToolsJonas Maebe, Dries Buytaert, Lieven Eeckhout, Koen De BosschereACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.The DaCapo Benchmarks: Java Benchmarking Development and AnalysisStephen M Blackburn, Robin Garner, Chris Hoffmann, Asjad M Khan, Kathryn S. McKinley, Rotem Bentzur, Amer Diwan, Daniel Feinberg, Daniel Frampton, Samuel Z. Guyer, Martin Hirzel, Antony Hosking, Maria Jump, Han Lee, J. Eliot B. Moss, Aashish Phansalkar, Darko Stefanovic, Thomas VanDrunen, Daniel von Dincklage, Benjamin WiedermannACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Method-Specific Dynamic Compilation using Logistic RegressionJohn Cavazos, Michael O'BoyleACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Adapting VM Techniques for Seamless Aspect SupportChristoph Bockisch, Matthew Arnold, Tom Dinkelaker, Mira MeziniACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Efficient Control Flow QuantificationChristoph Bockisch, Sebastian Kanthak, Michael Haupt, Matthew Arnold, Mira Mezini,ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Portland, Oregon, October 22-26, 2006.Bell: Bit-Encoding Online Memory Leak DetectionMichael D. Bond, Kathryn S. McKinley.Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-XII), San Jose, October 21-25, 2006.Source code available on the Research Archive.Trace-based automatic parallelization in the Jikes RVMBorys Bradel and Tarek S. Abdelrahman''Proceedings of the 5th Workshop on Compiler-Driven Performance,'' Toronto, Canada, Oct 16, 2006.Enabling Java Mobile Computing on the IBM Jikes Research Virtual MachineGiacomo Cabri, Letizia Leonardi, '''Raffaele Quitadamo'''.''Proceedings of the 4th International Conference on the Principles and Practice of Programming in Java 2006 (PPPJ)'', Mannheim, Germany, August 2006, ACM Press.Transparently reconciling transactions with locking for Java synchronizationWelc A, Hosking AL, Jagannathan S.Proceedings of the 20th European Conference on Object-Oriented Programming (ECOOP):148-173 (Nantes, France, July 2006), Lecture Notes in Computer Science 4067, Springer-Verlag, 2006.Architectural Semantics for Practical Transactional MemoryAusten McDonald, JaeWoong Chung, Brian D. Carlstrom, Chi Cao Minh, Hassan Chafi, Christos Kozyrakis, and Kunle Olukotun.''Proceedings of the 33rd Annual International Symposium on Computer Architecture'', Boston, Massachusetts, June 17-21, 2006.Relative Factors in Performance Analysis of JVMsDayong Gu, Clark Verbrugge, and Etienne M. Gagnon''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.Impact of Virtual Execution Environments on Processor Energy Consumption and Hardware AdaptationShiwen Hu and Lizy K. John''Proceedings of the 2nd Annual International Conference on Virtual Execution Environments'', Ottawa, Canada, June 14-16, 2006.Free-Me: A Static Analysis for Automatic Individual Object ReclamationSamuel Z. Guyer, Kathryn S. McKinley, and Daniel Frampton.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.The Compressor: Concurrent, Incremental, and Parallel CompactionHaim Kermany, Erez Petrank.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.The Atomos Transactional Programming LanguageBrian D. Carlstrom, Austen McDonald, Hassan Chafi, JaeWoong Chung, Chi Cao Minh, Christos Kozyrakis, and Kunle Olukotun.''Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation'', Ottawa, Canada, June 10-16, 2006.Parallelizing SPECjbb2000 with Transactional MemoryJaeWoong Chung, Chi Cao Minh, Brian D. Carlstrom, and Christos Kozyrakis.''Workshop on Transactional Memory Workloads'', Ottawa, Canada, June 10, 2006.Reducing generational copy reserve overhead with fallback compactionMcGachey P, Hosking AL.Proceedings of the 4th ACM SIGPLAN International Symposium on Memory Management (ISMM):17-28 (Ottawa, Canada, June 2006), ACM.Strong Agent Mobility for Aglets based on the IBM JikesRVMGiacomo Cabri, Luca Ferrari, Letizia Leonardi, Raffaele QuitadamoThe 21st ACM International Symposium on Applied Computing (SAC), Dijon, France, April 2006Hybrid Optimizations: Which Optimization Algorithm to Use?John Cavazos, J. Eliot B. Moss, and Michael F.P. O'Boyle''15th International Conference on Compiler Construction (CC 2006)'', Vienna, Austria, March 30 - 31, 2006.Space-Efficient 64-bit Java Objects through Selective Typed Virtual AddressingKris Venstermans, Lieven Eeckhout, and Koen De Bosschere.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.Dynamic Class Hierarchy MutationLixin Su and Mikko H Lipasti.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.Online Phase Detection AlgorithmsPriya Nagpurkar, Michael Hind, Chandra Krintz, Peter F. Sweeney, and V.T. Rajan.''The 4th Annual International Symposium on Code Generation and Optimization (CGO)'', New York. March 26-29, 2006.The Common Case Transactional Behavior of Multithreaded ProgramsJaeWoong Chung, Chi Cao Minh, Hassan Chafi, Austen McDonald, Brian D. Carlstrom, Christos Kozyrakis, and Kunle Olukotun.''12th International Symposium on High Performance Computer Architecture (HPCA)'', Austin, Texas, USA, February 11-15, 2006.64-bit versus 32-bit Virtual Machines for JavaKris Venstermans, Lieven Eeckhout, and Koen De Bosschere''Software: Practice and Experience'', January 2006.Compiler Techniques for High Performance Sequentially Consistant Java Programs.Zehra Sura, Xing Fang, Chi-Leung Wong, Samuel P. Midkiff, Jaejin Lee, David Padua.''11th International Workshop on Compilers for Parallel Computers (CPC 2006)'', A Coruna, Spain. January 2006.Automatic Tuning of Inlining HeuristicsJohn Cavazos and Michael F.P. O'Boyle''11th International Workshop on Compilers for Parallel Computers (CPC 2006)'', A Coruna, Spain. January 2006.2005Loop Parallelisation for the Jikes RVMJisheng Zhao, Ian Rogers, Chris Kirkham, and Ian Watson.''6th Parallel and Distributed Computing, Applications and Technologies (PDCAT)'', Dalian, China, December 5-8, 2005.Continuous Path and Edge ProfilingMichael D. Bond and Kathryn S. McKinley.38th International Symposium on Microarchitecture (MICRO), Barcelona, November 14-16, 2005.Source code available on the Research Archive.Garbage Collection HintsDries Buytaert, Kris Venstermans, Lieven Eeckhout, and Koen De Bosschere.''International Conference on High Performance Embedded Architectures & Compilers (HIPEAC'05)'', Lecture Notes in Computer Science Volume 3793, Springer-Verlag. Barcelona, Spain, November 2005.Towards Continuous Usage Control on Grid Computational Services.Fabio Martinelli, Paolo Mori, and Anna Vaccarelli''International Conference on Autonomic and Autonomous Systems and International Conference on Networking and Services'', Papeete, Tahiti, October 23-28, 2005.A Platform to Use Hardware Performance Counters for Dynamic CompilationFlorian Schneider and Thomas Gross.''Languages and Compilers for Parallel Computing (LCPC)'', IBM, Hawthorne, New York, October 20-21, 2005.''Comparing Low-Level Behavior of SPEC CPU and Java WorkloadsAndy Georges, Lieven Eeckhout and Koen De BosschereProceedings of 10th Asia-Pacific Conference, Advances in Computer Systems Architecture (ACSAC), Singapore, October 24-26, 2005.Are Patches Cutting it? Structuring Distribution within a JVM using AspectsJennifer Baldwin, Yvonne Coady''2005 conference of the Centre for Advanced Studies on Collaborative research (CASCON)'', Toronto, Canada, Oct 17-20, 2005.Automating Vertical ProfilingMatthias Hauswirth, Amer Diwan, Peter F. Sweeney, and Michael Mozer.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Improving Virtual Machine Performance Using a Cross-Run RepositoryMatthew Arnold, Adam Welc, and V.T. Rajan.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Quantifying the Performance of Garbage Collection vs. Explicit Memory ManagementMatthew Hertz and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Quantifying the Performance of Garbage Collection vs.Explicit Memory ManagementMatthew Hertz and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Runtime Specialization With Optimistic Heap AnalysisAjeet Shanker, Rastislav Bodik, Subramanya Sastry, and James Smith.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Safe Futures for JavaAdam Welc, Suresh Jagannathan, and Antony L. Hosking.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', San Diego, California, October 16-20, 2005.Transactional Execution of Java ProgramsBrian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, and Kunle Olukotun.''OOPSLA 2005 Workshop on Synchronization and Concurrency in Object-Oriented Languages (SCOOL)'', San Diego, California, USA, October 16, 2005.Automatic Tuning of Inlining HeuristicsJohn Cavazos and Michael F.P. O'Boyle''SC|05 (Supercomputing): International Conference for High Performance Computing, Networking, and Storage'', Seattle WA, November 12-18, 2005.Testing in Resource Constrained Execution EnvironmentsGregory M. Kapfhammer, Mary Lou Soffa, and Daniel Mosse''ACM/IEEE International Conference on Automated Software Engineering'', LongBeach, CA, November 7-11, 2005.JikesNode and PearColator: A Jikes RVM Operating System and Legacy Code Execution EnvironmentIan Rogers and Chris Kirkham.''The 2nd ECOOP Workshop on Programming Languages and Operating Systems (ECOOP-PLOS '05)'', Glasgow, UK, July 26, 2005.An Automatic Runtime DOALL Loop Parallelisation Optimization for JavaIan Rogers, Jisheng Zhao, Chris Kirkham, Ian Watson.''Parallel/High-Performance Object-Oriented Scientific Computing (POOSC '05)'', Glasgow, UK, July 25, 2005.Characterization of TCC on Chip-MultiprocessorsAusten McDonald, JaeWoong Chung, Hassan Chafi, Chi Cao Minh, Brian D. Carlstrom, Lance Hammond, Christos Kozyrakis, and Kunle Olukotun. *''The Fourteenth International Conference on Parallel Architectures and Compilation Techniques (PACT '05)'', Saint Louis, Missouri, September 19, 2005.FPGA-Aware Garbage Collection in JavaFaes, Ph.; Christiaens, M.; Buytaert, D. ; Stroobandt, D.''IEEE 2005 International Conference on Field Programmable Logic and Applications (FPL).'', August 2005.Garbage Collection Without PagingMatthew Hertz, Yi Feng, and Emery Berger.''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '05)'', Chicago, Il, June 13, 2005An Execution Layer for Aspect-Oriented Programming LanguagesMichael Haupt, Mira Mezini, Christoph Bockisch, Tom Dinelaker, Michael Eichberg, and Michael Krebs''ACM SIGPLAN/USENIX Conference on Virtual Execution Environments (VEE '05)'', Chicago, Il, June 11-12, 2005Immutability Specification and its ApplicationIgor Pechtchanski and Vivek Sarkar.''Concurrency and Computation: Practice and Experience'', Vol 17, No 5-6, April/May 2005.Age-Oriented Concurrent Garbage CollectionHarel Paz, Erez Petrank, and Steve Blackburn.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.An Efficient On-The-Fly Cycle CollectionHarel Paz, Erez Petrank, David F. Bacon, Eliot K. Kolodner, and V.T. Rajan.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Jazz: A Tool for Demand-Driven Structural TestingJonathan Misurda, Jim Clause, Juliya Reed, Bruce R. Childers, and Mary Lou Soffa.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.A Study of Type Analysis for Speculative Method Inlining in a JIT EnvironmentFeng Qian and Laurie Hendren.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Using Interprocedural Side-effect Information in JIT OptimizationsAnatole Le, Ondrej Lhotak, and Laurie Hendren.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Edinburgh, UK, April 2005.Effective Adaptive Computing Environment Management via Dynamic OptimizationShiwen Hu, Madhavi Valluri, Lizy K. John''2005 International Symposium on Code Generation and Optimization'', San Jose, California, March 2005.Collecting and Exploiting High-Accuracy Call Graph Profiles in Virtual MachinesMatthew Arnold and David Grove''2005 International Symposium on Code Generation and Optimization'', San Jose, California, March 2005.'''(Source code available as of version 2.3.5 of Jikes RVM.)'''The Jikes Research Virtual Machine project: Building an open-source research communityB. Alpern, S. Augart, S.M. Blackburn, M. Butrico, A. Cocchi, P Cheng, J. Dolby, S. Fink, D. Grove, M. Hind, K.S. McKinley, M. Mergen, J.E.B. Moss, T. Ngo, V. Sarkar, and M. Trapp.''IBM Systems Journal'', Vol 44, No 2, 2005.2004Anticipation-Based Partial Redundancy Elimination for Static Single Assignment FormThomas VanDrunen and Antony Hosking.''Software - Practice and Experience'', 34(15):1413-1439, December 2004.An Inlining Technique in Jikes RVM to Improve PerformanceRitesh Kumar, Ragesh Jaiswal, and Sanjeev K. Aggarwal.''Advances in Computer Science and Technology'', St. Thomas, Virgin Islands, November 2004.Finding Your Cronies: Static Analysis for Dynamic Object ColocationSamuel Z. Guyer and Kathryn McKinley.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.MC2: High-Performance Garbage Collection for Memory-Constrained EnvironmentsNarendran Sachindran, J. Eliot B. Moss, and Emery Berger.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Method-Level Phase Behavior in Java WorkloadsAndy Georges, Dries Buytaert, Lieven Eeckhout, and Koen De Bosschere.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Program Locality: The Garbage Collection AdvantageXianglong Huang, Steve Blackburn, Kathryn McKinley, J. Eliot B. Moss, Zhenlin Wang, and Perry Cheng.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Vertical Profiling: Understanding the Behavior of Object-Oriented ApplicationsMatthias Hauswirth, Peter F. Sweeney, Amer Diwan, and Michael Hind.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Vancouver, British Columbia, Canada, October 2004.Automatic Heap Sizing: Taking Real Memory Into AccountTing Yang, Emery Berger, Matthew Hertz, Scott F. Kaplan, and J. Eliot B. Moss.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Barriers: Friend or Foe?Steve Blackburn, and Antony Hosking.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Dynamic Object Sampling for PretenuringMaria Jump, Steve Blackburn, and Kathryn McKinley.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Dynamic Selection of Application-Specific Garbage CollectorsSunil Soman, Chandra Krintz, and David F. Bacon.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Write Barrier Elision for Concurrent Garbage CollectorsMartin Vechev and David F. Bacon.''ACM SIGPLAN International Symposium on Memory Management (ISMM '04)'', Vancouver, British Columbia, Canada, October 2004.Improving Grid Service Security with Fine Grain PoliciesFabrizio Baiardi, Fabio Martinelli, Paolo Mori, and Anna Vaccarelli''On the Move to Meaningful Internet System 2004: OTM Workshops, Lecture Notes in Computer Science'' 3292: Springer Verlag (2004)Virtual Machine Support for Aspects with Advice Instance TablesMichael Haupt and Mira Mezini.''First French Workshop on Aspect-Oriented Programming'', Paris, France, September 2004.Micro-Measurements for Dynamic Aspect-Oriented SystemsMichael Haupt and Mira Mezini.''Net.ObjectDays 2004 (NODe)'', Erfurt, Germany, September 2004.The Use of Traces for Inlining in Java ProgramsBorys J. Bradel and Tarek S. Abdelrahman.''Languages and Compilers for Parallel Computing (LCPC)'', Purdue University, Indiana, September 2004.Online Impact Analysis via Dynamic Compilation TechnologyBen Breech, Anthony Danalis, Stacey Shindo, and Lori Pollock''International Conference on Software Maintenance (ICSM)'', September 2004.Preemption-Based Avoidance of Priority Inversion for JavaAdam Welc, Antony L. Hosking, and Suresh Jagannathan.''International Conference on Parallel Programming (ICPP'04)'', Montreal, Canada, August 2004.Value-Based Partial Redundancy EliminationThomas VanDrunen and Antony Hosking.''International Conference on Compiler Construction, European Joint Conferences on Theory and Practice of Software'', Barcelona, Spain, June 2004.Adaptive Tuning of Reserved Space in an Appel CollectorJose Manuel Velasco, Katzalin Olcoz, and Francisco Tirado.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Pointer Analysis in the Presence of Dynamic Class LoadingMartin Hirzel, Amer Diwan, and Michael Hind.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Transactional Monitors for Concurrent ObjectsAdam Welc, Suresh Jagannathan, Antony L. Hosking.''European Conference on Object-Oriented Programming (ECOOP'04)'', Oslo, Norway, June 2004.Visualization and Analysis of Phased Behavior in Java ProgramsPriya Nagpurka and Chandra Krintz.''ACM International Conference on the Principles and Practice of Programming in Java (PPPJ)'', Las Vegas, NV, June 2004.Myths and Reality: The Performance Impact of Garbage CollectionSteve Blackburn, Perry Cheng, and Kathryn McKinley.''Sigmetrics - Performance 2004, Joint International Conference on Measurement and Modeling of Computer Systems'', New York, New York, June 2004.'''(Source code available as of version 2.3.2 of Jikes RVM.)'''Adaptive Code Unloading for Resource-Constrained JVMsLingli Zhang and Chandra Krintz.''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '04) and Software and Compilers for Embedded Systems (SCOPES '04)'', Washington DC, June 2004.Inducing Heuristics to Decide Whether to ScheduleJohn Cavazos and J. Eliot B. Moss.''ACM SIGPLAN Conference on Programming Languages Design and and Implementation (PLDI '04)'', Washington DC, June 2004.Oil and Water: High Performance Garbage Collection in Java with MMTkSteve Blackburn, Perry Cheng, and Kathryn McKinley.''ICSE 2004, 26th International Conference on Software Engineering'', Edinburgh, Scotland, May 2004.'''(Source code available as of version 2.3.2 of Jikes RVM.)'''Towards Dynamic Interprocedural Analysis in JVMsFeng Qian and Laurie Hendren.''USENIX 3rd Virtual Machine Research and Technology Symposium (VM'04)'', San Jose, California, May, 2004.Using Hardware Performance Monitors to Understand the Behavior of Java ApplicationPeter F. Sweeney, Matthias Hauswirth, Brendon Cahoon, Perry Cheng, Amer Diwan, David Grove, and Michael Hind.''USENIX 3rd Virtual Machine Research and Technology Symposium (VM'04)'', San Jose, California, May, 2004.JVM Independent Replay in JavaViktor Schuppan, Marcel Baur, and Armin Biere.''Fourth Workshop on Runtime Verification (RV'04)'', Barcelona, Spain, April, 2004.A Semantic Framework for Designer TransactionsJan Vitek, Suresh Jagannathan, Adam Welc, and Antony L. Hosking.''European Symposium on Programming (ESOP'04)'', Barcelona, Spain, March, 2004.Virtual Machine Support for Dynamic Join PointsChristoph Bockisch, Michael Haupt, Mira Mezini,and Klaus Ostermann.''International Conference on Aspect-Oriented Software Development (AOSDP'04)'', Lancaster, UK, March, 2004.2003The Metronome: A Simpler Approach to Garbage Collection in Real-time SystemsDavid F. Bacon, Perry Cheng, and V.T. Rajan.''Workshop on Java Technologies for Real-Time and Embedded Systems'', Catania, Sicily, November 2003.Ulterior Reference Counting: Fast Garbage Collection without a Long WaitSteve Blackburn and Kathryn McKinley.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.An On-the-Fly Mark and Sweep Garbage Collector Based on Sliding ViewsHezi Azatchi, Yossi Levanoni, Harel Paz, and Erez Petrank.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.MarkCopy: Fast Copying GC with Less Space OverheadNarendran Sachindran and J. Eliot B. Moss.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.Connectivity-Based Garbage CollectionMartin Hirzel, Amer Diwan, and Matthew Hertz.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.How Java Programs Interact with Virtual Machines at the Microarchitectural LevelLieven Eeckhout, Andy Georges, and Koen De Bosschere.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Anaheim, California, October 2003.Transparent Fault-Tolerant Java Virtual MachineRoy Friedman and Alon Kama.''22nd IEEE Symposium on Reliable Distributed Systems (SRDS)'', Florence, Italy, October, 2003.JToe: A Java API for Object ExchangeSerge Chaumette, Pascal Grange, Benoit Metrot, and Pierre Vigneras.''Parallel Computing/ParCo 2003'', September 2003.High-performance Java code for computation fluid dynamicsC. J. Riley, Sid Chatterjee, and R. Biswas.''Concurrency and Computation: Practice and Experience'', 15:395-415, 2003.Detecting Malicious Java Code Using Virtual Machine AuditingSunil Soman, Chandra Krintz and Giovanni Vigna.''12th USENIX Security Symposium'', Washington D.C., August 2003.Controlling Fragmentation and Space Consumption in the Metronome, a Real-time Garbage Collector for JavaDavid F. Bacon, Perry Cheng, and V.T. Rajan.''Conference on Languages, Compilers, and Tools for Embedded Systems'', San Diego, California, June 2003.Designing a Distributed JVM on a ClusterJohn N Zigman and Ramesh Sanakaranarayana.''17th European Simulation Multiconference'', Nottingham, United Kingdom, June 2003.Integrating Generations with Advanced Reference Counting Garbage CollectorsHezi Azatchi and Erez Petrank.''12th International Conference on Compiler Construction'', Warsaw, Poland, April 2003.Just-In-Time Aspects: Efficient Dynamic Weaving for JavaAndrei Popovici, Gustavo Alonso and Thomas Gross.''2nd International Conference on Aspect-Oriented Software Development'', Boston, Massachussetts, March 2003.Design, Implementation and Evaluation of Adaptive Recompilation with On-Stack ReplacementStephen Fink, and Feng Qian.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.'''(Source code available as of version 2.2.1 of Jikes RVM.)'''Adaptive Online Context-Sensitive InliningKim Hazelwood and David Grove.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.Coupling On-Line and Off-Line Profile Information to Improve Program PerformanceChandra Krintz.''International Symposium on Code Generation and Optimization'', San Francisco, California, March 2003.A Real-time Garbage Collector with Low Overhead and Consistent UtilizationDavid F. Bacon, Perry Cheng, and V. T. Rajan.''Conference Record of the Thirtieth ACM Symposium on Principles of Programming Languages'', New Orleans, Louisiana, January 2003.Using the SafeTSA Representation to Boost the Performance of an Existing Java Virtual MachineWolfram Amme, Jeffrey von Ronne, and Michael Franz.''10th International Workshop on Compilers for Parallel Computers (CPC 2003)'', Amsterdam, The Netherlands. January 2003.2002Online Feedback-Directed Optimization of JavaMatthew Arnold, Michael Hind, and Barbara G. Ryder.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.Creating and Preserving Locality of Java Applications at Allocation and Garbage Collection TimesYefim Shuf, Manish Gupta, Hubertus Franke, Andrew Appel, and Jaswinder Pal Singh.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.GCspy: An Adaptable Heap Visualisation FrameworkTony Printezis and Richard Jones.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Seatle, Washington, November 4-8, 2002.Immutability Specification and its ApplicationsIgor Pechtchanski and Vivek Sarkar.''Joint ACM Java Grande - ISCOPE 2002 Conference'', Seatle, Washington, November 3-5, 2002.Experiences Porting the Jikes RVM to Linux/IA32Bowen Alpern, Maria Butrico, Tony Cocchi, Julian Dolby, Stephen Fink, David Grove, and Ton Ngo.''2nd Java Virtual Machine Research and Technology Symposium (JVM '02)'', San Francisco, California, August 1-2, 2002.'''(Source code available as of version 2.1.0 of Jikes RVM.)'''Automatic Implementation of Programming Language Consistency ModelsZehra Sura, Chi-Leung Wong, Xing Fang, Jaejin Lee, S.P. Midkiff, and David Padua.''Fifteenth Workshop on Languages and Compilers for Parallel Computing'', July, 2002.In or Out? Putting Write Barriers in Their PlaceSteve Blackburn and Kathryn McKinley.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.An Adaptive, Region-based Allocator for JavaFeng Qian and Laurie Hendren.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.Understanding the Connectivity of Heap ObjectsMartin Hirzel, Johannes Henkel, Amer Diwan, Michael Hind.''ACM SIGPLAN International Symposium on Memory Management (ISMM '02)'', Berlin, Germany, June 20-21, 2002.When to Use a Compilation Service?Jeffrey Palm, Han Lee, Amer Diwan, J. Eliot B. Moss.''ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES '02) and Software and Compilers for Embedded Systems (SCOPES '02)'', Berlin, Germany, June 19-21 2002.Beltway: Getting Around Garbage Collection GridlockSteve Blackburn, Richard Jones, Kathryn McKinley, J. Eliot B. Moss.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Static Load Classification for Improving the Value Predictability of Data-Cache MissesMartin Burtscher, Amer Diwan, Matthias Hauswirth.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Efficient and Precise Datarace Detection for Multithreaded Object-Oriented ProgramsJong-Deok Choi, Keunwoo Lee, Alexey Loginov, Robert O'Callahan, Vivek Sarkar, and Manu Sridharan.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '02)'', Berlin, Germany, June 17-19 2002.Older-first Garbage Collection in Practice: Evaluation in a Java Virtual MachineDarko Stefanovic, Matthew Hertz, Steve M. Blackburn, Kathryn S. McKinley and J. Eliot B. Moss.''ACM SIGPLAN Workshop on Memory System Performance (MSP '02)'', Berlin, Germany, June 16, 2002.Error-Free Garbage Collection Traces: How To Cheat and Not Get CaughtMatthew Hertz, Steve Blackburn, J. Eliot B. Moss, Kathryn McKinley, and Darko Stefanovic.''ACM SIGMetrics 2002'', Marina del Rey, CA June 15-19 2002.Using Adaptive Optimization Techniques to Teach Mobile Java ComputingChandra Krintz.''Principles and Practice of Programming in Java'', Dublin, Ireland, June 13-14, 2002.Thin Guards: A Simple and Effective Technique for Reducing the Penalty of Dynamic Class Loading.Matthew Arnold and Barbara G. Ryder.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14 2002.Atomic Instructions in JavaDavid Hovemeyer, William Pugh, and Jaime Spacco.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14 2002.Space- and Time-Efficient Implementation of the Java Object ModelDavid Bacon, Stephen Fink, and David Grove.''European Conference on Object-Oriented Programming (ECOOP 2002)'', Malaga Spain, June 10-14, 2002.'''(Source code available as of version 2.1.0 of Jikes RVM.)'''The Pensieve Project: A Compiler Infrastructure for Memory ModelsC.-L. Wong, Z. Sura, X. Fang, S.P. Midkiff, J. Lee, and D. Padua.''The Sixth International Symposium on Parallel Architectures, Algorithms, and Networks'', May, 2002.Exploiting Prolific Types for Memory Management and OptimizationsYefim Shuf, Manish Gupta, Rajesh Bordawekar, and Jaswinder Pal Singh.''29th ACM SIGPLAN/SIGACT Symposium on Principles of Programming Languages (POPL)'', Portland, OR, January 2002.2001Efficient Implementation of Java Interfaces: Invokeinterface Considered HarmlessBowen Alpern, Anthony Cocchi, Stephen Fink, David Grove, and Derek Lieber.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Pretenuring for JavaSteve Blackburn, Sharad Singhai, Matthew Hertz, Kathryn S. McKinley, and J. Eliot B. Moss.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.Dynamic Optimistic Interprocedural Analysis: A Framework and an ApplicationIgor Pechtchanski and Vivek Sarkar.''ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', Tampa, FL, USA, Oct 14-18, 2001.Efficient Dependence Analysis For Java ArraysVivek Sarkar and Stephen Fink.''EURO-PAR 2001'', Manchester, England, September, 2001.A Comparative Evaluation of Parallel Garbage CollectorsC. Attansio, David Bacon, Anthony Cocchi, and Stephen Smith.''Fourteenth Annual Workshop on Languages and Compilers for Parallel Computing'', Cumberland Falls, Kentucky, Aug, 2001.'''(Source code available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''A Framework for Reducing the Cost of Instrumented CodeMatthew Arnold and Barbara G. Ryder.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.'''(Source code available as of version 2.3.0 of Jikes RVM.)'''Java without the Coffee Breaks: A Non-intrusive Multiprocessor Garbage CollectorDavid Bacon, C. Attanasio, Han Lee, V. Rajan, and Stephen Smith.''ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '01)'', Snowbird, Utah, June 20-22, 2001.'''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''Program Analysis for Safety Guarantees in a Java Virtual Machine Written in Java.Jan-Willem Maessen, Vivek Sarkar, and David Grove.''ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '01),'' Snowbird, Utah, June 18-19, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Concurrent Cycle Collection in Reference Counted SystemsDavid Bacon and V. Rajan.''The Fifteenth European Conference on Object-Oriented Programming (ECOOP)'', University Eötvös Loránd, Budapest, Hungary, June 18-22, 2001.'''(Source code available in versions 2.0.0 through 2.0.3 of Jikes RVM.)'''Characterizing the Memory Behavior of Java Workloads: A Structured View and Opportunities for OptimizationsYefim Shuf, Mauricio Serrano, Manish Gupta, and Jaswinder Pal Singh.''ACM SIGMETRICS 2001/Performance 2001'', Cambridge, MA, June 2001.High-Performance Java Codes for Computational Fluid DynamicsC. J. Riley, Sid Chatterjee, and R. Biswas.''The Joint ACM Java Grande - ISCOPE 2001 Conference'', Stanford, CA, June 2001.Dynamic Type Checking in JalapeñoBowen Alpern, Anthony Cocchi, and David Grove.''The Usenix Java Virtual Machine Research and Technology Symposium,'' April, 2001.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''2000Reducing the Overhead of Dynamic CompilationChandra Krintz, David Grove, Vivek Sarkar, and Brad Calder.''Software: Practice and Experience'', 31(8), 717-738, December 2000.Adaptive Optimization in the Jalapeño JVM: The Controller's Analytical ModelMatthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney.''3rd ACM Workshop on Feedback-Directed and Dynamic Optimization (FDDO-3)'', December 10, 2000, Monterey, California.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Adaptive Optimization in the Jalapeño JVMMatthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney.''ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA 2000)'', Minneapolis, Minnesota, October 15-19, 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Quasi-Static Compilation for JavaMauricio Serrano, Rajesh Bordawekar, Sam Midkiff and Manish Gupta.''ACM Conference onObject-Oriented Programming, Systems, Languages, and Applications (OOPSLA)'', October 2000.Debugging by Remote ReflectionTon Ngo and John Barton.''Euro-Par 2000,'' Munich, Germany, August 27 - Sept 1 2000.'''(Source code available as of versions 2.0.0 through 2.1.1 of Jikes RVM.)'''An Empirical Study of Selective OptimizationMatthew Arnold, Michael Hind, and Barbara G. Ryder.''13th International Workshop on Languages and Compilers for Parallel Computing'', Yorktown Heights, New York, August 10-12, 2000.Unified Analysis of Array and Object References in Strongly Typed LanguagesStephen Fink, Kathleen Knobe, and Vivek Sarkar.''2000 Static Analysis Symposium (SAS 2000)'', Santa Barbara, CA, June, 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''ABCD: Eliminating Array Bounds Checks on DemandRastislav Bodik, Rajiv Gupta, and Vivek Sarkar.''ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.'''(Source code prototype available in versions 2.0.0 through 2.2.0 of Jikes RVM.)'''A Framework for Interprocedural Analysis and Optimization in the Presence of Dynamic Class LoadingVugranam C. Sreedhar, Michael Burke, and Jong-Deok Choi.'' ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000)'', Vancouver, British Columbia, Canada, June 17-21, 2000.Optimizing Java Programs in the Presence of ExceptionsManish Gupta, Jong-Deok Choi, and Michael Hind.'' 14th European Conference on Object-Oriented Programming (ECOOP 2000),'', June 12-16, 2000, Cannes, France.The Jalapeño Virtual MachineB. Alpern, C. R. Attanasio, J. J. Barton, M. G. Burke, P Cheng, J.-D. Choi, A. Cocchi, S. J. Fink, D. Grove, M. Hind, S. F. Hummel, D. Lieber, V. Litvinov, M. F. Mergen, T. Ngo, J. R. Russell, V. Sarkar, M. J. Serrano, J. C. Shepherd, S. E. Smith, V. C. Sreedhar, H. Srinivasan, and J. Whaley.''IBM System Journal'', Vol 39, No 1, February 2000.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''A Comparative Study of Static and Profile-Based Heuristics for InliningMatthew Arnold, Stephen Fink, Vivek Sarkar, and Peter F. Sweeney.''2000 ACM SIGPLAN Workshop on Dynamic and Adaptive Compilation and Optimization (DYNAMO '00)'', Boston, Massachusetts, January 19-21, 2000.1999Implementing Jalapeño in JavaBowen Alpern, Dick Attanasio, John J. Barton, Anthony Cocchi, Susan Flynn Hummel, Derek Lieber, Mark Mergen, Ton Ngo, Janice Shepherd, and Stephen Smith.''1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '99)'', Denver, Colorado, November 1, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Efficient and Precise Modeling of Exceptions for the Analysis of Java ProgramsJong-Deok Choi, David Grove, Michael Hind, Vivek Sarkar.''1999 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '99)'', Toulouse, France, September 6, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Dependence Analysis for JavaCraig Chambers, Igor Pechtchanski, Vivek Sarkar, Mauricio Serrano, and Harini Srinivasan.''Workshop on Languages and Compilers for Parallel Computing (LCPC 99),'' La Jolla, CA, Aug 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''The Jalapeño Dynamic Optimizing Compiler for JavaMichael Burke, Jong-Deok Choi, Stephen Fink, David Grove, Michael Hind, Vivek Sarkar, Mauricio Serrano, V.C. Sreedhar, and Harini Srinivasan.''1999 ACM Java Grande Conference'', San Francisco, June 12-14, 1999.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''Jalapeño — a Compiler-supported Java Virtual Machine for ServersBowen Alpern, Anthony Cocchi, Derek Lieber, Mark Mergen, and Vivek Sarkar.''Workshop on Compiler Support for Software System (WCSSS 99)'', Atlanta, GA, May 1999, held in conjunction with PLDI '99.'''(Source code available as of version 2.0.0 of Jikes RVM.)'''
View Online
·
View Changes Online
[Less]
|
Posted
about 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "added changes for removal of fullyBootedVM from TemplateCompilerFramework"
Almost all of the changes in MRP are potentially
... [More]
useful for Jikes RVM. This page lists the merge status for the changesets in MRP.Commit ids refer to the codehaus MRP repository and not to the one at Google Code (the commit ids are different!).The first MRP-specific commit is 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280 (Set up trunk directory) from Mon, 1 Jun 2009 16:00:10 +0200.Completely merged Changesets (ordered from earliest to latest MRP commit)MRP CommitNotesJikes RVM commitscaa5090e4387f4df056a51194975a78c01cbdcbfUse SIZE_OF_POINTER in libvm.c0cf9dbf84e254b2f01f013b233008caea392f507882a2e7d6ba450262e46ee2119be1e934aa3f0f7MRP-1 / RVM-826 - was merged from MRP without attribution in the commit message3624be6f51983f3f385c8031015c548c1cef006af04f14178f9a5114dd61f505af0d8addf8b2a7b4lcmp tests.018fa1e241338ef29b55ae4eac9ad1470d25d8e98ce02705d334b17db45040b65a53de1d800fc9b6x64 fixes for MultianewArrayhelper659c74ed89b3a513dfbd0b78b0794660c2fc449f94c7f2a2e23f2ad46154b9e59f2c49d003c68c2066a49cd15abaec776c56855262acf3bed845e652RVM-584 (Automation for gathering compiler DNA). The changes to CompilerDNA.javawere not merged because they do not apply to the Jikes RVM.a987aeb1642fdd74316ad41043b15c8be2f305ec/Changesets that are only partially merged and still in progress (unordered)MRP CommitNotesJikes RVM commitsd38420e7fea6aac84f7300d6f089f3292be3adf1All x64 changes were merged. Additional fixes by Da Feng are also contained in the commit.The OProfile changes have not been merged.a4764e3f72b11246980bdf74045d8d8aec6156fe (OutOfLineMachineCode, ThreadLocalState)08b031163d63875a14ca8e7f29883284451d0cb8x64a7626555f445453afef1e6287ea155f5b7ecc6f3, d5546992fb33412aa55116549daf42a2ccfc299dbe94f3408ac0f07b396f9f040f51f4576085ccd2x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)08b031163d63875a14ca8e7f29883284451d0cb8x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)5ff473b86fd7f4144cabd757d3c046ce3f45e42ex64, bootimageRunner printout cleanup, remove APR0cf9dbf84e254b2f01f013b233008caea392f507 (libvm.c SIZE_OF_POINTER changes)dce47314b403ce7c095ec1625b8a5b2492c207b4x64. Used Da Feng's fix for the IR changes; rest still unprocessed.ecc7562406fd38bce74c5874999a24a861b163b0 (Da Feng's fix)33f0837b0caa4dc280d956d0721e1bf19e108745MRP-236ea4feda95a52059d46a12be721047bf6a95be09 (replacement of "new AddressConstant(..)" with "IRTools.AC(..)")92409c3bd94d2ff6500a7aaec912464dbc7b8583BytecodeConstants changes are merged; removal offullyBootedVM is merged; all other changes are not yet merged65bd754ba3473e8ddf91d41b45a0d12da088b92b (BytecodeConstants changes)2880b01ba1e6a62c4f1172cef066f2a7372c6ba9 (removal of fullyBootedVM)Changesets that will not be merged (ordered from earliest to latest MRP commit)MRP CommitReasoning870e57d18ce7c99e8d8c00b5e0adfe7b2f953280not useful: was reverted in 61c36f01e1009f7d2a5e8b0f5e41a68fcb6abea061c36f01e1009f7d2a5e8b0f5e41a68fcb6abea0not useful: reverts 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280Unprocessed ChangesetsEverything else has either not been merged yet or nobody has filled out the tables above.
View Online
·
View Changes Online
[Less]
|
Posted
about 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "added Tomoharu Ugawa"
Jikes RVM TeamThe Jikes RVM team is responsible for creating or applying the improvements that go into the
... [More]
releases of Jikes RVM. The current team is:Steve Blackburn, Australian National University, (Jikes RVM steering committee)Michael Bond, Ohio State UniversityErik BrangsRobin Garner, Australian National UniversityDavid Grove, IBM Research, (Jikes RVM steering committee)Andrew John Hughes, Red HatJ. Eliot B. Moss, University of MassachusettsPast Jikes RVM Team MembersThe following people have greatly contributed to the success of the Jikes RVM project by having served as Jikes RVM team members:Steve AugartPerry Cheng, IBM ResearchJulian Dolby, IBM ResearchPeter Donald, La Trobe UniversityStephen Fink, IBM ResearchDaniel Frampton, Australian National UniversityMatthias Hauswirth, University of Colorado at BoulderMichael Hind, IBM ResearchChris Hoffmann, University of MassachussettsFilip Pizlo, Purdue UniversityFeng Qian, McGill UniversityIan Rogers, University of ManchesterPeter F. Sweeney, IBM ResearchKris Venstermans, University of GhentContributions From Jikes RVM CommunityThe Jikes RVM project sincerely thanks the following people who have made contributions to the system:Eddie AftandilianSteven AugartMichael BaerJames BornholtGreg BorotaErik BrangsShane BrewerBrian D. CarlstromPeter DonaldPhilippe FaesDa FengChapman FlackDaniel FramptonRobin GarnerGeorgios GousiosAndrew GrayJungwoo HaMatthias HauswirthLaurence HellyerMatthew HertzMark HindessChris HoffmannKenneth HosteXianglong HuangRichard JonesGarrett KolpinChristos-Efthymois KotselidisSergiy KyrylkovAlan LawrenceKien LeHan LeeJohn LeunerLukas LoehrerDmitri MakarovAvery MoonJ. Eliot B. MossElias NaurAnders Biehl NorgaardJeff PalmTuan PhanFilip PizloKathiravelu PradeebanCarl RitsonQuentin SabahJoão Reys SantosAndreas SeweRifat ShahriyarAleksey ShipilevJeremy SingerStephen SmaldoneSunil SomanDarko StefanovicSuryia SubramanianTomoharu UgawaTom VanDrunenIan WarringtonMark WielaardXi YangYuval YaromLingli ZhangJisheng ZhaoLei ZhaoSoftware Used by Jikes RVMJikes RVM uses either the class libraries produced by the GNU Classpath project or Apache Harmony.Thanks to David R. Hanson,Christoper W. Fraser, and Todd Proebsting for making available the iburg tool, which we've enhanced for use in Jikes RVM.Thanks to Codehaus and Sourceforge for providing hosting services.The Jalapeño Research ProjectJikes RVM was independently developed as part of the Jalapeño research project at the IBM T.J. Watson Research Center. The following IBM Research employees, academic visitors, and student co-ops contributed to the early releases of Jikes RVM:Bowen AlpernAnthony CocchiHan LeeJanice ShepherdMatthew ArnoldJulian DolbyDerek LieberManu SridharanDick AttanasioTracy FergusonMark MergenPeter F. SweeneyDavid BaconStephen FinkTon NgoMartin TrappJohn J. BartonEugene GluzbergJeff PalmKris VenstermansSteve BlackburnDavid GroveIgor PechtchanskiJohn WhaleyRastislav BodikMichael HindVivek SarkarMaria ButricoDave HovemeyerMauricio SerranoPerry ChengSusan HummelArvin ShepherdJong-Deok ChoiSergiy KyrylkovStephen Smith
View Online
·
View Changes Online
[Less]
|
Posted
about 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "add note about bootimage compilation being single-threaded"
General project statusJikes RVM is currently the most popular
... [More]
platform for virtual machine research. This popularity is reflected in the particpation on the mailing lists where most questions can be answered.Memory management research is a particular strength of the Jikes RVM. The Memory Management Toolkit (MMtk) provides a well-rounded selection of garbage collectors and the compiler replay feature enables researchers to control mutator variation. The MMTk test harness can be used to test collectors.In contrast to this, the compilers are currently a weak spot in the Jikes RVM. For example, the Static Single Assignment (SSA) form in the compilers is currently disabled because of bugs.The Jikes RVM is not state-of-the-art in some areas. In particular, Jikes RVM currently does not provide 64-bit Intel Support. Another big limitation is the lack of support for the OpenJDK class library. The project has received community contributions to improve those shortcomings but the code is not yet in the mainline. The Jikes RVM would also profit from efforts directed to stability improvements and bugfixes. For example, Jikes RVM currently cannot run all of the Dacapo 9.12 benchmarks.The Jikes RVM team aims to provide at least one release every year.Note: The information on this page refers to the status in the code repository and not to the status in the current release.Note: If you want to help, please see How to Help or inquire via the mailing lists.Near-term goalsAdd support for the OpenJDK class librariesAdd Intel 64-bit supportPreliminary long-term goals (still need further discussion)Improve stabilityImprove compliance with JVM specWrite unit tests for all classesImprove and extend test suitesAdd support for relevant new platforms (ARM?)Merge relevant changes from MRPDetailed project statusThis section provides more detailed project status information for the components. If you think an important point is missing here, please contact us via the mailing lists.BenchmarksDaCapo 2006-MR-2 runs on Jikes RVMSome benchmarks of DaCapo 9.12 workParts of SPECjvm2008 work (see RVM-484)CommunityJikes RVM has a large community in its intended audience (researchers)Core team consists wholly of volunteers: no paid developersJikes RVM is currently not packaged for any major distributionMemory ManagementGenerational Immix (the default collector) is very stableThe other collectors are reasonably stable but have some bugs (as shown by the regression tests)Notable omissions in the collector choices include Baker-style collectors, the Compressor and on-the-fly collectorsRuntimeThe runtime is reasonably modular but it doesn't make very good use of interfacesJikes RVM currently does not follow the JVM specificationSeveral features normally found in commercial JVMs are not implemented: strictfp, JMX and JVMTI are currently unsupportedAdaptive Optimization SystemThe AOS provides a good level of control via compiler replayThe AOS provides clear extension pointsJikes RVM currently uses only one compilation thread at runtime and the current AOS model does not support multiple compilation threadsThe provided AOS models do not support Feedback-Directed OptimizationsCompilersSSA form is disabled. Scalar SSA form may be fixable; Heap SSA form is considered too brokenMany optimizations are disabled because they rely on SSA or are considered too buggySome standard optimizations are missing, e.g. Global Array Bound check eliminationJava Memory Model (JMM) is not correctly implementedBootimage compilation is single-threaded by default because it is too unrealiable with multiple threadsInfrastructureRegression tests are run regulary. The results are displayed with Cattrack, a Ruby-on-Rails application.There's currently no infrastructure for CI: Core team members need to ensure they run the pre-commit tests themselves.More regression machines would be useful, in particular PowerPC machines that can be accessed by all team membersCurrently no code review tools in useSome unit tests (via JUnit) exist but most classes don't have unit tests
View Online
·
View Changes Online
[Less]
|
Posted
over 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "replace JIRA Confluence links with normal web links because the former don't work on the main website"
This page contains some
... [More]
debugging hints for Jikes RVM. It is assumed that you are familiar with debugging techniques. If you aren't, it is advisable to read a book about the subject.Debugging Helpers provided by Jikes RVMAssertionsAll debugging should be done with assertion-enabled builds if possible. You can also try using ExtremeAssertion builds.OptionsThe Jikes RVM and MMTk provide several options to print out debugging information.If you're debugging a problem in the optimizing compiler, you can also print out the IR.You can also use the options to change the behaviour in various ways (e.g. switch off certain optimizations) if you have a suspicion about the causes of the problem.Debugger ThreadJikes has an interactive debugger that you can invoke by sending SIGQUIT to Jikes while it's running:pkill -SIGQUIT JikesRVMIn previous versions of Jikes, that stopped all threads and provided an interactive prompt, but currently it just dumps the state of the VM and continues immediately (that's a known issue: RVM-570).Debug fields in classesSeveral classes in the code base provide static boolean fields like DEBUG or VERBOSE which can be set to get more debugging information.Shutdown hooksYou can write custom shutdown hooks to dump gathered information when the VM terminates. Note that shutdown hooks won't be run if the VM is terminated via a signal (see RVM-555)Do not use the ExitMonitor from the Callbacks class because it's less reliable.TestsThe test coverage is poor at the moment. Nevertheless, if you're very lucky, one of the smaller test cases will fail. See Testing the RVM for details on how to run the tests and define your own.ToolsThere are different tools for debugging Jikes RVM:GDBThere is a limited amount of C code used to start Jikes RVM. The rvm script will start Jikes RVM using GDB (the GNU debugger) if the first argument is -gdb. Break points can be set in the C code, variables, registers can be expected in the C code.
rvm -gdb <RVM args> <name of Java application> <application args>
The dynamically created Java code doesn't provide GDB with the necessary symbol information for debugging. As some of the Java code is created in the boot image, it is possible to find the location of some Java methods and to break upon them. To build with debug symbols, set rvm.debug-symbols to true.Details of how to manually walk the stack in GDB can be found hererdbrdb is a debugger that was developed specifically for Jikes RVM. It allows you to inspect the bootimage. If you're running Mac OS, you can also use it to debug a running Jikes RVM.Other ToolsOther tools, such as valgrind, are occasionally useful in debugging or understanding the behaviour of JikesRVM. The rvm script facilitates using these tools with the '-wrap' argument.
rvm -wrap "<wrapper-script-and-args>" <rest of command line>
For example, cachegrind can be invoked by
rvm -wrap "/path/to/valgrind --tool=cachegrind" <java-command-line>
The command and arguments immediately after the -wrap argument will be inserted into the script on the command line that invokes the boot image runner. One useful variant is
rvm -wrap echo <rest of command line>
Specific Debugging HintsOptimizing Compiler ProblemsTo debug problems in the optimizing compiler, use a configuration whose bootimage is compiled with the baseline compiler and which contains the AOS (prototype-opt, BaseAdaptive*). Faster configurations (such as development) have the drawback of a longer bootimage compilation time which won't be amortized unless the problem occurs late.It is advisable to use -X:vm:errorsFatal=true when debugging optimizing compiler problems. This will prevent the optimizing compiler from reverting to the baseline compiler for certain kinds of errors.It is strongly recommended to run with advice file generation (see Experimental Guidelines). The produced advice files can then be used to reproduce the bug. If this step is successful, the advice files should be minimized to determine the set of methods that cause the failures. This can be done automatically (e.g. via delta debugging) or by hand.You can also switch on paranoid IR verification in IR.java. Note that this is not well tested at the moment because we don't run any regression tests with it. Use a BaseAdaptive* configuration if you switch this on (bootimage builds with the optimizing compiler and paranoid IR fail at the time of this writing).DeadlocksTo debug a deadlock, run the VM under a time limit and send SIGQUIT (to force a thread dump) a few seconds before killing the VM. On Linux, you can use the timelimit program (should be available in the repositories for Debian-based distributions).Excluding Garbage Collection problemsThe garbage collectors that are included with the Jikes RVM are generally stable. Therefore, if you see a problem that does not occur during the collection itself, it is likely not a garbage collection problem. You can exclude problems related to garbage collection by building with other collectors. For example, you can choose a collector that doesn't move objects (e.g. MarkSweep) or a collector that doesn't require write barriers (e.g. Immix instead of GenImmix).
View Online
·
View Changes Online
[Less]
|
Posted
over 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "add rdb to tools, remove section about JPDA, add debugging hints, update gdb symbol seciton"
This page contains some debugging
... [More]
hints for Jikes RVM. It is assumed that you are familiar with debugging techniques. If you aren't, it is advisable to read a book about the subject.Debugging Helpers provided by Jikes RVMAssertionsAll debugging should be done with assertion-enabled builds if possible. You can also try using ExtremeAssertion builds.OptionsThe Jikes RVM and MMTk provide several options to print out debugging information.If you're debugging a problem in the optimizing compiler, you can also print out the IR.You can also use the options to change the behaviour in various ways (e.g. switch off certain optimizations) if you have a suspicion about the causes of the problem.Debugger ThreadJikes has an interactive debugger that you can invoke by sending SIGQUIT to Jikes while it's running:pkill -SIGQUIT JikesRVMIn previous versions of Jikes, that stopped all threads and provided an interactive prompt, but currently it just dumps the state of the VM and continues immediately (that's a known issue:
RVM-570
-
Debugger thread should suspend all other threads
( Open)
).Debug fields in classesSeveral classes in the code base provide static boolean fields like DEBUG or VERBOSE which can be set to get more debugging information.Shutdown hooksYou can write custom shutdown hooks to dump gathered information when the VM terminates. Note that shutdown hooks won't be run if the VM is terminated via a signal (see
RVM-555
-
run shutdown hooks on control-C
( Open)
)Do not use the ExitMonitor from the Callbacks class because it's less reliable.TestsThe test coverage is poor at the moment. Nevertheless, if you're very lucky, one of the smaller test cases will fail. See Testing the RVM for details on how to run the tests and define your own.ToolsThere are different tools for debugging Jikes RVM:GDBThere is a limited amount of C code used to start Jikes RVM. The rvm script will start Jikes RVM using GDB (the GNU debugger) if the first argument is -gdb. Break points can be set in the C code, variables, registers can be expected in the C code.
rvm -gdb <RVM args> <name of Java application> <application args>
The dynamically created Java code doesn't provide GDB with the necessary symbol information for debugging. As some of the Java code is created in the boot image, it is possible to find the location of some Java methods and to break upon them. To build with debug symbols, set rvm.debug-symbols to true.Details of how to manually walk the stack in GDB can be found hererdbrdb is a debugger that was developed specifically for Jikes RVM. It allows you to inspect the bootimage. If you're running Mac OS, you can also use it to debug a running Jikes RVM.Other ToolsOther tools, such as valgrind, are occasionally useful in debugging or understanding the behaviour of JikesRVM. The rvm script facilitates using these tools with the '-wrap' argument.
rvm -wrap "<wrapper-script-and-args>" <rest of command line>
For example, cachegrind can be invoked by
rvm -wrap "/path/to/valgrind --tool=cachegrind" <java-command-line>
The command and arguments immediately after the -wrap argument will be inserted into the script on the command line that invokes the boot image runner. One useful variant is
rvm -wrap echo <rest of command line>
Specific Debugging HintsOptimizing Compiler ProblemsTo debug problems in the optimizing compiler, use a configuration whose bootimage is compiled with the baseline compiler and which contains the AOS (prototype-opt, BaseAdaptive*). Faster configurations (such as development) have the drawback of a longer bootimage compilation time which won't be amortized unless the problem occurs late.It is advisable to use -X:vm:errorsFatal=true when debugging optimizing compiler problems. This will prevent the optimizing compiler from reverting to the baseline compiler for certain kinds of errors.It is strongly recommended to run with advice file generation (see Experimental Guidelines). The produced advice files can then be used to reproduce the bug. If this step is successful, the advice files should be minimized to determine the set of methods that cause the failures. This can be done automatically (e.g. via delta debugging) or by hand.You can also switch on paranoid IR verification in IR.java. Note that this is not well tested at the moment because we don't run any regression tests with it. Use a BaseAdaptive* configuration if you switch this on (bootimage builds with the optimizing compiler and paranoid IR fail at the time of this writing).DeadlocksTo debug a deadlock, run the VM under a time limit and send SIGQUIT (to force a thread dump) a few seconds before killing the VM. On Linux, you can use the timelimit program (should be available in the repositories for Debian-based distributions).Excluding Garbage Collection problemsThe garbage collectors that are included with the Jikes RVM are generally stable. Therefore, if you see a problem that does not occur during the collection itself, it is likely not a garbage collection problem. You can exclude problems related to garbage collection by building with other collectors. For example, you can choose a collector that doesn't move objects (e.g. MarkSweep) or a collector that doesn't require write barriers (e.g. Immix instead of GenImmix).
View Online
·
View Changes Online
[Less]
|
Posted
over 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "move hints for getting contributions merged into a separate section "
Contributing DocumentationIf you want to help us improve
... [More]
our User Guide and other online documentation, please contact a Steering Committee Member and ask for editing permissions for our wiki space.Contributing CodeIf you have extended Jikes RVM and would like to contribute your extension back to the community, please use the patch tracker to submit your contribution. Please include the following:Your contribution in the form of patches or bundles (see below)The appropriate Statement of Origin (see below)A description of the functionality you are contributingThe version of Jikes RVM used to create your patchYour contribution will be licensed under the EPL (Eclipse Public License), the license used for Jikes RVM. The license has been approved by the OSI (Open Source Initiative) as a fully certified open source license. If your contribution is included in the system, you will be acknowledged on the contributors web page, along with getting the satisfaction of making the world a better place.Getting your code contribution mergedYou should make it easy for members of the Jikes RVM team to merge your code contribution.At minimum, you must do the following:Make sure that your contribution follows our coding style. Use Checkstyle (e.g. via "ant checkstyle") to check for common errors.After verifying that there are no checkstyle errors, run the pre-commit tests on your machine.After the pre-commit run is done, you can find the report at results/tests/pre-commit/Report.html in your jikesrvm directory. It should read something like "Total Success Rate: 128/128" (numbers from August 2012). The report will also display the revision number, if applicable. If the revision number ends with a +, you have uncommited changes in your working copy. Check that the uncommited changes are not supposed to be in your patch.The Jikes RVM team will check for those points.You can do the following things to further increase the chances that your contribution will be merged:Split your contribution in a set of patches with each patch representing a commit. The size of the patches is not important. However, it is important that each patch contains exactly one conceptual change. One way to check this is to think of a summary message for each patch. If your summary message contains an "and", you should check if there is a sensible way to split up your patch. The set of patches should show the development of the feature as it would have been ideally, i.e. you should remove dead ends. Put the reasoning for the changes (and why alternative solutions are not appropriate) in the commit messages. If you are unfamiliar with preparing patches for open source projects, take a look at this article from the Linux Foundation. Write useful commit messages. Use the first sentence to give a summary of the issue. If you are fixing a JIRA issue, please mention it in the description.
Example commit message
Icon
RVM-XXXX : Fixed a bug in foo.Longer description of the change, the reasons for the change and the consequences. This part can span multiple paragraphs and is optional: you will need to decide what's important for people looking at the commit.
Consider providing a README if your chosen patch format does not support commit messages.Run appropriate existing tests other than pre-commit. This is especially useful if your changes touch an area of the code that is not covered by pre-commit (e.g. alternative garbage collectors).Provide automated tests for your contribution.Follow up on your patch until it is in the mainline. This may include answering questions, reworking your patch and gently reminding the developers of your contribution.Contributing patchesPatches should apply against a revision of the main repository. This ensures that your patch can always be applied easily. You can use hg export to create patch files from your commits.Contributing bundlesIf you contribute your changes in the form of mercurial bundles, you must make sure that the parent changeset of your first changeset is in the main repository. If it is not, hg unbundle will fail and your bundles cannot be imported.Statement of originAll contributions must include one of the Statements of Origin below. Insert your name(s) in the first blank(s) and a high-level summary in the blank in a (i) . Examples of a high-level summary are "Fixed bug in scheduler", "Extended type propagation in optimizing compiler", or "Added new garbage collector".If your contribution is owned by your employer, someone authorized by your employer to make such a decision must add a comment to the patch in the tracker stating that you have permission to contribute it.Statement of Origin: Single Contributor Single Contributor for all Contributions Multiple Contributors
View Online
·
View Changes Online
[Less]
|
Posted
over 11 years
ago
by
Erik Brangs
Page
edited by
Erik Brangs
- "corrections to previous edit"
Jikes™ RVM executes Java virtual machine byte code instructions from .class files. It does not
... [More]
compile Java™ source code. Therefore, you must compile all Java source files into bytecode using your favorite Java compiler.For example, to run class foo with source code in file foo.java:
% javac foo.java
% rvm foo
The general syntax is
rvm [rvm options...] class [args...]
You may choose from a myriad of options for the rvm command-line. Options fall into two categories: standard and non-standard. Non-standard options are preceded by "-X:" and differ between virtual machines (e.g. Jikes RVM's options may not be available in HotSpot and vice-versa).Standard Command-Line OptionsWe currently support a subset of the JDK 1.5 standard options. Below is a list of all options and their descriptions. Unless otherwise noted each option is supported in Jikes RVM.OptionDescription{-cp or -classpath} <directories and zip/jar files separated by ":">set search path for application classes and resources-D<name>=<value>set a system property-verbose:[ class | gc | jni ]enable verbose output-versionprint current VM version and terminate the run-showversionprint current VM version and continue running-fullversionlike "-version", but with more information-? or -helpprint help message-Xprint help on non-standard options-jarexecute a jar file-javaagent:<jarpath>[=<options>]load Java programming language agent, see java.lang.instrumentNon-Standard Command-Line OptionsIt is generally the case that the non-standard options may change from one release to another. However, the core and memory non-standard options that are listed here don't change often.The bulk of the non-standard options are grouped according to the subsystem that they control. See below for details.Core Non-Standard Command-Line OptionsOptionDescription-X:verbosePrint out additional lowlevel information for GC and hardware trap handling-X:verboseBoot=<number>Print out additional information while VM is booting, using verbosity level <number>-X:sysLogfile=<filename>Write standard error message to <filename>-X:ic=<filename>Read boot image code from <filename>-X:id=<filename>Read boot image data from <filename>-X:ir=<filename>Read boot image ref map from <filename>-X:vmClasses=<path>Load the org.jikesrvm.* and java.* classes from <path>-X:processors=<number|"all">The number of processors that the garbage collector will useMemory Non-Standard Command-Line OptionsOptionDescription-Xms<number><unit>Initial size of heap where <number> is an integer, an extended-precision floating point or a hexadecimal value and <unit> is one of T (Terabytes), G (Gigabytes), M (Megabytes), pages (of size 4096), K (Kilobytes) or <no unit> for bytes-Xmx<number><unit>Maximum size of heap. See above for definition of <number> and <unit>Subsystem Non-Standard Command-Line OptionsThe other non-standard command line options are not listed here because they will change from time to time. To get a current list of these options, you can do the following:To find out which subsystems are available in the image you're using:
rvm -X
To get information about the options for a specific subsystem (e.g. the garbage collection subsystem)
rvm -X:gc:help
To find out the current values of the options for a specific subystem (e.g. the optimizing compiler subsystem)
rvm -X:opt:printOptions
Running Jikes RVM with valgrind Jikes RVM can run under valgrind, as of SVN revision 6791 (29-Aug-2007). Applying a patch of this revision to release 3.2.1 should also produce a working system. Versions of valgrind CVS prior to release 3.0 are also known to have worked.To run a Jikes RVM build with valgrind, use the -wrap flag to invoke valgrind, eg
rvm -wrap "path/to/valgrind --smc-check=all <valgrind-options>" <jikesrvm-options> ...
this will insert the invocation of valgrind at the appropriate place for it to operate on Jikes RVM proper rather than a wrapper script. Under some circumstances, valgrind will load shared object libraries or allocate memory in areas of the heap that conflict with Jikes RVM. Using the flag -X:gc:eagerMmapSpaces=true will prevent and/or detect this. If this flag reveals errors while mapping the spaces, you will need to rearrange the heap to avoid the addresses that valgrind is occupying.
View Online
·
View Changes Online
[Less]
|