Finally done!! Congratulations 😊

2021年9月21日(火) 5:38 Jeremy Roman <[email protected]>:

> Awesome news!
>
> On Mon, Sep 20, 2021 at 1:54 PM Michael Lippautz <[email protected]>
> wrote:
>
>> Hey everyone -
>>
>> The library allows *Oilpan* (previously known as Blink's garbage
>> collector) *to be used as a stand-alone garbage collector for **C++** or
>> together with V8 where it is part of the C++/JavaScript unified heap*.
>> Both scenarios are already covered with the usage in Blink (together with
>> V8) and PDFium (*new stand-alone C++ collector*; not yet launched). The
>> flag switching from Oilpan in Blink to Oilpan library has been flipped for
>> *M94*.
>>
>> The new library offers a stable API surface
>> <https://chromium.googlesource.com/v8/v8.git/+/refs/heads/main/include/cppgc>
>>  with
>> code comments and examples in code (if we forgot something, please file a
>> bug) that follows V8's general API stability process
>> <https://v8.dev/docs/api>. This allows fast iteration on implementation
>> details and at the same time avoids frequent breakage. The library also
>> provides the foundation for new garbage collection optimizations in the
>> Blink setting together with JavaScript as it allows for better integration
>> with V8 behind the scenes.
>>
>> Some other highlights:
>> - Uses IWYU (API and internally) to avoid pulling in large parts of the
>> heap for e.g. just using a managed reference type;
>> - Unit tests
>> <https://source.chromium.org/chromium/chromium/src/+/main:v8/test/unittests/heap/cppgc/>
>> for each individual component in the C++ garbage collector;
>> - Test target and a garbage collection playground that builds within
>> seconds;
>> - More correctness checks that already found issues in existing code;
>> - Better tooling around DevTools heap snapshot and more accurate
>> accounting in tracing's MemoryInfra
>> <https://chromium.googlesource.com/chromium/src/+/HEAD/docs/memory-infra/README.md>
>> ;
>>
>> The summary can also be found as one pager
>> <https://docs.google.com/document/d/1Eao6rDBH45BDdtCLsfSCvPUi0JTbjTdzsGk3e_KNs6g/edit#>
>> .
>>
>> The effort (tracking bug
>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1056170>) roughly
>> took ~1.5 years and involved a lot of user code cleanup as well. Many
>> fruitful discussions happened and quite some code was migrated and
>> re-written. Thanks @Anton Bikineev <[email protected]> and @Omer Katz
>> <[email protected]> for driving the implementation work.
>>
>> *FAQs:*
>> *Q1: Performance?*
>> A1: Neutral on competitive benchmarks; smaller ups and downs on micro
>> benchmarks. We don't expect big changes as the overall architecture stays
>> the same.
>>
>> *Q2: What does this mean for Blink developers? Anything I need to change
>> in my code?*
>> A2: We have stayed fully backwards compatible with the API. If we haven't
>> touched your code while migrating, you don't need to change anything as of
>> now. Going forward we may adjust the APis following V8's API stability
>> process. We will keep maintaining the Blink GC API reference
>> <https://chromium.googlesource.com/chromium/src/+/main/third_party/blink/renderer/platform/heap/BlinkGCAPIReference.md>,
>> although we may move some more general docs closer to the library.
>>
>> *Q3: What's up with IWYU for Oilpan in Blink?*
>> A3: So far we have kept the include-all headers around but we'd like to
>> move to IWYU to avoid pulling in too many V8 headers everywhere.
>>
>> *Q4: Can we use Oilpan within V8 itself?*
>> A4: Not just yet. Stay tuned on updates in this area.
>>
>> Encountering issues, or have suggestions? Let us know:
>> - [email protected]
>> - Monorail: Blink>GarbageCollection (Chromium), Oilpan (V8)
>>
>> -Michael
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "platform-architecture-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAH%2BmL5BYuu7zOe29OWc7x1hTef8nb51ZUBz2EkvJuR_2mS_Cig%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAH%2BmL5BYuu7zOe29OWc7x1hTef8nb51ZUBz2EkvJuR_2mS_Cig%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "platform-architecture-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CACuR13d25DEZY4pS2qtFx9BRKidQt9E_nrBtNfhrEtyETk4iWQ%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CACuR13d25DEZY4pS2qtFx9BRKidQt9E_nrBtNfhrEtyETk4iWQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-dev/CABg10jzS28i6QODdKCiY5R1L9iwOeKGSSb2%2By%2BapDhZGe-2rxA%40mail.gmail.com.

Reply via email to