Status Update
Comments
me...@chromium.org <me...@chromium.org> #2
sgtm, we can add the same API for FileSpec:
I recommend using github for a small checkout size:
Looks like we do have kotlin poet in the repo:
So just need to add it as an API dependency to the room-compiler-processing's build file.
If you can add a test to the generated code match test, that would be great:
lmk if you hit any blocker in getting started, thanks!
me...@chromium.org <me...@chromium.org> #3
Branch: androidx-main
commit 4a2360456d817b3101f289aac55ea1f3f610cfef
Author: Gabriel Freitas Vasconcelos <gfreivasc@gmail.com>
Date: Thu Mar 11 14:54:53 2021
[GH] Adds KotlinPoet integration to Room Processing
## Proposed Changes
Adds `write()` method that accepts KotlinPoet's an instance of
`FileSpec`. Also adds KotlinPoet as an API dependency and an extension
function similar to that of JavaPoet.
## Testing
Test: ./gradlew test connectedCheck without benchmarks
## Fixes
Fixes: [
This is an imported pull request from
Resolves #137
Github-Pr-Head-Sha: 96dc315b7e0e417e6a5e3d8cd6a8adda5c1b6c6a
GitOrigin-RevId: c5e4de3ab28fed968982e572c47b5ff07d210af7
Change-Id: I9d3aaa0a752447d9ba3978ce3fb705c0e74b3d13
M room/compiler-processing-testing/src/main/java/androidx/room/compiler/processing/util/CompilationResultSubject.kt
M room/compiler-processing-testing/src/main/java/androidx/room/compiler/processing/util/Source.kt
M room/compiler-processing-testing/src/test/java/androidx/room/compiler/processing/util/GeneratedCodeMatchTest.kt
M room/compiler-processing/build.gradle
M room/compiler-processing/src/main/java/androidx/room/compiler/processing/XFiler.kt
M room/compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacFiler.kt
M room/compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacProcessingEnv.kt
M room/compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/KspFiler.kt
M room/compiler/src/test/kotlin/androidx/room/testing/test_util.kt
me...@chromium.org <me...@chromium.org> #4
All
sc...@google.com <sc...@google.com> #5
Seems to only happen with Graphite enabled.
mi...@google.com <mi...@google.com> #6
Looking at the fix in
Graphite is only enabled on canary for now, and I will check performance as the texture and renderpass work progresses to see if that alleviates the issue. Ganesh got around this by caching the blurred path masks across frames at the expense of increased memory usage. Image filters are never cached in skia, so the current mask filter -> image filter pipeline that I'm moving skia and graphite to would not support the previous fix. This may mean that global filter caching will have to be handled somehow.
su...@google.com <su...@google.com> #7
me...@chromium.org <me...@chromium.org> #8
mi...@google.com <mi...@google.com> #9
CC'ing Quyen as these are good real-world sites to look into as we burn down performance issues. At face value I didn't a lot of box shadow use in theverge.com or macrumors.com, but it's perhaps subtle. Alternatively, these were very long pages with lots of images and (possibly?) embedded content. Perhaps this is exacerbating tile submission or access issues?
su...@chromium.org <su...@chromium.org> #10
Mehmet, is this still happening for you on the latest Canary on Mac ARM? We've made a ton of performance improvements since the original bug was filed and hopefully this issue is fixed now.
me...@chromium.org <me...@chromium.org> #11
pe...@google.com <pe...@google.com> #12
Thank you for providing more feedback. Adding the requester to the CC list.
me...@chromium.org <me...@chromium.org> #13
Unfortunately scrolling and hover over the top items is still laggy on
me...@chromium.org <me...@chromium.org> #14
me...@chromium.org <me...@chromium.org> #15
mb...@chromium.org <mb...@chromium.org> #16
Here's my screen recording when the flag is on, and my chrome://gpu when the flag is off
mi...@google.com <mi...@google.com> #17
Thank you for the additional report. The original bug seemed to be related to missed caching of box-shadow masks. In the videos on
me...@chromium.org <me...@chromium.org> #18
su...@chromium.org <su...@chromium.org> #19
You should enable at least these categories when recording the trace:
Task Scheduling
IPC Flows
Javascript execution
Web content rendering, layout and compositing
UI rendering and surface compositing
Thanks!
me...@chromium.org <me...@chromium.org> #20
su...@chromium.org <su...@chromium.org> #21
I see occasional hangs of 100-200ms in the GPU process in IOSurfaceImageBacking::WaitForDawnCommandsToBeScheduled
. These are preceded by large bursts of raster commands - just decoding the commands takes something like 10-20ms so that's just a lot of work being submitted. It's unclear if this is a bug in the page e.g. extending the 2d canvas path indefinitely or just a pathological case.
Just to confirm, this trace was captured for
me...@chromium.org <me...@chromium.org> #22
The trace includes the following 3 issues: 1.) Hover over the boxes at top, 2.) Scroll through the page, 3.) Resize the window
Please find the requested trace with chrome://flags#skia-graphite disabled.
Thanks!
Description
MacBook Air M1
Canary Version 123.0.6304.0
STR:
1.) Visit
2.) Scroll down and up again to the top of the page
3.) Or drag the window
Actual: Scrolling and window dragging is laggy.
Expected: Smooth Scrolling and smooth window dragging.
Try step 1-3 with chrome://flags/#skia-graphite disabled: No issue.
Thanks for checking.