onnxruntime_dependencies.dot 2.97 KB
Newer Older
gaoqiong's avatar
gaoqiong committed
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
digraph "GG" {
  compound=true;
	
node [
  fontsize = "12"
];
subgraph cluster_0 {
    label = "onnxruntime.dll";
    "ort_graph" [ label="onnxruntime_graph\n(schemas)" shape="box"];
    "ort_common" [ label="onnxruntime_common" shape="box"];
    "ort_util" [ label="onnxruntime_util" shape="box"];
    "ort_mlas" [ label="onnxruntime_mlas" shape="box"];
    "ort_optimizer" [ label="onnxruntime_optimizer" shape="box"];    
    "ort_session" [ label="onnxruntime_session" shape="box"];
    "ort_graph" -> "ort_common"
    "onnx" [ label="onnx" shape="box"];
    "protobuf" [ label="Google Protobuf" shape="box"];
    "onnx" -> "protobuf"
    "ort_graph" -> "protobuf"    
    "ort_graph" -> "onnx"
    "ort_optimizer" -> "onnx"        
    "ort_framework" [ label="onnxruntime_framework" shape="box"];
    "ort_framework" -> "ort_graph" 
    "ort_framework" -> "ort_common" 
    "ort_framework" -> "onnx" 
    "ort_cpu_provider" [ label="onnxruntime_cpu_provider\n(kernels)" shape="box"];
    "ort_cpu_provider" -> "ort_common" 
    "ort_cpu_provider" -> "ort_framework"
    "ort_cpu_provider" -> "ort_util"
    "ort_cpu_provider" -> "ort_mlas"
    "ort_cpu_provider" -> "onnx"
    "ort_cuda_provider" [ label="onnxruntime_cuda_provider\n(kernels)" shape="box"];
    "ort_cuda_provider" -> "ort_common" 
    "ort_cuda_provider" -> "ort_framework"
    "ort_cuda_provider" -> "ort_util"
    "ort_cuda_provider" -> "ort_mlas"    
    "ort_cuda_provider" -> "onnx"    
    "ort_util" -> "ort_common" 
    "ort_util" -> "ort_framework" 
    "ort_util" -> "ort_mlas" 
    "ort_mlas" -> "ort_common"
    "ort_session" -> "ort_framework"
    "ort_session" -> "ort_common"
    "ort_session" -> "ort_graph"   
    "ort_session" -> "ort_optimizer"
    "ort_session" -> "ort_cpu_provider"            
    "ort_optimizer" -> "ort_cpu_provider"
    "ort_optimizer" -> "ort_common"
    "ort_optimizer" -> "ort_framework"
    "ort_optimizer" -> "ort_graph"
    "capi" [ label="C API" shape="box"];        
}

subgraph cluster_1 {
    label = "Application Interfaces";
    style=filled;
    color=lightgrey;
    node [style=filled,color=white];
    "javaapi" [ label="Java API" shape="box"];
    "csharpapi" [ label="C# API" shape="box"];
    "cppapi" [ label="C++ API\n(header only)" shape="box"];            
    "javaapi" -> "capi"
    "cppapi" -> "capi"
    "csharpapi" -> "capi"    
    "pythonapi" [ label="Python API" shape="box"];
     pythonapi -> ort_session [lhead=cluster_0]
}

"grpc" [ label="gRPC" shape="box"];
"boost" [ label="Boost" shape="box"];
"onnx2" [ label="onnx" shape="box"];
"protobuf2" [ label="Google Protobuf" shape="box"];
"onnx2" -> "protobuf2"
"grpc" -> "protobuf2"

subgraph cluster_2 {
    label = "Applications";
  "onnxruntime_server" [ label="ONNX Runtime Server" shape="box"];
  "onnxruntime_server" -> "cppapi"   
  "app1" [ label="User application" shape="box"];
  "app2" [ label="User application" shape="box"];
}
  "onnxruntime_server" -> "grpc"
  "onnxruntime_server" -> "boost" 
  "onnxruntime_server" -> "onnx2"
}