Welcome to the session...
|
|
- Lawrence Nichols
- 5 years ago
- Views:
Transcription
1 Welcome to the session... Copyright 2013, Oracle and/or its affiliates. All rights reserved. 02/22/2013 1
2 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle s products remains at the sole discretion of Oracle. Basically, don t trust anything I say... Copyright 2013, Oracle and/or its affiliates. All rights reserved. 02/22/2013 2
3 Java Flight Recorder - Next generation diagnostics and profiling Rickard Bäckman HotSpot JVM Compiler Team, Java Platform
4 public class Example { public void savetransaction(transaction tn) { synchronized (somelock) { // save to some shared data structure } } } 4
5 public class Example { public void savetransaction(transaction tn) { System.err.println(threadId + Waiting for lock ); synchronized (somelock) { System.err.println(threadId + Got lock ); // save to some shared data structure } System.err.println(threadId + Lock released ); } } 5
6 ... few million lines of output [T1] Waiting for lock [T3] Waiting for lock [T2] Waiting for lock [T2] Got lock [T1] Got lock [T1] Lock released [T3] Got lock [T3] Lock released [T2] Lock released... another million lines of output 6
7 Java Flight Recorder - Overview Released in 7u40 7
8 Java Flight Recorder - Overview 8
9 Java Flight Recorder - Overview Event Recorder & Profiler 9
10 Java Flight Recorder - Overview Implemented in the JVM 10
11 Java Flight Recorder - Overview No restart required 11
12 Java Flight Recorder - Overview After-the-facts analysis - What went wrong? 12
13 Event Recorder JVM tracks lots of information 13
14 Event Recorder JVMTI? 14
15 Event Recorder Instrumented JVM & JDK - Make that information visible 15
16 Profiler What is my CPU doing?!? 16
17 Inside the JVM Core in the JVM High-level things in Java 17
18 Inside the JVM Access to JVM internals & subsystems 18
19 Inside the JVM Class Unloading & Safepoints 19
20 Non-intrusive Designed to run all the time. In your production environment 20
21 Non-intrusive Low overhead Captures information that is already there 21
22 Non-intrusive Enable & disable at runtime 22
23 After-the-facts Problem in the environment 23
24 After-the-facts What happened before? 24
25 After-the-facts Keeps history of information 25
26 After-the-facts Java Mission Control - Dump the data on an SLA breach 26
27 Things JFR captures Compilation statistics Socket read/write VM Operations Context switches Object Count Exceptions Class Unload Garbage Collection Method Compilation CPU Load Class Load Object allocation Threads Locks Metaspace Statistics CodeCache Profiling Thread.sleep File read/write Garbage Collection statistics 27
28 Sampling Profiler How to implement a profiler? 28
29 Sampling Profiler JVMTI 29
30 Sampling Profiler Byte code instrumentation 30
31 Sampling Profiler Stop the thread, walk the stack, collect the methods. 31
32 Demo 32
33 Enable Java Flight Recorder -XX:+UnlockCommercialFeatures -XX:+FlightRecorder 33
34 Start recording -XX:StartFlightRecording=filename=<...>,duration=5m 34
35 Start on demand Java Mission Control or jcmd <pid> JFR.start <options> 35
36 Some interesting options stackdepth=<nr> dumponexit=<true/false> 36
37 Events Abstraction of captured information 37
38 Events Captures something interesting Latency? Performance? 38
39 Instant Events Happens instantly - Thread start, Thread stop, Class unload 39
40 Duration Events Happens over a period of time - Compilation, Garbage Collection, Wait for a lock 40
41 Requestable Events Something that should be done repeatedly - CPU Load, Profiling Events Context switches 41
42 Settings & Filtering Enable & disable 42
43 Settings & Filtering Threshold 43
44 Settings & Filtering Frequency / Period 44
45 Settings & Filtering Stack traces 45
46 Settings & Filtering Control signal / noise 46
47 Settings & Filtering Filter early! 47
48 Recording Start a recording 48
49 Recording Generates a stream of events 49
50 Recording Applies a filter and captures the remaining 50
51 Recording One stream of Events 51
52 Recording Multiple recordings 52
53 Recording The Union of Events 53
54 Profiles A preconfigured settings for a recording 54
55 Profiles default & profile 55
56 Profiles Create your own 56
57 Java Flight Recorder Implementation 57
58 Java Flight Recorder Challenges Assembly! File format Implementation Events C++ Low level Memory buffers 58
59 Challenges Overhead must be low 59
60 Challenges Memory footprint 60
61 Challenges The JVM environment is changing 61
62 Challenges Scalability 62
63 Events in detail Header Optional Size Event ID End Time Start Time Thread StackTrace Payload 63
64 Events in detail Self-describing Events 64
65 Event Metadata Name, Path, Description 65
66 Event Payload Metadata Name, Type, Description & Content Type 66
67 Content Type Semantics of a Value Content Type Displayed as Bytes 42 MB Percentage 42% Address 0xDEADBEEF Millis 242 ms 67
68 Content Type Can be multiple Values Content Type Class Displayed Class Loader Name Modifiers (public,final) 68
69 Event definition in HotSpot <event id="threadsleep" path="java/thread_sleep" label="java Thread Sleep" has_thread="true" has_stacktrace="true" is_instant="false"> <value type="millis" field="time" label="sleep Time"/> </event> What does it actually mean? path is a identifier for the UI, label is a description of the Event has_thread means each event is tied to a Thread has_stacktrace means get a stack trace for the Event is_instant decides whether it is instant event or not Finally the payload with a type name and a description. 69
70 Event in C++ EventThreadSleep event; if (event.should_commit()) { event.set_time(millis); event.commit(); } An example of an event in the HotSpot source code. This event repots the time a thread slept. Thread.sleep() So the event is created and when the thread returns from sleep we check if the event was enabled and should be committed. If so we save the time and commit. 70
71 Or in assembler 281: cmp BYTE [rbp-0x60],0x0 # should commit 285: je 300 # jump if zero 287: mov QWORD rbp-0x58],rbx # save time 291: lea rdi,[rbp-0x70] # get pointer 295: call 0x101b17dc4 # commit This is basically the assembler code generated for the same code (for amd64). Reserve some memory on the stack, initialize it. Check if the event was enabled, otherwise jump away. Save the time, get the pointer and call commit. The overhead of an event that is disabled is very small. Compare a value to zero and jump away. 71
72 Buffers Thread-local buffers 72
73 Buffers Promoted to Global buffers - Global buffers are circular Global Buffer Global Buffer Global Buffer Global Buffer 73
74 File Format Binary proprietary 74
75 File Format Fast writing 75
76 File Format Self Contained Header Event Records Event Meta Data 76
77 Low-level Enough High-Level Problems & Solutions 77
78 Starting Problem Classes are referenced by Events 78
79 Starting Problem java.lang.string 79
80 Starting Problem org.springframework.security.ui.preauth.preaut henticatedgrantedauthoritieswebauthenticatio ndetails 80
81 Starting Problem 99 characters! 81
82 Starting Problem class Klass { u8 _trace_id; } Introduce a unique ID event id class count 17 java.lang.integer 2 event id class count java.lang.integer java.lang.string java.lang.math java.util.list 82
83 New problem Mapping 83
84 Class List Must be synchronized 84
85 Class List Class Load? 85
86 Class List Class Load? - Startup performance! 86
87 Class List End of a Recording? 87
88 Class List End of a Recording? - Classes can unload! 88
89 Class List Piggyback Class Unloading! 89
90 Class List The Class List can grow Big 90
91 Class List Lots of classes + Long class names = Lots of wasted memory 91
92 Tagged Classes Reserve a bit in the ID 92
93 Tagged Classes Tag referenced classes! #define CLASS_USED 1 void use_class_id(klass* const klass) { klass->_trace_id = CLASS_USED; } 93
94 Class List Classes come & go. Don t waste memory 94
95 Checkpoints Special Event 95
96 Checkpoints Writes the Class List, Resets the tags & clears the Class List class_pool.lookup(242) java.lang.integer method_pool.lookup(314) java.lang.math:pow() 96
97 Constant Pool Classes, Methods, Stack Traces, Threads, Thread Groups, Strings 97
98 Checkpoints - revisit Events + Constant Pools + Event Metadata = Checkpoint 98
99 Checkpoints - revisit checkpoint events constant pools meta-data... 99
100 Checkpoints - revisit Contain everything required to parse the events prior to the checkpoint 100
101 More information Whitepaper User Guide Forum java_hotspot_virtual_machine/java_mission_control 101
102 Q&A 102
103 Thank you 103
Mission Possible - Near zero overhead profiling. Klara Ward Principal Software Developer Java Mission Control team, Oracle February 6, 2018
Mission Possible - Near zero overhead profiling Klara Ward Principal Software Developer Java Mission Control team, Oracle February 6, 2018 Hummingbird image by Yutaka Seki is licensed under CC BY 2.0 Copyright
More informationJava Flight Recorder Runtime Guide Release 5.5
[1]Java Platform, Standard Edition Java Flight Recorder Runtime Guide Release 5.5 E28976-04 March 2015 Describes the Java Flight Recorder runtime implementation and instructions for using the tool. Java
More informationAlan Bateman Java Platform Group, Oracle November Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1
Alan Bateman Java Platform Group, Oracle November 2018 Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1 Project Loom Continuations Fibers Tail-calls Copyright 2018, Oracle and/or its
More informationJava Platform, Standard Edition Java Flight Recorder Command Reference. Release 10
Java Platform, Standard Edition Java Flight Recorder Command Reference Release 10 E92740-01 March 2018 Java Platform, Standard Edition Java Flight Recorder Command Reference, Release 10 E92740-01 Copyright
More informationLesson 2 Dissecting Memory Problems
Lesson 2 Dissecting Memory Problems Poonam Parhar JVM Sustaining Engineer Oracle Agenda 1. Symptoms of Memory Problems 2. Causes of Memory Problems 3. OutOfMemoryError messages 3 Lesson 2-1 Symptoms of
More informationJava Performance: The Definitive Guide
Java Performance: The Definitive Guide Scott Oaks Beijing Cambridge Farnham Kbln Sebastopol Tokyo O'REILLY Table of Contents Preface ix 1. Introduction 1 A Brief Outline 2 Platforms and Conventions 2 JVM
More informationProject Loom Ron Pressler, Alan Bateman June 2018
Project Loom Ron Pressler, Alan Bateman June 2018 Copyright 2018, Oracle and/or its affiliates. All rights reserved.!1 Safe Harbor Statement The following is intended to outline our general product direction.
More informationAhead of Time (AOT) Compilation
Ahead of Time (AOT) Compilation Vaibhav Choudhary (@vaibhav_c) Java Platforms Team https://blogs.oracle.com/vaibhav Copyright 2018, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement
More informationThe Z Garbage Collector Low Latency GC for OpenJDK
The Z Garbage Collector Low Latency GC for OpenJDK Per Lidén & Stefan Karlsson HotSpot Garbage Collection Team Jfokus VM Tech Summit 2018 Safe Harbor Statement The following is intended to outline our
More informationORACLE ENTERPRISE MANAGER 10g ORACLE DIAGNOSTICS PACK FOR NON-ORACLE MIDDLEWARE
ORACLE ENTERPRISE MANAGER 10g ORACLE DIAGNOSTICS PACK FOR NON-ORACLE MIDDLEWARE Most application performance problems surface during peak loads. Often times, these problems are time and resource intensive,
More informationJDK 9/10/11 and Garbage Collection
JDK 9/10/11 and Garbage Collection Thomas Schatzl Senior Member of Technical Staf Oracle JVM Team May, 2018 thomas.schatzl@oracle.com Copyright 2017, Oracle and/or its afliates. All rights reserved. 1
More informationThe Z Garbage Collector An Introduction
The Z Garbage Collector An Introduction Per Lidén & Stefan Karlsson HotSpot Garbage Collection Team FOSDEM 2018 Safe Harbor Statement The following is intended to outline our general product direction.
More informationZing Vision. Answering your toughest production Java performance questions
Zing Vision Answering your toughest production Java performance questions Outline What is Zing Vision? Where does Zing Vision fit in your Java environment? Key features How it works Using ZVRobot Q & A
More informationThe Z Garbage Collector Scalable Low-Latency GC in JDK 11
The Z Garbage Collector Scalable Low-Latency GC in JDK 11 Per Lidén (@perliden) Consulting Member of Technical Staff Java Platform Group, Oracle October 24, 2018 Safe Harbor Statement The following is
More informationJVM Memory Model and GC
JVM Memory Model and GC Developer Community Support Fairoz Matte Principle Member Of Technical Staff Java Platform Sustaining Engineering, Copyright 2015, Oracle and/or its affiliates. All rights reserved.
More informationJVM Troubleshooting MOOC: Troubleshooting Memory Issues in Java Applications
JVM Troubleshooting MOOC: Troubleshooting Memory Issues in Java Applications Poonam Parhar JVM Sustaining Engineer Oracle Lesson 1 HotSpot JVM Memory Management Poonam Parhar JVM Sustaining Engineer Oracle
More informationOracle Java SE Advanced for ISVs
Oracle Java SE Advanced for ISVs Oracle Java SE Advanced for ISVs is designed to enhance the Java based solutions that ISVs are providing to their enterprise customers. It brings together industry leading
More information2011 Oracle Corporation and Affiliates. Do not re-distribute!
How to Write Low Latency Java Applications Charlie Hunt Java HotSpot VM Performance Lead Engineer Who is this guy? Charlie Hunt Lead JVM Performance Engineer at Oracle 12+ years of
More informationOracle WebCenter Portal Performance Tuning
ORACLE PRODUCT LOGO Oracle WebCenter Portal Performance Tuning Rich Nessel - Principal Product Manager Christina Kolotouros - Product Management Director 1 Copyright 2011, Oracle and/or its affiliates.
More informationgenerate-jvm-report shows the threads, classes, memory, and loggers for a given target instance. Name Synopsis
Name Synopsis Description Options generate-jvm-report shows the threads, classes, memory, and loggers for a given target instance. generate-jvm-report [--help] [ --type =summary memory class thread log]
More informationServlet Performance and Apache JServ
Servlet Performance and Apache JServ ApacheCon 1998 By Stefano Mazzocchi and Pierpaolo Fumagalli Index 1 Performance Definition... 2 1.1 Absolute performance...2 1.2 Perceived performance...2 2 Dynamic
More informationMark Falco Oracle Coherence Development
Achieving the performance benefits of Infiniband in Java Mark Falco Oracle Coherence Development 1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy
More informationThe G1 GC in JDK 9. Erik Duveblad Senior Member of Technical Staf Oracle JVM GC Team October, 2017
The G1 GC in JDK 9 Erik Duveblad Senior Member of Technical Staf racle JVM GC Team ctober, 2017 Copyright 2017, racle and/or its affiliates. All rights reserved. 3 Safe Harbor Statement The following is
More informationVirtual Machine Design
Virtual Machine Design Lecture 4: Multithreading and Synchronization Antero Taivalsaari September 2003 Session #2026: J2MEPlatform, Connected Limited Device Configuration (CLDC) Lecture Goals Give an overview
More informationInnoDB: Status, Architecture, and Latest Enhancements
InnoDB: Status, Architecture, and Latest Enhancements O'Reilly MySQL Conference, April 14, 2011 Inaam Rana, Oracle John Russell, Oracle Bios Inaam Rana (InnoDB / MySQL / Oracle) Crash recovery speedup
More informationSafe Harbor Statement
Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment
More informationFlight Recorder Run Time Guide Release R28
[1]Oracle JRockit Flight Recorder Run Time Guide Release R28 E15070-10 July 2016 This document contains background on the Oracle JRockit Flight Recorder Run-time implementation and instructions for using
More informationEnd-to-End Java Security Performance Enhancements for Oracle SPARC Servers Performance engineering for a revenue product
End-to-End Java Security Performance Enhancements for Oracle SPARC Servers Performance engineering for a revenue product Luyang Wang, Pallab Bhattacharya, Yao-Min Chen, Shrinivas Joshi and James Cheng
More informationWhat's new in MySQL 5.5? Performance/Scale Unleashed
What's new in MySQL 5.5? Performance/Scale Unleashed Mikael Ronström Senior MySQL Architect The preceding is intended to outline our general product direction. It is intended for
More informationUnified JVM Logging in JDK 9
Unified JVM Logging in JDK 9 Marcus Larsson Senior Member of Technical Staf Oracle, HotSpot Runtime Team September, 2016 Safe Harbor Statement The following is intended to outline our general product direction.
More information1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.
1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Re-Engineering Your Database Design with Oracle SQL Developer Data Modeler Swarnapriya Shridhar Curriculum IDC Operations Manager 2
More informationAttila Szegedi, Software
Attila Szegedi, Software Engineer @asz Everything I ever learned about JVM performance tuning @twitter Everything More than I ever wanted to learned about JVM performance tuning @twitter Memory tuning
More informationAgenda. CSE P 501 Compilers. Java Implementation Overview. JVM Architecture. JVM Runtime Data Areas (1) JVM Data Types. CSE P 501 Su04 T-1
Agenda CSE P 501 Compilers Java Implementation JVMs, JITs &c Hal Perkins Summer 2004 Java virtual machine architecture.class files Class loading Execution engines Interpreters & JITs various strategies
More informationDistributed Systems 8. Remote Procedure Calls
Distributed Systems 8. Remote Procedure Calls Paul Krzyzanowski pxk@cs.rutgers.edu 10/1/2012 1 Problems with the sockets API The sockets interface forces a read/write mechanism Programming is often easier
More informationConcurrent Garbage Collection
Concurrent Garbage Collection Deepak Sreedhar JVM engineer, Azul Systems Java User Group Bangalore 1 @azulsystems azulsystems.com About me: Deepak Sreedhar JVM student at Azul Systems Currently working
More informationThe Art of JVM Profiling. Andrei Pangin Vadim Tsesko
The Art of JVM Profiling 2017 Andrei Pangin Vadim Tsesko http://recetasfamilia.com/escala-scoville/ 2 Одноклассники 48 M DAU 8500 machines in 4 DC 1.2 Tb/s Up to 70 К QPS/server 99% < 100 ms Java 3 Profilers
More informationA RESTful Java Framework for Asynchronous High-Speed Ingest
A RESTful Java Framework for Asynchronous High-Speed Ingest Pablo Silberkasten Jean De Lavarene Kuassi Mensah JDBC Product Development October 5, 2017 3 Safe Harbor Statement The following is intended
More informationTIBCO BusinessEvents Extreme. System Sizing Guide. Software Release Published May 27, 2012
TIBCO BusinessEvents Extreme System Sizing Guide Software Release 1.0.0 Published May 27, 2012 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR
More informationElastic Data. Harvey Raja Principal Member Technical Staff Oracle Coherence
Elastic Data Harvey Raja Principal Member Technical Staff Oracle Coherence The following is intended to outline our general product direction. It is intended for information purposes only, and may not
More informationgenerate-jvm-report shows the threads, classes, memory, and loggers for a given target instance. Name Synopsis
Name Synopsis Description generate-jvm-report shows the threads, classes, memory, and loggers for a given target instance. generate-jvm-report [--terse={true false}][ --echo={true false} ] [ --interactive={true
More informationA NEW PLATFORM FOR A NEW ERA. Copyright 2014 Pivotal. All rights reserved.
A NEW PLATFORM FOR A NEW ERA 1 2 Java Memory Leaks in Modular Environments Mark Thomas November 2016 Introductions Mark Thomas markt@apache.org Tomcat committer and PMC member Joined Tomcat community in
More information<Insert Picture Here> Get on the Grid. JVM Language Summit Getting Started Guide. Cameron Purdy, VP of Development, Oracle
Get on the Grid JVM Language Summit Getting Started Guide Cameron Purdy, VP of Development, Oracle The following is intended to outline our general product direction. It is intended
More informationApplication Management Webinar. Daniela Field
Application Management Webinar Daniela Field Agenda } Agile Deployment } Project vs Node Security } Deployment } Cloud Administration } Monitoring } Logging } Alerting Cloud Overview Cloud Overview Project
More informationSeparating Access Control Policy, Enforcement, and Functionality in Extensible Systems. Robert Grimm University of Washington
Separating Access Control Policy, Enforcement, and Functionality in Extensible Systems Robert Grimm University of Washington Extensions Added to running system Interact through low-latency interfaces Form
More informationJava in a World of Containers
Java in a World of Containers mikael.vidstedt@oracle.com Director, JVM @MikaelVidstedt Copyright 2018, Oracle and/or its affiliates. All rights reserved. 1 Safe Harbor Statement The following is intended
More informationMySQL Performance Tuning 101
MySQL Performance Tuning 101 Hands-on-Lab Mirko Ortensi Senior Support Engineer MySQL Support @ Oracle October 3, 2017 Copyright 2017, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement
More informationJAVA PERFORMANCE. PR SW2 S18 Dr. Prähofer DI Leopoldseder
JAVA PERFORMANCE PR SW2 S18 Dr. Prähofer DI Leopoldseder OUTLINE 1. What is performance? 1. Benchmarking 2. What is Java performance? 1. Interpreter vs JIT 3. Tools to measure performance 4. Memory Performance
More informationWhy GC is eating all my CPU? Aprof - Java Memory Allocation Profiler Roman Elizarov, Devexperts Joker Conference, St.
Why GC is eating all my CPU? Aprof - Java Memory Allocation Profiler Roman Elizarov, Devexperts Joker Conference, St. Petersburg, 2014 Java Memory Allocation Profiler Why it is needed? When to use it?
More information1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8
1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8 ADVANCED MYSQL REPLICATION ARCHITECTURES Luís
More informationIs your profiler speaking the same language as you? Simon
Is your profiler speaking the same language as you? Simon Maple @sjmaple Simon Maple - @sjmaple Agenda Performance Tools Performance by numbers Sampling vs Tracing XRebel JRebel 3 Performance Tools Java
More informationOperating Systems. 18. Remote Procedure Calls. Paul Krzyzanowski. Rutgers University. Spring /20/ Paul Krzyzanowski
Operating Systems 18. Remote Procedure Calls Paul Krzyzanowski Rutgers University Spring 2015 4/20/2015 2014-2015 Paul Krzyzanowski 1 Remote Procedure Calls 2 Problems with the sockets API The sockets
More informationFundamentals of GC Tuning. Charlie Hunt JVM & Performance Junkie
Fundamentals of GC Tuning Charlie Hunt JVM & Performance Junkie Who is this guy? Charlie Hunt Currently leading a variety of HotSpot JVM projects at Oracle Held various performance architect roles at Oracle,
More informationLanguage Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program.
Language Translation Compilation vs. interpretation Compilation diagram Step 1: compile program compiler Compiled program Step 2: run input Compiled program output Language Translation compilation is translation
More informationCSE 451: Operating Systems Winter Processes. Gary Kimura
CSE 451: Operating Systems Winter 2013 Processes Gary Kimura Process management This module begins a series of topics on processes, threads, and synchronization this is the most important part of the class,
More informationDebugging Your Production JVM TM Machine
Debugging Your Production JVM TM Machine Ken Sipe Perficient (PRFT) kensipe@gmail.com @kensipe Abstract > Learn the tools and techniques used to monitor, trace and debugging running Java applications.
More informationHigh-Level Language VMs
High-Level Language VMs Outline Motivation What is the need for HLL VMs? How are these different from System or Process VMs? Approach to HLL VMs Evolutionary history Pascal P-code Object oriented HLL VMs
More informationEnterprise Architect. User Guide Series. Profiling
Enterprise Architect User Guide Series Profiling Investigating application performance? The Sparx Systems Enterprise Architect Profiler finds the actions and their functions that are consuming the application,
More informationCSE P 501 Compilers. Java Implementation JVMs, JITs &c Hal Perkins Winter /11/ Hal Perkins & UW CSE V-1
CSE P 501 Compilers Java Implementation JVMs, JITs &c Hal Perkins Winter 2008 3/11/2008 2002-08 Hal Perkins & UW CSE V-1 Agenda Java virtual machine architecture.class files Class loading Execution engines
More informationEnterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH
Enterprise Architect User Guide Series Profiling Author: Sparx Systems Date: 10/05/2018 Version: 1.0 CREATED WITH Table of Contents Profiling 3 System Requirements 8 Getting Started 9 Call Graph 11 Stack
More information<Insert Picture Here> Maxine: A JVM Written in Java
Maxine: A JVM Written in Java Michael Haupt Oracle Labs Potsdam, Germany The following is intended to outline our general product direction. It is intended for information purposes
More informationUsing Intel VTune Amplifier XE and Inspector XE in.net environment
Using Intel VTune Amplifier XE and Inspector XE in.net environment Levent Akyil Technical Computing, Analyzers and Runtime Software and Services group 1 Refresher - Intel VTune Amplifier XE Intel Inspector
More informationWindows Java address space
Windows Java address space This article applies to the IBM 32-bit SDK and Runtime Environment for Windows, Java2 Technology Edition. It explains how the process space for Java is divided and explores a
More informationNPTEL Course Jan K. Gopinath Indian Institute of Science
Storage Systems NPTEL Course Jan 2012 (Lecture 39) K. Gopinath Indian Institute of Science Google File System Non-Posix scalable distr file system for large distr dataintensive applications performance,
More informationDon t Get Caught In the Cold, Warm-up Your JVM Understand and Eliminate JVM Warm-up Overhead in Data-parallel Systems
Don t Get Caught In the Cold, Warm-up Your JVM Understand and Eliminate JVM Warm-up Overhead in Data-parallel Systems David Lion, Adrian Chiu, Hailong Sun*, Xin Zhuang, Nikola Grcevski, Ding Yuan University
More informationDistributed Systems. How do regular procedure calls work in programming languages? Problems with sockets RPC. Regular procedure calls
Problems with sockets Distributed Systems Sockets interface is straightforward [connect] read/write [disconnect] Remote Procedure Calls BUT it forces read/write mechanism We usually use a procedure call
More informationBuffer Management for XFS in Linux. William J. Earl SGI
Buffer Management for XFS in Linux William J. Earl SGI XFS Requirements for a Buffer Cache Delayed allocation of disk space for cached writes supports high write performance Delayed allocation main memory
More informationRuntime. The optimized program is ready to run What sorts of facilities are available at runtime
Runtime The optimized program is ready to run What sorts of facilities are available at runtime Compiler Passes Analysis of input program (front-end) character stream Lexical Analysis token stream Syntactic
More informationJava Without the Jitter
TECHNOLOGY WHITE PAPER Achieving Ultra-Low Latency Table of Contents Executive Summary... 3 Introduction... 4 Why Java Pauses Can t Be Tuned Away.... 5 Modern Servers Have Huge Capacities Why Hasn t Latency
More informationDynamic Memory Allocation
Dynamic Memory Allocation CS61, Lecture 10 Prof. Stephen Chong October 4, 2011 Announcements 1/2 Assignment 4: Malloc Will be released today May work in groups of one or two Please go to website and enter
More informationJava performance - not so scary after all
Java performance - not so scary after all Holly Cummins IBM Hursley Labs 2009 IBM Corporation 2001 About me Joined IBM Began professional life writing event framework for WebSphere 2004 Moved to work on
More informationGarbage Collection. Steven R. Bagley
Garbage Collection Steven R. Bagley Reference Counting Counts number of pointers to an Object deleted when the count hits zero Eager deleted as soon as it is finished with Problem: Circular references
More informationCompiler Design Spring 2017
Compiler Design Spring 2017 6.0 Runtime system and object layout Dr. Zoltán Majó Compiler Group Java HotSpot Virtual Machine Oracle Corporation 1 Runtime system Some open issues from last time Handling
More information6.035 Project 3: Unoptimized Code Generation. Jason Ansel MIT - CSAIL
6.035 Project 3: Unoptimized Code Generation Jason Ansel MIT - CSAIL Quiz Monday 50 minute quiz Monday Covers everything up to yesterdays lecture Lexical Analysis (REs, DFAs, NFAs) Syntax Analysis (CFGs,
More informationExtreme Performance Platform for Real-Time Streaming Analytics
Extreme Performance Platform for Real-Time Streaming Analytics Achieve Massive Scalability on SPARC T7 with Oracle Stream Analytics O R A C L E W H I T E P A P E R A P R I L 2 0 1 6 Disclaimer The following
More informationTypical Issues with Middleware
Typical Issues with Middleware HrOUG 2016 Timur Akhmadeev October 2016 About Me Database Consultant at Pythian 10+ years with Database and Java Systems Performance and Architecture OakTable member 3 rd
More informationCA485 Ray Walshe Google File System
Google File System Overview Google File System is scalable, distributed file system on inexpensive commodity hardware that provides: Fault Tolerance File system runs on hundreds or thousands of storage
More information<Insert Picture Here> Looking at Performance - What s new in MySQL Workbench 6.2
Looking at Performance - What s new in MySQL Workbench 6.2 Mario Beck MySQL Sales Consulting Manager EMEA The following is intended to outline our general product direction. It is
More information6.828: OS/Language Co-design. Adam Belay
6.828: OS/Language Co-design Adam Belay Singularity An experimental research OS at Microsoft in the early 2000s Many people and papers, high profile project Influenced by experiences at
More informationApache Spark 2.0 Performance Improvements Investigated With Flame Graphs. Luca Canali CERN, Geneva (CH)
Apache Spark 2.0 Performance Improvements Investigated With Flame Graphs Luca Canali CERN, Geneva (CH) Speaker Intro Database engineer and team lead at CERN IT Hadoop and Spark service Database services
More informationTIBCO ActiveSpaces Transactions. System Sizing Guide. Software Release Published February 15, 2017
TIBCO ActiveSpaces Transactions System Sizing Guide Software Release 2.5.6 Published February 15, 2017 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED
More informationApplication Container Cloud
APPLICATION CONTAINER CLOUD Application Container Cloud with Java SE and Node The Best Java SE and Node Cloud. Get the choice of either Oracle Java SE Advanced, including Flight Recorder for production
More informationA program execution is memory safe so long as memory access errors never occur:
A program execution is memory safe so long as memory access errors never occur: Buffer overflows, null pointer dereference, use after free, use of uninitialized memory, illegal free Memory safety categories
More informationChapter 8: Memory-Management Strategies
Chapter 8: Memory-Management Strategies Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More informationTIBCO BusinessEvents Extreme. System Sizing Guide. Software Release Published February 17, 2015
TIBCO BusinessEvents Extreme System Sizing Guide Software Release 1.2.1 Published February 17, 2015 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED
More informationOracle Business Activity Monitoring 12c Best Practices ORACLE WHITE PAPER DECEMBER 2015
Oracle Business Activity Monitoring 12c Best Practices ORACLE WHITE PAPER DECEMBER 2015 Disclaimer The following is intended to outline our general product direction. It is intended for information purposes
More informationInnoDB: What s new in 8.0
InnoDB: What s new in 8.0 Sunny Bains Director Software Development Copyright 2017, Oracle and/or its its affiliates. All All rights reserved. Safe Harbor Statement The following is intended to outline
More informationTransformation-free Data Pipelines by combining the Power of Apache Kafka and the Flexibility of the ESB's
Building Agile and Resilient Schema Transformations using Apache Kafka and ESB's Transformation-free Data Pipelines by combining the Power of Apache Kafka and the Flexibility of the ESB's Ricardo Ferreira
More informationHands-on Lab Session 9909 Introduction to Application Performance Management: Monitoring. Timothy Burris, Cloud Adoption & Technical Enablement
Hands-on Lab Session 9909 Introduction to Application Performance Management: Monitoring Timothy Burris, Cloud Adoption & Technical Enablement Copyright IBM Corporation 2017 IBM, the IBM logo and ibm.com
More informationChapter 9 Memory Management
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
More informationJava Mission Control & Java Flight Recorder in JDK 9 A Sneak Peek
Java Mission Control & Java Flight Recorder in JDK 9 A Sneak Peek Marcus Hirt Consulting Member of Technical Staff Java Product Group February, 2017 Safe Harbor Statement The following is intended to outline
More information10/26/2017 Universal Java GC analysis tool - Java Garbage collection log analysis made easy
Analysis Report GC log le: atlassian-jira-gc-2017-10-26_0012.log.0.current Duration: 14 hrs 59 min 51 sec System Time greater than User Time In 25 GC event(s), 'sys' time is greater than 'usr' time. It's
More informationCHAPTER 8 - MEMORY MANAGEMENT STRATEGIES
CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES OBJECTIVES Detailed description of various ways of organizing memory hardware Various memory-management techniques, including paging and segmentation To provide
More informationProject. there are a couple of 3 person teams. a new drop with new type checking is coming. regroup or see me or forever hold your peace
Project there are a couple of 3 person teams regroup or see me or forever hold your peace a new drop with new type checking is coming using it is optional 1 Compiler Architecture source code Now we jump
More informationJava in a World of Containers
Java in a World of Containers mikael.vidstedt@oracle.com Not-coder, JVM @MikaelVidstedt matthew.gilliard@oracle.com Coder, not-jvm @MaximumGilliard Copyright 2017, Oracle and/or its affiliates. All rights
More informationDB Connect Is Back. and it is better than ever. Tyler Muth Denis Vergnes. September 2017 Washington, DC
DB Connect Is Back and it is better than ever Tyler Muth Denis Vergnes September 2017 Washington, DC Forward-Looking Statements During the course of this presentation, we may make forward-looking statements
More informationRunning class Timing on Java HotSpot VM, 1
Compiler construction 2009 Lecture 3. A first look at optimization: Peephole optimization. A simple example A Java class public class A { public static int f (int x) { int r = 3; int s = r + 5; return
More informationECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017
ECE 550D Fundamentals of Computer Systems and Engineering Fall 2017 The Operating System (OS) Prof. John Board Duke University Slides are derived from work by Profs. Tyler Bletsch and Andrew Hilton (Duke)
More informationJava Performance Tuning and Optimization Student Guide
Java Performance Tuning and Optimization Student Guide D69518GC10 Edition 1.0 June 2011 D73450 Disclaimer This document contains proprietary information and is protected by copyright and other intellectual
More informationPerformance Analysis of Java Communications with and without CORBA
Performance Analysis of Java Communications with and without CORBA Victor Giddings victor.giddings@ois.com 3 Objective Interface Systems, Inc. Purpose Analyze performance of various Java-based distribution
More informationVertical Profiling: Understanding the Behavior of Object-Oriented Applications
Vertical Profiling: Understanding the Behavior of Object-Oriented Applications Matthias Hauswirth, Amer Diwan University of Colorado at Boulder Peter F. Sweeney, Michael Hind IBM Thomas J. Watson Research
More information