mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-17 17:44:40 +02:00
8210710: Rename ThreadLocalAllocBuffer::myThread() to thread()
Reviewed-by: rkennke, tschatzl
This commit is contained in:
parent
fd2acd9284
commit
97f10c27d8
3 changed files with 16 additions and 19 deletions
|
@ -69,12 +69,12 @@ void ThreadLocalAllocBuffer::accumulate_statistics_before_gc() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void ThreadLocalAllocBuffer::accumulate_statistics() {
|
void ThreadLocalAllocBuffer::accumulate_statistics() {
|
||||||
Thread* thread = myThread();
|
Thread* thr = thread();
|
||||||
size_t capacity = Universe::heap()->tlab_capacity(thread);
|
size_t capacity = Universe::heap()->tlab_capacity(thr);
|
||||||
size_t used = Universe::heap()->tlab_used(thread);
|
size_t used = Universe::heap()->tlab_used(thr);
|
||||||
|
|
||||||
_gc_waste += (unsigned)remaining();
|
_gc_waste += (unsigned)remaining();
|
||||||
size_t total_allocated = thread->allocated_bytes();
|
size_t total_allocated = thr->allocated_bytes();
|
||||||
size_t allocated_since_last_gc = total_allocated - _allocated_before_last_gc;
|
size_t allocated_since_last_gc = total_allocated - _allocated_before_last_gc;
|
||||||
_allocated_before_last_gc = total_allocated;
|
_allocated_before_last_gc = total_allocated;
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ void ThreadLocalAllocBuffer::make_parsable(bool retire, bool zap) {
|
||||||
invariants();
|
invariants();
|
||||||
|
|
||||||
if (retire) {
|
if (retire) {
|
||||||
myThread()->incr_allocated_bytes(used_bytes());
|
thread()->incr_allocated_bytes(used_bytes());
|
||||||
}
|
}
|
||||||
|
|
||||||
Universe::heap()->fill_with_dummy_object(top(), hard_end(), retire && zap);
|
Universe::heap()->fill_with_dummy_object(top(), hard_end(), retire && zap);
|
||||||
|
@ -150,7 +150,7 @@ void ThreadLocalAllocBuffer::resize() {
|
||||||
// Compute the next tlab size using expected allocation amount
|
// Compute the next tlab size using expected allocation amount
|
||||||
assert(ResizeTLAB, "Should not call this otherwise");
|
assert(ResizeTLAB, "Should not call this otherwise");
|
||||||
size_t alloc = (size_t)(_allocation_fraction.average() *
|
size_t alloc = (size_t)(_allocation_fraction.average() *
|
||||||
(Universe::heap()->tlab_capacity(myThread()) / HeapWordSize));
|
(Universe::heap()->tlab_capacity(thread()) / HeapWordSize));
|
||||||
size_t new_size = alloc / _target_refills;
|
size_t new_size = alloc / _target_refills;
|
||||||
|
|
||||||
new_size = MIN2(MAX2(new_size, min_size()), max_size());
|
new_size = MIN2(MAX2(new_size, min_size()), max_size());
|
||||||
|
@ -159,7 +159,7 @@ void ThreadLocalAllocBuffer::resize() {
|
||||||
|
|
||||||
log_trace(gc, tlab)("TLAB new size: thread: " INTPTR_FORMAT " [id: %2d]"
|
log_trace(gc, tlab)("TLAB new size: thread: " INTPTR_FORMAT " [id: %2d]"
|
||||||
" refills %d alloc: %8.6f desired_size: " SIZE_FORMAT " -> " SIZE_FORMAT,
|
" refills %d alloc: %8.6f desired_size: " SIZE_FORMAT " -> " SIZE_FORMAT,
|
||||||
p2i(myThread()), myThread()->osthread()->thread_id(),
|
p2i(thread()), thread()->osthread()->thread_id(),
|
||||||
_target_refills, _allocation_fraction.average(), desired_size(), aligned_new_size);
|
_target_refills, _allocation_fraction.average(), desired_size(), aligned_new_size);
|
||||||
|
|
||||||
set_desired_size(aligned_new_size);
|
set_desired_size(aligned_new_size);
|
||||||
|
@ -211,7 +211,7 @@ void ThreadLocalAllocBuffer::initialize() {
|
||||||
// thread is initialized before the heap is. The initialization for
|
// thread is initialized before the heap is. The initialization for
|
||||||
// this thread is redone in startup_initialization below.
|
// this thread is redone in startup_initialization below.
|
||||||
if (Universe::heap() != NULL) {
|
if (Universe::heap() != NULL) {
|
||||||
size_t capacity = Universe::heap()->tlab_capacity(myThread()) / HeapWordSize;
|
size_t capacity = Universe::heap()->tlab_capacity(thread()) / HeapWordSize;
|
||||||
double alloc_frac = desired_size() * target_refills() / (double) capacity;
|
double alloc_frac = desired_size() * target_refills() / (double) capacity;
|
||||||
_allocation_fraction.sample(alloc_frac);
|
_allocation_fraction.sample(alloc_frac);
|
||||||
}
|
}
|
||||||
|
@ -274,7 +274,7 @@ size_t ThreadLocalAllocBuffer::initial_desired_size() {
|
||||||
// Initial size is a function of the average number of allocating threads.
|
// Initial size is a function of the average number of allocating threads.
|
||||||
unsigned nof_threads = global_stats()->allocating_threads_avg();
|
unsigned nof_threads = global_stats()->allocating_threads_avg();
|
||||||
|
|
||||||
init_sz = (Universe::heap()->tlab_capacity(myThread()) / HeapWordSize) /
|
init_sz = (Universe::heap()->tlab_capacity(thread()) / HeapWordSize) /
|
||||||
(nof_threads * target_refills());
|
(nof_threads * target_refills());
|
||||||
init_sz = align_object_size(init_sz);
|
init_sz = align_object_size(init_sz);
|
||||||
}
|
}
|
||||||
|
@ -288,7 +288,7 @@ void ThreadLocalAllocBuffer::print_stats(const char* tag) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Thread* thrd = myThread();
|
Thread* thrd = thread();
|
||||||
size_t waste = _gc_waste + _slow_refill_waste + _fast_refill_waste;
|
size_t waste = _gc_waste + _slow_refill_waste + _fast_refill_waste;
|
||||||
double waste_percent = percent_of(waste, _allocated_size);
|
double waste_percent = percent_of(waste, _allocated_size);
|
||||||
size_t tlab_used = Universe::heap()->tlab_used(thrd);
|
size_t tlab_used = Universe::heap()->tlab_used(thrd);
|
||||||
|
@ -322,7 +322,7 @@ void ThreadLocalAllocBuffer::verify() {
|
||||||
|
|
||||||
void ThreadLocalAllocBuffer::set_sample_end() {
|
void ThreadLocalAllocBuffer::set_sample_end() {
|
||||||
size_t heap_words_remaining = pointer_delta(_end, _top);
|
size_t heap_words_remaining = pointer_delta(_end, _top);
|
||||||
size_t bytes_until_sample = myThread()->heap_sampler().bytes_until_sample();
|
size_t bytes_until_sample = thread()->heap_sampler().bytes_until_sample();
|
||||||
size_t words_until_sample = bytes_until_sample / HeapWordSize;
|
size_t words_until_sample = bytes_until_sample / HeapWordSize;
|
||||||
|
|
||||||
if (heap_words_remaining > words_until_sample) {
|
if (heap_words_remaining > words_until_sample) {
|
||||||
|
@ -334,10 +334,8 @@ void ThreadLocalAllocBuffer::set_sample_end() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Thread* ThreadLocalAllocBuffer::myThread() {
|
Thread* ThreadLocalAllocBuffer::thread() {
|
||||||
return (Thread*)(((char *)this) +
|
return (Thread*)(((char*)this) + in_bytes(start_offset()) - in_bytes(Thread::tlab_start_offset()));
|
||||||
in_bytes(start_offset()) -
|
|
||||||
in_bytes(Thread::tlab_start_offset()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ThreadLocalAllocBuffer::set_back_allocation_end() {
|
void ThreadLocalAllocBuffer::set_back_allocation_end() {
|
||||||
|
|
|
@ -101,7 +101,7 @@ private:
|
||||||
|
|
||||||
void print_stats(const char* tag);
|
void print_stats(const char* tag);
|
||||||
|
|
||||||
Thread* myThread();
|
Thread* thread();
|
||||||
|
|
||||||
// statistics
|
// statistics
|
||||||
|
|
||||||
|
|
|
@ -57,8 +57,7 @@ inline size_t ThreadLocalAllocBuffer::compute_size(size_t obj_size) {
|
||||||
// Compute the size for the new TLAB.
|
// Compute the size for the new TLAB.
|
||||||
// The "last" tlab may be smaller to reduce fragmentation.
|
// The "last" tlab may be smaller to reduce fragmentation.
|
||||||
// unsafe_max_tlab_alloc is just a hint.
|
// unsafe_max_tlab_alloc is just a hint.
|
||||||
const size_t available_size = Universe::heap()->unsafe_max_tlab_alloc(myThread()) /
|
const size_t available_size = Universe::heap()->unsafe_max_tlab_alloc(thread()) / HeapWordSize;
|
||||||
HeapWordSize;
|
|
||||||
size_t new_tlab_size = MIN3(available_size, desired_size() + align_object_size(obj_size), max_size());
|
size_t new_tlab_size = MIN3(available_size, desired_size() + align_object_size(obj_size), max_size());
|
||||||
|
|
||||||
// Make sure there's enough room for object and filler int[].
|
// Make sure there's enough room for object and filler int[].
|
||||||
|
@ -92,7 +91,7 @@ void ThreadLocalAllocBuffer::record_slow_allocation(size_t obj_size) {
|
||||||
" obj: " SIZE_FORMAT
|
" obj: " SIZE_FORMAT
|
||||||
" free: " SIZE_FORMAT
|
" free: " SIZE_FORMAT
|
||||||
" waste: " SIZE_FORMAT,
|
" waste: " SIZE_FORMAT,
|
||||||
"slow", p2i(myThread()), myThread()->osthread()->thread_id(),
|
"slow", p2i(thread()), thread()->osthread()->thread_id(),
|
||||||
obj_size, free(), refill_waste_limit());
|
obj_size, free(), refill_waste_limit());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue