From 63c9cab6a5dde2890f4e7ab5d150e950e149eb87 Mon Sep 17 00:00:00 2001 From: Jegor van Opdorp Date: Fri, 16 Oct 2026 08:20:19 +0200 Subject: [PATCH] Skip FP16 tensor core tuning on Mali GPUs Mali's OpenCL compiler crashes the process on the wmma kernels, so autotuning dies on phones like the Pixel 7a. --- cpp/neuralnet/opencltuner.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cpp/neuralnet/opencltuner.cpp b/cpp/neuralnet/opencltuner.cpp index a13e025d4e..7f5ba0d135 100644 --- a/cpp/neuralnet/opencltuner.cpp +++ b/cpp/neuralnet/opencltuner.cpp @@ -4542,7 +4542,8 @@ void OpenCLTuner::tune( static constexpr double FP16_TENSORCORE_REQUIRED_SPEEDUP = 0.9; bool foundGoodFP16 = false; - bool shouldTestFP16TensorCores = testFP16TensorCoresMode == enabled_t::True || (testFP16TensorCoresMode == enabled_t::Auto && !foundGoodFP16); + //Mali's compiler aborts the whole process on the wmma kernels instead of failing the build + bool shouldTestFP16TensorCores = testFP16TensorCoresMode == enabled_t::True || (testFP16TensorCoresMode == enabled_t::Auto && !foundGoodFP16 && device->info.name.find("Mali") == string::npos); if(shouldTestFP16TensorCores) { { OpenCLTuneParams result16;