Hash :
c0d806b4
Author :
Date :
2025-02-10T23:01:33
CL: OpenCL support for ANGLE Capture/Replay Implementation of OpenCL Capture/Replay tool in ANGLE. Brief notes about the change: - Most meaningful changes for the capture process are made in src/libANGLE/capture/ - Most meaningful changes for replay are made in util/capture/ and src/tests/perf_tests/ - Many autogenerated files are changed/added to allow the capture of OpenCL objects & calls - The following applications were captured/replayed: benchmark_model, GeekBench Compute, GeekBench ML, AI-Benchmark, various OCL CTS tests - End2end test added to capture_tests. CapturedTestCL.MultiFrameCL/ES3_Vulkan Bug: angleproject:383841335 Change-Id: I55fdaa6cd6c7ba740aaa2351e4d29050059d6d1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6102105 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
//
// Copyright 2025 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// ANGLETestCL:
// Implementation of ANGLE CL testing fixture.
//
#include "ANGLETest.h"
namespace angle
{
template <typename Params = angle::PlatformParameters>
class ANGLETestCL : public ::testing::TestWithParam<Params>
{
protected:
ANGLETestCL(const PlatformParameters ¶ms);
virtual void testSetUp() {}
virtual void testTearDown() {}
void recreateTestFixture()
{
TearDown();
SetUp();
}
private:
void SetUp() final;
void TearDown() final;
bool mSetUpCalled;
bool mIsSetUp;
bool mTearDownCalled;
angle::PlatformParameters mCurrentParams;
ConfigParameters mConfigParameters;
RenderDoc mRenderDoc;
std::map<angle::PlatformParameters, ConfigParameters> configParams;
};
} // namespace angle