#include <fprofiler.hpp>
Inheritance diagram for FlatProfiler:
Static Public Member Functions | |
static void | allocate_table () |
static void | reset () |
static void | engage (DeltaProcess *p) |
static DeltaProcess * | disengage () |
static bool | is_active () |
static void | print (int cutoff) |
static void | record_tick () |
static DeltaProcess * | process () |
Static Private Member Functions | |
static int | total_ticks () |
static void | interpreted_update (methodOop method, klassOop klass, TickPosition where) |
static void | compiled_update (nmethod *nm, TickPosition where) |
static int | entry (int value) |
static void | record_tick_for_running_frame (frame fr) |
static void | record_tick_for_calling_frame (frame fr) |
Static Private Attributes | |
static pnode ** | table = NULL |
static int | table_size = 1024 |
static DeltaProcess * | proc = NULL |
static FlatProfilerTask * | task = NULL |
static timer | time |
static int | gc_ticks = 0 |
static int | semaphore_ticks = 0 |
static int | stub_ticks = 0 |
static int | compiler_ticks = 0 |
static int | unknown_ticks = 0 |
Friends | |
class | FlatProfilerTask |
Definition at line 38 of file fprofiler.hpp.
void FlatProfiler::allocate_table | ( | ) | [static] |
Definition at line 379 of file fprofiler.cpp.
References NEW_C_HEAP_ARRAY, table, and table_size.
Referenced by fprofiler_init().
void FlatProfiler::compiled_update | ( | nmethod * | nm, | |
TickPosition | where | |||
) | [static, private] |
Definition at line 273 of file fprofiler.cpp.
References entry(), pnode::next(), and table.
Referenced by record_tick_for_calling_frame(), and record_tick_for_running_frame().
Here is the call graph for this function:
DeltaProcess * FlatProfiler::disengage | ( | ) | [static] |
Definition at line 413 of file fprofiler.cpp.
References PeriodicTask::deroll(), proc, process(), timer::stop(), task, and time.
Referenced by PRIM_DECL_0().
Here is the call graph for this function:
void FlatProfiler::engage | ( | DeltaProcess * | p | ) | [static] |
Definition at line 404 of file fprofiler.cpp.
References PeriodicTask::enroll(), FlatProfilerTask, proc, timer::start(), task, and time.
Referenced by PRIM_DECL_1().
Here is the call graph for this function:
int FlatProfiler::entry | ( | int | value | ) | [static, private] |
Definition at line 253 of file fprofiler.cpp.
References table_size.
Referenced by compiled_update(), and interpreted_update().
void FlatProfiler::interpreted_update | ( | methodOop | method, | |
klassOop | klass, | |||
TickPosition | where | |||
) | [static, private] |
Definition at line 257 of file fprofiler.cpp.
References entry(), oopDesc::identity_hash(), pnode::next(), methodOopDesc::selector_or_method(), and table.
Referenced by record_tick_for_calling_frame(), and record_tick_for_running_frame().
Here is the call graph for this function:
bool FlatProfiler::is_active | ( | ) | [static] |
void FlatProfiler::print | ( | int | cutoff | ) | [static] |
Definition at line 440 of file fprofiler.cpp.
References tick_counter::add(), GrowableArray< E >::append(), GrowableArray< E >::at(), pnode::compare(), compiler_ticks, outputStream::cr(), gc_ticks, GenericGrowableArray::length(), pnode::next(), outputStream::print_cr(), print_ticks(), compiledNode::print_title(), interpretedNode::print_title(), pnode::print_total(), timer::seconds(), semaphore_ticks, GrowableArray< E >::sort(), std, stub_ticks, table, table_size, time, tick_counter::total(), total_ticks(), and unknown_ticks.
Referenced by PRIM_DECL_0().
Here is the call graph for this function:
static DeltaProcess* FlatProfiler::process | ( | ) | [inline, static] |
Definition at line 79 of file fprofiler.hpp.
References proc.
Referenced by disengage(), and PRIM_DECL_0().
void FlatProfiler::record_tick | ( | ) | [static] |
Definition at line 360 of file fprofiler.cpp.
References DeltaProcess::active(), compiler_ticks, gc_ticks, GCInProgress, DeltaProcess::is_idle(), DeltaProcess::last_Delta_fp(), DeltaProcess::last_frame(), processSemaphore, DeltaProcess::profile_top_frame(), record_tick_for_calling_frame(), record_tick_for_running_frame(), semaphore_ticks, and theCompiler.
Referenced by FlatProfilerTask::task().
Here is the call graph for this function:
void FlatProfiler::record_tick_for_calling_frame | ( | frame | fr | ) | [static, private] |
Definition at line 323 of file fprofiler.cpp.
References assert, Bytecodes::code_type(), compiled_update(), StubRoutines::contains(), frame::hp(), in_compiler, in_primitive, interpreted_update(), frame::is_compiled_frame(), frame::is_interpreted_frame(), oopDesc::klass(), frame::method(), other, frame::pc(), Bytecodes::primitive_call, frame::receiver(), stub_ticks, theCompiler, and unknown_ticks.
Referenced by record_tick().
Here is the call graph for this function:
void FlatProfiler::record_tick_for_running_frame | ( | frame | fr | ) | [static, private] |
Definition at line 303 of file fprofiler.cpp.
References assert, compiled_update(), StubRoutines::contains(), find(), in_code, in_pic, interpreted_update(), frame::is_compiled_frame(), frame::is_interpreted_frame(), oopDesc::klass(), frame::method(), frame::pc(), frame::receiver(), and stub_ticks.
Referenced by record_tick().
Here is the call graph for this function:
void FlatProfiler::reset | ( | ) | [static] |
Definition at line 385 of file fprofiler.cpp.
References compiler_ticks, gc_ticks, proc, semaphore_ticks, stub_ticks, table, table_size, task, and unknown_ticks.
Referenced by PRIM_DECL_0().
static int FlatProfiler::total_ticks | ( | ) | [inline, static, private] |
Definition at line 53 of file fprofiler.hpp.
References gc_ticks, semaphore_ticks, stub_ticks, and unknown_ticks.
Referenced by print().
friend class FlatProfilerTask [friend] |
int FlatProfiler::compiler_ticks = 0 [static, private] |
int FlatProfiler::gc_ticks = 0 [static, private] |
Definition at line 47 of file fprofiler.hpp.
Referenced by print(), record_tick(), reset(), and total_ticks().
DeltaProcess * FlatProfiler::proc = NULL [static, private] |
Definition at line 43 of file fprofiler.hpp.
Referenced by disengage(), engage(), process(), reset(), and FlatProfilerTask::task().
int FlatProfiler::semaphore_ticks = 0 [static, private] |
Definition at line 48 of file fprofiler.hpp.
Referenced by print(), record_tick(), reset(), and total_ticks().
int FlatProfiler::stub_ticks = 0 [static, private] |
Definition at line 49 of file fprofiler.hpp.
Referenced by print(), record_tick_for_calling_frame(), record_tick_for_running_frame(), reset(), and total_ticks().
pnode ** FlatProfiler::table = NULL [static, private] |
Definition at line 40 of file fprofiler.hpp.
Referenced by allocate_table(), compiled_update(), interpreted_update(), print(), and reset().
int FlatProfiler::table_size = 1024 [static, private] |
Definition at line 41 of file fprofiler.hpp.
Referenced by allocate_table(), entry(), print(), and reset().
FlatProfilerTask * FlatProfiler::task = NULL [static, private] |
Definition at line 44 of file fprofiler.hpp.
Referenced by disengage(), engage(), is_active(), and reset().
timer FlatProfiler::time [static, private] |
int FlatProfiler::unknown_ticks = 0 [static, private] |
Definition at line 51 of file fprofiler.hpp.
Referenced by print(), record_tick_for_calling_frame(), reset(), and total_ticks().