Android Baseline profile

Today, Google announced the release of the all new Android Baseline 2022 profile for Vulkan.

When we released the initial Android Baseline profile (version 2021), our motivations were simple but important. We wanted to remove the challenges developers consistently encountered when determining what functionality they could rely upon across the diverse set of Android devices.

The Android Baseline 2021 profile addressed this pain point with a Vulkan profile that specified a set of Vulkan extensions, features, formats, and limits that were found on the vast majority of active Android devices in 2021. This profile was created with available data and discussions with Khronos partners to be maximally compatible with both existing and future devices and represents the most advanced set of Vulkan functionality that meets these constraints.

When we first launched the Android Baseline 2021 profile we committed to a 2022 refresh of the profile because we knew that the adoption of Vulkan was quickly reaching toward an inflection point. Now, after a year of data analysis and coordination with our Khronos partners, we are happy to announce that we have successfully created the Android Baseline 2022 profile for Vulkan.

Just as with our initial 2021 profile, the Android Baseline 2022 profile includes a collection of Vulkan extensions, features, formats and limits that are found on the vast majority of active Android devices. However, after only a year of ecosystem advancement we were able to push for a much wider set of functionality. We believe that many developers will be able to quickly benefit from the additional functionality found in this new profile.

We encourage you to read through the full Android Baseline 2022 profile on Github.

The Android Baseline 2022 profile contains all of the same support as the initial 2021 profile, which included such useful and important functionality as:

  • Compressed textures through ASTC and ETC
  • Variable colorspaces through VK_EXT_swapchain_colorspace
  • Sample shading and multisample interpolation through sampleRateShading

Extending this functionality, the Android Baseline 2022 profile also adds a collection of incredibly valuable improvements, such as:

  • Full support for Vulkan 1.1
  • 16 bit integers in shaders through shaderInt16
  • Vulkan and Android Hardware Buffer interoperability through VK_ANDROID_external_memory_android_hardware_buffer
  • Querying Vulkan driver properties with VK_KHR_driver_properties
  • Greater control over renderpass creation with VK_KHR_create_renderpass2

Alongside the release of the 2022 profile we have also made the decision to amend the previous 2021 profile. When the 2021 profile shipped it contained support for the extended set of image gather instructions and extended image gather capability:

  • "shaderImageGatherExtended": true,
  • "minTexelGatherOffset": -8
  • "maxTexelGatherOffset": 7
With greater data analysis and investigation we have discovered that this inclusion was a mistake. The extended image gather functionality is supported at a much lower adoption rate than we demand from the Android Baseline profile, so we chose to amend the 2021 profile to remove these requirements. This change is visible in the amended Github as "revision": 2 under "history". The extended image gather functionality is also absent from the 2022 profile.

The amended Android Baseline 2021 profile will remain visible on Github.

The vast majority of Android devices already in use fully support both the 2021 profile and the 2022 profile without the need for an over-the-air update.

We will continue to broadcast the percentage of Android support for both profiles in the Android Distribution Dashboard at https://developer.android.com/about/dashboards.

Having successfully completed our committed refresh of the 2021 profile, we are not currently committing to any future refreshes of the Android Baseline profile. We will be updating to broader and more advanced sets of Vulkan functionality on an as-needed basis, as determined by developers, partners, and users.