SWDEV-470612 - Add stream id to DOT print when DEBUG_HIP_GRAPH_DOT_PRINT is enabled

Change-Id: Iec3630ba6fb2206925653ea939770bb9820d7c52


[ROCm/clr commit: 19bf971134]
This commit is contained in:
Anusha GodavarthySurya
2024-08-20 09:27:42 +00:00
committed by Anusha Godavarthy Surya
parent 785d6e7d01
commit c2a4062392
2 changed files with 28 additions and 20 deletions
+1 -1
View File
@@ -1319,7 +1319,7 @@ hipError_t ihipGraphInstantiate(hip::GraphExec** pGraphExec, hip::Graph* graph,
std::string filename =
"graph_" + std::to_string(amd::Os::getProcessId()) + "_dot_print_" + std::to_string(i++);
hipError_t status =
ihipGraphDebugDotPrint(reinterpret_cast<hipGraph_t>(graph), filename.c_str(), 0);
ihipGraphDebugDotPrint(reinterpret_cast<hipGraph_t>(clonedGraph), filename.c_str(), 0);
if (status == hipSuccess) {
LogPrintfInfo("[hipGraph] graph dump:%s", filename.c_str());
}
+27 -19
View File
@@ -148,22 +148,7 @@ struct hipGraphNodeDOTAttribute {
virtual std::string GetLabel(hipGraphDebugDotFlags flag) { return label_; }
virtual void PrintAttributes(std::ostream& out, hipGraphDebugDotFlags flag) {
out << "[";
out << "style";
out << "=\"";
out << style_;
out << "\"";
out << "shape";
out << "=\"";
out << GetShape(flag);
out << "\"";
out << "label";
out << "=\"";
out << GetLabel(flag);
out << "\"";
out << "];";
}
virtual void PrintAttributes(std::ostream& out, hipGraphDebugDotFlags flag) {}
};
class GraphKernelArgManager : public amd::ReferenceCountedObject, public amd::GraphKernelArgManager {
@@ -465,6 +450,25 @@ struct GraphNode : public hipGraphNodeDOTAttribute {
}
return isGraphCapture;
}
virtual void PrintAttributes(std::ostream& out, hipGraphDebugDotFlags flag) override {
out << "[";
out << "style";
out << "=\"";
out << style_;
out << "\"";
out << "shape";
out << "=\"";
out << GetShape(flag);
out << "\"";
out << "label";
out << "=\"";
out << GetLabel(flag);
if (DEBUG_HIP_GRAPH_DOT_PRINT) {
out << "\nStreamId:" << stream_id_;
}
out << "\"";
out << "];";
}
};
struct Graph {
@@ -969,8 +973,9 @@ class GraphKernelNode : public GraphNode {
out << "=\"";
out << style_;
(flag == hipGraphDebugDotFlagsKernelNodeParams ||
flag == hipGraphDebugDotFlagsKernelNodeAttributes) ?
out << "\n" : out << "\"";
flag == hipGraphDebugDotFlagsKernelNodeAttributes)
? out << "\n"
: out << "\"";
out << "shape";
out << "=\"";
out << GetShape(flag);
@@ -978,9 +983,12 @@ class GraphKernelNode : public GraphNode {
out << "label";
out << "=\"";
out << GetLabel(flag);
if (DEBUG_HIP_GRAPH_DOT_PRINT) {
out << "StreamId:" << stream_id_;
}
out << "\"";
out << "];";
}
}
virtual std::string GetLabel(hipGraphDebugDotFlags flag) override {
hipFunction_t func = getFunc(kernelParams_, ihipGetDevice());