New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 804279 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jul 5
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Evaluate and improve PromptlyFreeObject and Coalesce performance

Project Member Reported by hpayer@chromium.org, Jan 22 2018

Issue description

Evaluate and improve PromptlyFreeObject and Coalesce performance
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jan 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f9a22f3e9d081a64e311116662fbdcab90cc4aac

commit f9a22f3e9d081a64e311116662fbdcab90cc4aac
Author: Hannes Payer <hpayer@chromium.org>
Date: Mon Jan 29 18:46:01 2018

Oilpan: Immediatelly promptly free objects.

This CL brings the following changes to promptly freeing and coalescing:
1) Promptly freed objects on already swept pages are immediately added to the free list.
2) For promptly freed objects on not already swept pages we only clear the mark bit.
3) The promptly_freed_size_ counter is explicitly set to 0 before sweeping because sweeping will take care of coalescing as well.
4) The dead bit is removed.
Note that coalescing before sweeping completed can not happen.

Future outlook: As a next step we will evaluate if we need coalescing and if we need it we have to make it jank friendly.

Bug:  chromium:804279 ,  chromium:633030 
Change-Id: I35dfae80ae0e7ed6cfbc91877d97d0b5fc26498e
Reviewed-on: https://chromium-review.googlesource.com/873974
Commit-Queue: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532509}
[modify] https://crrev.com/f9a22f3e9d081a64e311116662fbdcab90cc4aac/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/f9a22f3e9d081a64e311116662fbdcab90cc4aac/third_party/WebKit/Source/platform/heap/HeapPage.h

Project Member

Comment 2 by bugdroid1@chromium.org, Jan 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e12ed52e5988fca99f50a5560a84beab39e51a39

commit e12ed52e5988fca99f50a5560a84beab39e51a39
Author: Samuel Huang <huangs@chromium.org>
Date: Mon Jan 29 19:14:13 2018

Revert "Oilpan: Immediatelly promptly free objects."

This reverts commit f9a22f3e9d081a64e311116662fbdcab90cc4aac.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Oilpan: Immediatelly promptly free objects.
> 
> This CL brings the following changes to promptly freeing and coalescing:
> 1) Promptly freed objects on already swept pages are immediately added to the free list.
> 2) For promptly freed objects on not already swept pages we only clear the mark bit.
> 3) The promptly_freed_size_ counter is explicitly set to 0 before sweeping because sweeping will take care of coalescing as well.
> 4) The dead bit is removed.
> Note that coalescing before sweeping completed can not happen.
> 
> Future outlook: As a next step we will evaluate if we need coalescing and if we need it we have to make it jank friendly.
> 
> Bug:  chromium:804279 ,  chromium:633030 
> Change-Id: I35dfae80ae0e7ed6cfbc91877d97d0b5fc26498e
> Reviewed-on: https://chromium-review.googlesource.com/873974
> Commit-Queue: Hannes Payer <hpayer@chromium.org>
> Reviewed-by: Kentaro Hara <haraken@chromium.org>
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#532509}

TBR=haraken@chromium.org,hpayer@chromium.org,mlippautz@chromium.org

Change-Id: I868bc9b51c18a546994de93a3a8ef80362b0ba19
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  chromium:804279 ,  chromium:633030 
Reviewed-on: https://chromium-review.googlesource.com/891640
Reviewed-by: Samuel Huang <huangs@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532528}
[modify] https://crrev.com/e12ed52e5988fca99f50a5560a84beab39e51a39/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/e12ed52e5988fca99f50a5560a84beab39e51a39/third_party/WebKit/Source/platform/heap/HeapPage.h

Project Member

Comment 3 by bugdroid1@chromium.org, Jan 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/efc102559ad670f9d8d6cf2bf5af3113603fc240

commit efc102559ad670f9d8d6cf2bf5af3113603fc240
Author: Hannes Payer <hpayer@chromium.org>
Date: Tue Jan 30 16:35:55 2018

Reland: Oilpan: Immediatelly promptly free objects.

Bug:  chromium:804279 ,  chromium:633030 
Change-Id: I47f3b5ae087971105e64262cfe2e65495f99f3ca
Reviewed-on: https://chromium-review.googlesource.com/893181
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Hannes Payer <hpayer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532909}
[modify] https://crrev.com/efc102559ad670f9d8d6cf2bf5af3113603fc240/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/efc102559ad670f9d8d6cf2bf5af3113603fc240/third_party/WebKit/Source/platform/heap/HeapPage.h

Project Member

Comment 4 by bugdroid1@chromium.org, Feb 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fa293678b3eceaa1ed646ada4865bb875926aef6

commit fa293678b3eceaa1ed646ada4865bb875926aef6
Author: Hannes Payer <hpayer@chromium.org>
Date: Thu Feb 01 09:21:36 2018

Oilpan: Remove Coalesce() logic.

Bug:  chromium:804279 
Change-Id: I3e219c1ad295d0d2f636f089866cf213393d2295
Reviewed-on: https://chromium-review.googlesource.com/878373
Commit-Queue: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533607}
[modify] https://crrev.com/fa293678b3eceaa1ed646ada4865bb875926aef6/third_party/WebKit/Source/platform/heap/HeapPage.cpp
[modify] https://crrev.com/fa293678b3eceaa1ed646ada4865bb875926aef6/third_party/WebKit/Source/platform/heap/HeapPage.h

Status: Fixed (was: Started)

Sign in to add a comment