1 /* |
1 /* |
2 * Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
35 private: |
35 private: |
36 static ZTracer* _tracer; |
36 static ZTracer* _tracer; |
37 |
37 |
38 ZTracer(); |
38 ZTracer(); |
39 |
39 |
40 void send_stat_counter(uint32_t counter_id, uint64_t increment, uint64_t value); |
40 void send_stat_counter(const ZStatCounter& counter, uint64_t increment, uint64_t value); |
41 void send_stat_sampler(uint32_t sampler_id, uint64_t value); |
41 void send_stat_sampler(const ZStatSampler& sampler, uint64_t value); |
42 void send_thread_phase(const char* name, const Ticks& start, const Ticks& end); |
42 void send_thread_phase(const char* name, const Ticks& start, const Ticks& end); |
43 void send_page_alloc(size_t size, size_t used, size_t free, size_t cache, bool nonblocking, bool noreserve); |
43 void send_page_alloc(size_t size, size_t used, size_t free, size_t cache, ZAllocationFlags flags); |
44 |
44 |
45 public: |
45 public: |
46 static ZTracer* tracer(); |
46 static ZTracer* tracer(); |
47 static void initialize(); |
47 static void initialize(); |
48 |
48 |
49 void report_stat_counter(const ZStatCounter& counter, uint64_t increment, uint64_t value); |
49 void report_stat_counter(const ZStatCounter& counter, uint64_t increment, uint64_t value); |
50 void report_stat_sampler(const ZStatSampler& sampler, uint64_t value); |
50 void report_stat_sampler(const ZStatSampler& sampler, uint64_t value); |
51 void report_thread_phase(const ZStatPhase& phase, const Ticks& start, const Ticks& end); |
|
52 void report_thread_phase(const char* name, const Ticks& start, const Ticks& end); |
51 void report_thread_phase(const char* name, const Ticks& start, const Ticks& end); |
53 void report_page_alloc(size_t size, size_t used, size_t free, size_t cache, ZAllocationFlags flags); |
52 void report_page_alloc(size_t size, size_t used, size_t free, size_t cache, ZAllocationFlags flags); |
54 }; |
53 }; |
55 |
54 |
56 class ZTraceThreadPhase : public StackObj { |
55 class ZTraceThreadPhase : public StackObj { |