|
| 1 | +digraph "GG" { |
| 2 | + compound=true; |
| 3 | + |
| 4 | +node [ |
| 5 | + fontsize = "12" |
| 6 | +]; |
| 7 | +subgraph cluster_0 { |
| 8 | + label = "onnxruntime.dll"; |
| 9 | + "ort_graph" [ label="onnxruntime_graph\n(schemas)" shape="box"]; |
| 10 | + "ort_common" [ label="onnxruntime_common" shape="box"]; |
| 11 | + "ort_util" [ label="onnxruntime_util" shape="box"]; |
| 12 | + "ort_mlas" [ label="onnxruntime_mlas" shape="box"]; |
| 13 | + "ort_optimizer" [ label="onnxruntime_optimizer" shape="box"]; |
| 14 | + "ort_session" [ label="onnxruntime_session" shape="box"]; |
| 15 | + "ort_graph" -> "ort_common" |
| 16 | + "onnx" [ label="onnx" shape="box"]; |
| 17 | + "protobuf" [ label="Google Protobuf" shape="box"]; |
| 18 | + "onnx" -> "protobuf" |
| 19 | + "ort_graph" -> "protobuf" |
| 20 | + "ort_graph" -> "onnx" |
| 21 | + "ort_optimizer" -> "onnx" |
| 22 | + "ort_framework" [ label="onnxruntime_framework" shape="box"]; |
| 23 | + "ort_framework" -> "ort_graph" |
| 24 | + "ort_framework" -> "ort_common" |
| 25 | + "ort_framework" -> "onnx" |
| 26 | + "ort_cpu_provider" [ label="onnxruntime_cpu_provider\n(kernels)" shape="box"]; |
| 27 | + "ort_cpu_provider" -> "ort_common" |
| 28 | + "ort_cpu_provider" -> "ort_framework" |
| 29 | + "ort_cpu_provider" -> "ort_util" |
| 30 | + "ort_cpu_provider" -> "ort_mlas" |
| 31 | + "ort_cpu_provider" -> "onnx" |
| 32 | + "ort_cuda_provider" [ label="onnxruntime_cuda_provider\n(kernels)" shape="box"]; |
| 33 | + "ort_cuda_provider" -> "ort_common" |
| 34 | + "ort_cuda_provider" -> "ort_framework" |
| 35 | + "ort_cuda_provider" -> "ort_util" |
| 36 | + "ort_cuda_provider" -> "ort_mlas" |
| 37 | + "ort_cuda_provider" -> "onnx" |
| 38 | + "ort_util" -> "ort_common" |
| 39 | + "ort_util" -> "ort_framework" |
| 40 | + "ort_util" -> "ort_mlas" |
| 41 | + "ort_mlas" -> "ort_common" |
| 42 | + "ort_session" -> "ort_framework" |
| 43 | + "ort_session" -> "ort_common" |
| 44 | + "ort_session" -> "ort_graph" |
| 45 | + "ort_session" -> "ort_optimizer" |
| 46 | + "ort_session" -> "ort_cpu_provider" |
| 47 | + "ort_optimizer" -> "ort_cpu_provider" |
| 48 | + "ort_optimizer" -> "ort_common" |
| 49 | + "ort_optimizer" -> "ort_framework" |
| 50 | + "ort_optimizer" -> "ort_graph" |
| 51 | + "capi" [ label="C API" shape="box"]; |
| 52 | +} |
| 53 | + |
| 54 | +subgraph cluster_1 { |
| 55 | + label = "Application Interfaces"; |
| 56 | + style=filled; |
| 57 | + color=lightgrey; |
| 58 | + node [style=filled,color=white]; |
| 59 | + "javaapi" [ label="Java API" shape="box"]; |
| 60 | + "csharpapi" [ label="C# API" shape="box"]; |
| 61 | + "cppapi" [ label="C++ API\n(header only)" shape="box"]; |
| 62 | + "javaapi" -> "capi" |
| 63 | + "cppapi" -> "capi" |
| 64 | + "csharpapi" -> "capi" |
| 65 | + "pythonapi" [ label="Python API" shape="box"]; |
| 66 | + pythonapi -> ort_session [lhead=cluster_0] |
| 67 | +} |
| 68 | + |
| 69 | +"grpc" [ label="gRPC" shape="box"]; |
| 70 | +"boost" [ label="Boost" shape="box"]; |
| 71 | +"onnx2" [ label="onnx" shape="box"]; |
| 72 | +"protobuf2" [ label="Google Protobuf" shape="box"]; |
| 73 | +"onnx2" -> "protobuf2" |
| 74 | +"grpc" -> "protobuf2" |
| 75 | + |
| 76 | +subgraph cluster_2 { |
| 77 | + label = "Applications"; |
| 78 | + "onnxruntime_server" [ label="ONNX Runtime Server" shape="box"]; |
| 79 | + "onnxruntime_server" -> "cppapi" |
| 80 | + "app1" [ label="User application" shape="box"]; |
| 81 | + "app2" [ label="User application" shape="box"]; |
| 82 | +} |
| 83 | + "onnxruntime_server" -> "grpc" |
| 84 | + "onnxruntime_server" -> "boost" |
| 85 | + "onnxruntime_server" -> "onnx2" |
| 86 | +} |
| 87 | + |
| 88 | + |
0 commit comments