Age | Commit message (Collapse) | Author |
|
Added call to Skia's performDeferredCleanup method
to free resources that were not referenced within
the last 100 frames or 10 seconds whichever is
furthest away
Bug: 188450217
Test: manual
Change-Id: I3f37e1b5bd01330dbbc2da4a84b1259d56be2768
|
|
Bug: 187718492
Test: this
Change-Id: Ie0cad91e1c7d1a02704fc4b1007ba2c28cb2b3e7
|
|
Add support for glob matching
Ensure glob matches are alphabetically sorted
Add feature to dump GPU memory usage after a test pass
Adjust gpu memory dump to be a bit more compact (skip empty outputs)
Test: this
Bug: 187718492
Change-Id: I6dc80b2d3379d8d10001116e1240727d9914bc10
|
|
The flush and submit at the start of trim memory now syncs the
cpu so that all work is done on the gpu and the max possible
amount of resources can be freed
This fixes CacheManager unit test since the submit at the end
trim memory was causing new resources to be available to be
purged.
Test: locally ran unit tests
Bug: 178978639
Change-Id: I8b57b042dd146fc6c1083540715295e93fd113d3
(cherry picked from commit 846644a46e6c5d9bb82382da438a67a067a8a0ce)
|
|
This is a rename with no functional changes.
Change-Id: I4b0b7ee1926b688029e257b35c469113c0404a5b
|
|
Test: manual
Change-Id: Ib362f228c18b6c452e66debe6f6f076451670cd7
|
|
556fe0b9e5 am: 6bf4b6b216 am: aeae81a937 am: 3844f2a385
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11838959
Change-Id: I7f9db598d3051993c1fc58b35ffd2d84527842ad
|
|
Bug: 155002050
Test: Manual - scroll Pchome app
This reverts commit 05ac51641297ae2cbe9b186b8c369f3a23a156b9.
Reason for revert: When running Pchome, this change resulted in poor
performance while scrolling. Every frame appears to be uploading
several textures, potentially the same textures over and over again.
Change-Id: I0fc7216e16f783051d1bd87af764c1a6f361c138
|
|
Test: manual
Change-Id: I72fa57b04f1b4ea594063ddb4ce6af9507b1fcdb
|
|
Add ATRACE memory counters to track memory usage at the end
of each frame in HWUI.
There are 3 catagories: CPU, GPU and Texture memory.
There are 3 more counters for memory that can be purged.
This CL deletes GpuMemoryTracker class, which implemented
similar function for Android O HWUI renderer.
Test: Collected systrace with gmail and setting.
Test: memory tracing adds ~0.1ms per frame when ATRACE is enabled
Bug: 146580770
Change-Id: Icbcc0478bc426dff578e83726fe7c95df171ed93
|
|
|
|
|
|
This also removes the dependency on ui/DeviceInfo other than in test
code.
Bug: 136263392
Bug: 136263238
Test: builds, boots
Change-Id: I6a4687e981359f0e6beb83be8a5501ed7fd16f15
|
|
|
|
This reverts commit 8a207962ec84904a0fb8c7b5ce547ed2d1b59794.
Bug: 142301356
Test: none, speculative
Reason for revert: Seems to break alarm?
Change-Id: Ia1680d1a937b596297c2eab3e54476daf9589347
|
|
Poking around in a few apps it doesn't appear that
the VectorDrawableAtlas is achieving sufficient
utilization to justify its existence. The potential for
draw call merging doesn't seem warranted for the
RAM cost of the atlas.
Bug: 137853925
Test: builds
Change-Id: Id2419bc6dccb6316636d50c568f8fac75a2d563f
|
|
Bug: 137853925
Test: none
Change-Id: I8d05871a5f54c8e5d6528a6a8ed48f73464a1221
|
|
Bug: 137853925
Test: none
Change-Id: Idf7002d9b07cc6b71b38ce76e7b6382100279a99
|
|
The old version that took a maxResourceCount are now deprecated
Test: does it compile
Change-Id: Ib4d69c8907169329c7765c648f46fa5e4a10bf7a
|
|
As a first pass removing some stale includes.
Bug: 138819035
Change-Id: I7aef319aa8f1b13b6482ef61fda151560e570558
Test: builds
|
|
On GL some devices may not delete gpu memory immediately after calling
delete and instead will just queue it up. We must call glFinish to
make sure the memory is deleted when we want it.
More importantly Vulkan memory will not be freed until the GPU is done
with all the work. Thus we require an additional flush to make sure the
previous gpu work we submitted has finished and we can delete the
memory.
Test: manual testing on device
Bug: b/130440975
Change-Id: I2a9202dd7d15d97b365120a8caf9e10b4100efc3
|
|
Bug: 130684261
Test: uibench jank tests
Change-Id: Ieb837afd76d1990c796baa9794ba54a83b8cd46f
|
|
Bug: 127822449
Test: verified render_ahead working with skiavk
Change-Id: Iae1b227a763f6def035057f38cca4b0ab65c7e82
|
|
Replace it with a newer, fancier, WorkQueue-inspired
one that's just a global common thread pool.
Test: hwuiunit passes
Change-Id: Ib5d03104a08bbac9a4ec67a1bfc0db2b35d6700f
|
|
This reverts commit 131654943de33392d35bb4a9686f5feb33b71a0f.
Reason for revert: b/124049413
Change-Id: Iba0cf734ba8d6a16a1ee2930b162760e59a76444
|
|
Test: m, flashed, booted
Change-Id: I5568d9f0748598926eb5687e9c0c0fb40b880154
|
|
Set font cache size to one screen buffer size.
For Pixel 2 XL this increased the texture size from
3670016 to 4194304. Skia can allocate up to 4 textures
of that size.
Test: UiBenchJankTests#testInflatingEmojiListViewFling
Bug: 121157706
Change-Id: I7af1f184c6dbc10b45a8ef80a04200d518fbaa0e
|
|
Fix an issue with incorrect texture matrix, when there is 90/270 rotation.
This happened, because after refactoring SkImage has buffer width/height,
instead of layer width/height.
This reverts commit a683eb3945320f592f58705c3c31b3c044f4bd72.
Bug: 113673613
Test: Ran TextureView CTS and lensblur in camera app
Change-Id: If3bcf9cd5195de09fd67a753708568a8e3ca3a9a
|
|
Create cache identity from GL_VERSION and store in ShaderCache.
In the next time ShaderCache is restored from disk, compare the
cache identity to ensure its validity. If GL_VERSION changes in
between, flush out entire FileBlobCache and start from an empty
one.
Bug: b/71800782
Test: Wrote a new unit test to save and restore ShaderCache
Test: hwui_unit_tests
Change-Id: Ie573dc4f18733eee090725be30445d879765231b
|
|
This reverts commit c8e22a653297837da9a80b0ba65f6854c8986c96.
Reason for revert: broke camera, b/113555199
Bug: 113555199
Change-Id: Iae9b462694d5de0cd99427afead63b567fb4d71d
|
|
Render TextureView as hardware bitmaps, instead of GL textures.
Cache SkImage for each observed GraphicBuffer, which is faster
even for GL.
Implement C++ SurfaceTexture, which allows Java SurfaceTexture
to be used with Vulkan HWUI render thread and application GL.
threads. Delete GLLayer and VkLayer classes and texture code
from old HWUI pipeline.
Test: Ran skiagl and skiavk pipeline with a TextureView app.
Test: TextureView CTS tests pass for GL pipeline.
Test: Ran Android NDK Native codec sample app.
Change-Id: Idc94f864ce2d34fd6ceff4be4fc7d3327e99879c
|
|
Fix remaining battery icon. Disable CCPR, which seems to
have caused a regression.
Test: Ran SystemUI and battery icon is drawn white.
Bug: skbug.com/8127
Change-Id: Ic82bce14b760a8889ea2261c44b2631dc755288f
|
|
* changes:
Remove Properties::isSkiaPipeline (3/!?)
So long OpenGLPipeline & OpenGLReadback (2/??)
|
|
Test: hwuiunit & CtsUiRenderingTestCases pass
Change-Id: Ie7b336eacdd1b8660e09653c64eb6ea0a7b4a258
|
|
This is a partial revert of b1f27aae89a9da9fbf3cb15a47f1a401db5a7974.
Test: hwui_unit_tests
Bug: 77654081
Change-Id: I5a58c156a280edfe3e9973ac3a8a30c97a2cff8b
|
|
Bug: 73808481
Test: hwui_unit_tests
Change-Id: I9f191c776a936c1be40702ff0924c7ad054526d5
|
|
Bug: 74435803
Test: adb shell dumpsys gfxinfo [package_name]
Change-Id: I1f2bcab500fb47c5e0b50c7459d4a876b063916b
|
|
Test: manual testing
Change-Id: I68d8706ffa7bc7c6622ea0b8c45d7297a131f6bf
|
|
Enable Skia shader cache after fix for image and text drawing
issues were landed in Skia.
Test: Ran Hangouts, Settings, CNN, Drive, GMail, Calendar, Clock
Test: Maps, Docs, Play store, YouTube apps.
Change-Id: I94cd07e95b704bc164894aa8b8c63f49ded198f5
|
|
Disable skia shader cache, which is causing image rendering
issues.
Test: Ran CNN app and images are OK.
Bug: 69264347
Change-Id: Ie81f3398074f28ac1670333f1fd3c95267b2beb3
|
|
Implement SkSL cache by reusing code and logic from egl_cache_t.
Test: Improves startup times for gmail by 15ms and 10ms for calc app.
Bug: 66740665
Change-Id: I9ba479c649ba97a2c29a48d40579ba001264c957
|
|
Test: No code changes, just ran through clang-format
Change-Id: Id23aa4ec7eebc0446fe3a30260f33e7fd455bb8c
|
|
Test: CtsUiRenderingTestCases
Change-Id: Ifa36371f55d3f2d78faf0a23fb283c904ff1af5f
|
|
Using a shared atlas surface is causing a variance in AA pixels
when drawing the same content. This is causing some CTS tests in
CtsPreference2TestCases to fail because of up to RGB(1,1,1)
difference in AA pixels in screenshots of a recreated activity.
Another effect is reducing memory usage ("GL mtrack" down by
10MB for clock app).
Test: Ran CtsPreference2TestCases tests.
Bug: 64487466
Change-Id: I1e5a547285c885136b6885d129d566d5b0c2ed76
|
|
Optimize VectorDrawables for Skia pipeline: draw small VectorDrawables
in a GPU atlas instead of seprate offscreen buffers.
This implementation is using CacheManger and allows for the atlas to
be released if there is a memory pressure.
Test: A new unit test for VectorDrawableAtlas is passing. Systrace shows
0.5ms faster DrawFrame for fling in Settings app main screen.
Change-Id: Ide3884eefae777e1547f1dfdb67b807185839fb4
|
|
The core of the implementation is complete and provides heuristic
cache sizing based on the size of the surface being used. This CL
will also be used to add the following features in the future...
1) Support Vulkan pipeline reporting on the size of the surface.
2) Complete the VectorDrawableAtlas stub code
3) Automatic purging of stale resources for low memory devices.
Test: hwui_unit_tests (new test added) and CtsUiRendering
Bug: 62260637
Change-Id: Ib85159cca28b646fe249f2190b07f1b7e0f50d8f
|