Edit

kc3-lang/angle/src/tests/perf_tests/ANGLEComputeTestCL.h

Branch :

  • Show log

    Commit

  • Author : Alex Dean
    Date : 2025-02-10 23:01:33
    Hash : c0d806b4
    Message : 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>

  • src/tests/perf_tests/ANGLEComputeTestCL.h
  • //
    // 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.
    //
    // ANGLEComputeTestCL:
    //   Base class for ANGLEComputeTestCL performance tests
    //
    
    #include "ANGLEPerfTest.h"
    
    class ANGLEComputeTestCL : public ANGLEPerfTest
    {
      public:
        ANGLEComputeTestCL(const std::string &name,
                           const RenderTestParams &testParams,
                           const char *units = "ns");
        ~ANGLEComputeTestCL() override;
    
        virtual void initializeBenchmark() {}
        virtual void destroyBenchmark() {}
    
        virtual void drawBenchmark() = 0;
    
        std::mutex &getTraceEventMutex() { return mTraceEventMutex; }
        bool isRenderTest() const override { return true; }
    
      protected:
        const RenderTestParams &mTestParams;
    
        void updatePerfCounters();
    
      private:
        void SetUp() override;
        void TearDown() override;
    
        void step() override;
    
        std::mutex mTraceEventMutex;
    };