New issue
Advanced search Search tips

Issue 848375 link

Starred by 4 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 842302
issue 850725

Blocking:
issue 848388
issue 858766
issue 898513



Sign in to add a comment

Get Vulkan running on Android

Project Member Reported by cblume@chromium.org, May 31 2018

Issue description

There is some existing Android code but it apparently doesn't work. Investigate & fix.
 

Comment 1 by cblume@chromium.org, May 31 2018

Blocking: 848388
Blockedon: 842302
Blockedon: 850725
Cc: vmi...@chromium.org
Summary: Get Vulkan running on Android (was: Get Vulkan working on Android)

Comment 4 by cblume@chromium.org, Jun 28 2018

Blocking: 858766
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 10

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

commit e4264428b06a891e13315d57ffb04532d7c6d7b8
Author: Chris Blume <cblume@chromium.org>
Date: Tue Jul 10 04:56:24 2018

Fix Vulkan build on Android

Building for Android with Vulkan support previously did not work. There
was some existing Android + Vulkan code which needed a little clean up.

This patch enables Vulkan support on Android builds.

BUG=842302, 850725 ,848375

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: I077fe775c7d387e5c65c0024e88421ba47ce6280
Reviewed-on: https://chromium-review.googlesource.com/1110754
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: Tobias Sargeant <tobiasjs@chromium.org>
Reviewed-by: Eric Karl <ericrk@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Commit-Queue: Chris Blume <cblume@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573613}
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/android_webview/browser/parent_output_surface.cc
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/android_webview/browser/parent_output_surface.h
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/content/browser/BUILD.gn
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/content/browser/renderer_host/compositor_impl_android.h
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/content/renderer/android/synchronous_layer_tree_frame_sink.cc
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/BUILD.gn
[add] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/android/BUILD.gn
[rename] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/android/vulkan_implementation_android.cc
[rename] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/android/vulkan_implementation_android.h
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/features.gni
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/init/BUILD.gn
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/gpu/vulkan/init/vulkan_factory.cc
[modify] https://crrev.com/e4264428b06a891e13315d57ffb04532d7c6d7b8/skia/config/SkVulkanConfig.h

Does this fix the android vulkan build ? Or it enables displaying frames using viz + skiarenderer + skia-vulkan ?
Both...ish.

It does fix the Android Vulkan build. To use Vulkan at run-time you must provide --enable-vulkan.

However, I found a bug in the Android Vulkan code path which I am working on now. You can follow the progress here: https://chromium-review.googlesource.com/c/chromium/src/+/1134497
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 17

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

commit be526b5dc3a94ef75a00d568b8a3580b45927c73
Author: Chris Blume <cblume@chromium.org>
Date: Wed Oct 17 02:09:03 2018

Add LOG(ERROR) when failing to find function ptr

Vulkan on Android loads a special function pointer. If we fail to load
this function pointer we should add a LOG(ERROR) in addition to the
existing destruction path.

BUG=848375

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: Ic7442f26735f6569690289deb188b62c7c76f6cf
Reviewed-on: https://chromium-review.googlesource.com/c/1284439
Reviewed-by: Eric Karl <ericrk@chromium.org>
Commit-Queue: Chris Blume <cblume@chromium.org>
Cr-Commit-Position: refs/heads/master@{#600243}
[modify] https://crrev.com/be526b5dc3a94ef75a00d568b8a3580b45927c73/gpu/vulkan/android/vulkan_implementation_android.cc

Blocking: 898513
Labels: vulkanize
Labels: -vulkanize Proj-Vulkanize
Project Member

Comment 11 by bugdroid1@chromium.org, Dec 11

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

commit 19657d423fdddf3e5441e4145f1fa394c7bc2dfc
Author: Eric Karl <ericrk@chromium.org>
Date: Tue Dec 11 16:20:09 2018

Remove obsolete Vulkan code from CompositorImpl Android

CompositorImpl Android had obsolete Vulkan prototype code. Removing
this as all Vulkan access should happen on Viz process. Removes a
DCHECK we were hitting when running with the new Vulkan code.

Bug: 848375
Change-Id: Ifba9927809290618346867e52ad71f3edc2b66a9
Reviewed-on: https://chromium-review.googlesource.com/c/1370935
Reviewed-by: Saman Sami <samans@chromium.org>
Commit-Queue: Eric Karl <ericrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615550}
[modify] https://crrev.com/19657d423fdddf3e5441e4145f1fa394c7bc2dfc/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/19657d423fdddf3e5441e4145f1fa394c7bc2dfc/content/browser/renderer_host/compositor_impl_android.h

Sign in to add a comment