= Welcome to Hydra'''VM''' = [[Image(/chrome/site/excerpts_mm2_0501.jpg, right, 35%)]] The HydraVM project focuses on automatically refactoring concurrency into legacy codebases for improved performance on emerging hardware with significantly increased thread-level parallelism. With the ubiquity of multicore architectures, large enterprise-class legacy codebases, some of which are (intentionally) designed to be sequential to reduce development costs, are confronted with hardware refresh challenges for improving performance. Manual concurrency refactoring is non-scalable when code size becomes large (e.g., coping with shared data, race conditions, identifying parallel code) and due to the need for low-level optimizations that are necessary for the hardware at-hand for obtaining high performance (e.g., thread communication, locality, caching, scheduling). The project is exploring a language-independent approach for automated concurrency refactoring using a number of techniques including static- and run-time program analysis, speculative execution using transactional memory abstractions and mechanisms, and code transformations and optimizations at an intermediate representation-level. Implementation is being explored using the [http://www.jikesrvm.org Jikes RVM] and the [http://www.jikesrvm.org LLVM] compiler infrastructure. ''[wiki:Team Hydra VM Team]'' == Starting Points == * Getting Started with HydraVM * Downloads * [wiki:SvnCheckOut Checking out source code] * Resources * [http://www.jikesrvm.org Jikes RVM] * [http://www.graphviz.org GraphViz] * [http://cs.au.dk/~mis/dOvs/jvmspec/ref-Java.html Java Bytecode Reference] * [http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html Class file format] * Documentation * [wiki:Architecture How it works?] * [wiki:Visualization Code Visualization] * [wiki:ByteSTM ByteSTM] * [wiki:Para Extracting Parallelism] * [wiki:Presentations Presentations] * [wiki:Publications Publications] ---- This work is supported in part by AFOSR under grant FA9550-14-1-0187. Any opinions, findings, and conclusions or recommendations expressed in this site are those of the author(s) and do not necessarily reflect the views of AFOSR.