From d83f474719a253c19fc70abb8d43528169d2cafb Mon Sep 17 00:00:00 2001
From: foreman
Date: Thu, 22 Aug 2019 13:48:47 -0400
Subject: [PATCH] P4 to Git Change 1987598 by gandryey@gera-win10 on 2019/08/22
13:29:18
SWDEV-197289 - VDI tracing API integration in rocTracer
- Add profiling activity callbacks for HIP API. The logic will utilize the current profiling mechanism inside VDI
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/hip/hip_activity.cpp#1 add
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.def.in#19 edit
... //depot/stg/opencl/drivers/opencl/api/hip/hip_hcc.map.in#21 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#246 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#341 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#426 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.hpp#145 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#148 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.hpp#64 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#83 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.hpp#26 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/activity.cpp#1 add
... //depot/stg/opencl/drivers/opencl/runtime/platform/activity.hpp#1 add
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.cpp#97 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/command.hpp#95 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/prof_protocol.h#1 add
---
hipamd/api/hip/hip_activity.cpp | 35 +++++++++++++++++++++++++++++++++
hipamd/api/hip/hip_hcc.def.in | 3 +++
hipamd/api/hip/hip_hcc.map.in | 3 +++
3 files changed, 41 insertions(+)
create mode 100644 hipamd/api/hip/hip_activity.cpp
diff --git a/hipamd/api/hip/hip_activity.cpp b/hipamd/api/hip/hip_activity.cpp
new file mode 100644
index 0000000000..00a208270a
--- /dev/null
+++ b/hipamd/api/hip/hip_activity.cpp
@@ -0,0 +1,35 @@
+/*
+Copyright (c) 2015-2016 Advanced Micro Devices, Inc. All rights reserved.
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANNTY OF ANY KIND, EXPRESS OR
+IMPLIED, INNCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANNY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER INN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR INN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
+
+
+#include "platform/activity.hpp"
+
+extern "C" void InitActivityCallback(void* id_callback, void* op_callback, void* arg) {
+ activity_prof::CallbacksTable::init(reinterpret_cast(id_callback),
+ reinterpret_cast(op_callback),
+ arg);
+}
+
+extern "C" bool EnableActivityCallback(unsigned op, bool enable) {
+ return activity_prof::CallbacksTable::SetEnabled(op, enable);
+}
+
+extern "C" const char* GetCmdName(unsigned op) {
+ return getOclCommandKindString(static_cast(op));
+}
diff --git a/hipamd/api/hip/hip_hcc.def.in b/hipamd/api/hip/hip_hcc.def.in
index 9acf1b1314..46e17da04a 100644
--- a/hipamd/api/hip/hip_hcc.def.in
+++ b/hipamd/api/hip/hip_hcc.def.in
@@ -172,3 +172,6 @@ hipHccGetAccelerator
hipHccGetAcceleratorView
hipCreateSurfaceObject
hipDestroySurfaceObject
+InitActivityCallback;
+EnableActivityCallback;
+GetCmdName;
diff --git a/hipamd/api/hip/hip_hcc.map.in b/hipamd/api/hip/hip_hcc.map.in
index 2af53915bc..6e21de7978 100644
--- a/hipamd/api/hip/hip_hcc.map.in
+++ b/hipamd/api/hip/hip_hcc.map.in
@@ -180,6 +180,9 @@ global:
hipDestroySurfaceObject*;
hipHccModuleLaunchKernel*;
hipExtModuleLaunchKernel*;
+ InitActivityCallback;
+ EnableActivityCallback;
+ GetCmdName;
};
local:
*;