Cargando…

Oracle JRockit The Definitive Guide : the Definitive Guide.

Develop and manage robust Java applications with Oracle's high-performance JRockit Java Virtual Machine with this book and eBook.

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Hirt, Marcus
Otros Autores: Lagergren, Marcus
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Pub., 2010.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Oracle JRockit; Oracle JRockit; Credits; Foreword; About the Authors; Acknowledgement; About the Reviewers; Preface; What this book covers; What you need for this book; Who this book is for; Conventions; Reader feedback; Customer support; Errata; Piracy; Questions; 1. Getting Started; Obtaining the JRockit JVM; Migrating to JRockit; Command-line options; System properties; Standardized options; Non-standard options; VM flags; Changes in behavior; A note on JRockit versioning; Getting help; Summary; 2. Adaptive Code Generation; Platform independence; The Java Virtual Machine; Stack machine.
  • Bytecode formatOperations and operands; The constant pool; Code generation strategies; Pure bytecode interpretation; Static compilation; Total JIT compilation; Mixed mode interpretation; Adaptive code generation; Determining ""hotness""; Invocation counters; Software-based thread sampling; Hardware-based sampling; Optimizing a changing program; Inside the JIT compiler; Working with bytecode; Bytecode obfuscation; Bytecode ""optimizers""; Abstract syntax trees; Where to optimize; The JRockit code pipeline; Why JRockit has no bytecode interpreter; Bootstrapping; Runtime code generation.
  • TrampolinesCode generation requests; Optimization requests; On-stack replacement; Bookkeeping; Object information for GC; Source code and variable information; Assumptions made about the generated code; A walkthrough of method generation in JRockit; The JRockit IR format; Data flow; Control flow; A word about exceptions; JIT compilation; Generating HIR; MIR; LIR; Register allocation; Native code emission; Generating optimized code; A general overview; How does the optimizer work?; Controlling code generation in JRockit; Command-line flags and directive files; Command-line flags; Logging.
  • Turning off optimizationsChanging the number of code generation threads; Directive files; Summary; 3. Adaptive Memory Management; The concept of automatic memory management; Adaptive memory management; Advantages of automatic memory management; Disadvantages of automatic memory management; Fundamental heap management; Allocating and releasing objects; Fragmentation and compaction; Garbage collection algorithms; Reference counting; Tracing techniques; Mark and sweep; Stop and copy; Stopping the world; Conservative versus exact collectors; Livemaps; Generational garbage collection.
  • Multi generation nurseriesWrite barriers; Throughput versus low latency; Optimizing for throughput; Optimizing for low latency; Garbage collection in JRockit; Old collections; Nursery collections; Permanent generations; Compaction; Speeding it up and making it scale; Thread local allocation; Larger heaps; 32-Bits and the 4-GB Barrier; The 64-bit world; Compressed references; Cache friendliness; Prefetching; Data placement; NUMA; Large pages; Adaptability; Near-real-time garbage collection; Hard and soft real-time; JRockit Real Time; Does the soft real-time approach work?; How does it work?