< prev index next >
src/hotspot/share/gc/g1/g1ConcurrentRefine.hpp
Print this page
rev 47675 : [mq]: 8149127-rename-concurrentrefine-a
rev 47676 : imported patch 8149127-rename-concurrentrefine-b
*** 1,7 ****
/*
! * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2001, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 20,46 ****
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
! #ifndef SHARE_VM_GC_G1_CONCURRENTG1REFINE_HPP
! #define SHARE_VM_GC_G1_CONCURRENTG1REFINE_HPP
#include "memory/allocation.hpp"
#include "utilities/globalDefinitions.hpp"
// Forward decl
class CardTableEntryClosure;
! class ConcurrentG1RefineThread;
class G1YoungRemSetSamplingThread;
class outputStream;
class ThreadClosure;
! class ConcurrentG1Refine: public CHeapObj<mtGC> {
G1YoungRemSetSamplingThread* _sample_thread;
! ConcurrentG1RefineThread** _threads;
uint _n_worker_threads;
/*
* The value of the update buffer queue length falls into one of 3 zones:
* green, yellow, red. If the value is in [0, green) nothing is
* done, the buffers are left unprocessed to enable the caching effect of the
--- 20,46 ----
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
! #ifndef SHARE_VM_GC_G1_G1CONCURRENTREFINE_HPP
! #define SHARE_VM_GC_G1_G1CONCURRENTREFINE_HPP
#include "memory/allocation.hpp"
#include "utilities/globalDefinitions.hpp"
// Forward decl
class CardTableEntryClosure;
! class G1ConcurrentRefineThread;
class G1YoungRemSetSamplingThread;
class outputStream;
class ThreadClosure;
! class G1ConcurrentRefine : public CHeapObj<mtGC> {
G1YoungRemSetSamplingThread* _sample_thread;
! G1ConcurrentRefineThread** _threads;
uint _n_worker_threads;
/*
* The value of the update buffer queue length falls into one of 3 zones:
* green, yellow, red. If the value is in [0, green) nothing is
* done, the buffers are left unprocessed to enable the caching effect of the
*** 60,70 ****
size_t _green_zone;
size_t _yellow_zone;
size_t _red_zone;
size_t _min_yellow_zone_size;
! ConcurrentG1Refine(size_t green_zone,
size_t yellow_zone,
size_t red_zone,
size_t min_yellow_zone_size);
// Update green/yellow/red zone values based on how well goals are being met.
--- 60,70 ----
size_t _green_zone;
size_t _yellow_zone;
size_t _red_zone;
size_t _min_yellow_zone_size;
! G1ConcurrentRefine(size_t green_zone,
size_t yellow_zone,
size_t red_zone,
size_t min_yellow_zone_size);
// Update green/yellow/red zone values based on how well goals are being met.
*** 74,88 ****
// Update thread thresholds to account for updated zone values.
void update_thread_thresholds();
public:
! ~ConcurrentG1Refine();
! // Returns ConcurrentG1Refine instance if succeeded to create/initialize ConcurrentG1Refine and ConcurrentG1RefineThread.
// Otherwise, returns NULL with error code.
! static ConcurrentG1Refine* create(jint* ecode);
void stop();
void adjust(double update_rs_time, size_t update_rs_processed_buffers, double goal_ms);
--- 74,88 ----
// Update thread thresholds to account for updated zone values.
void update_thread_thresholds();
public:
! ~G1ConcurrentRefine();
! // Returns a G1ConcurrentRefine instance if succeeded to create/initialize G1ConcurrentRefine and G1ConcurrentRefineThreads.
// Otherwise, returns NULL with error code.
! static G1ConcurrentRefine* create(jint* ecode);
void stop();
void adjust(double update_rs_time, size_t update_rs_processed_buffers, double goal_ms);
*** 102,107 ****
size_t green_zone() const { return _green_zone; }
size_t yellow_zone() const { return _yellow_zone; }
size_t red_zone() const { return _red_zone; }
};
! #endif // SHARE_VM_GC_G1_CONCURRENTG1REFINE_HPP
--- 102,107 ----
size_t green_zone() const { return _green_zone; }
size_t yellow_zone() const { return _yellow_zone; }
size_t red_zone() const { return _red_zone; }
};
! #endif // SHARE_VM_GC_G1_G1CONCURRENTREFINE_HPP
< prev index next >