Skip to content

Convolution FP32 in oneDNN Changed from gemm:acl to gemm:ref in TensorFlow 2.16 #4068

@rpushkarr

Description

@rpushkarr

In TensorFlow version 2.16 (and later), the convolution operation implementation for FP32 data type in oneDNN was changed from gemm:acl to gemm:ref. However, this change has resulted in performance degradation compared to TensorFlow version 2.15, where gemm:acl was used.

System Information:

  • TensorFlow Version: 2.16
  • Previous Working Version: 2.15
  • oneDNN Version: 3.2.1
  • Hardware: Aarch64
  • Operating System: Ubuntu 22.04

Issue Summary:

  • In TensorFlow 2.15, the convolution operation for FP32 data type was routed through gemm:acl in oneDNN, which provided better performance.
  • In TensorFlow 2.16 (and later), the implementation was changed to use gemm:ref, leading to a noticeable performance drop.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions