Unverified Commit fd3a1a16 authored by q.yao's avatar q.yao Committed by GitHub
Browse files

Add deprecate warning of deployment (#1750)

parent a0127e17
## Introduction of mmcv.onnx module ## Introduction of mmcv.onnx module
### <span style="color:red">DeprecationWarning</span>
ONNX support will be deprecated in the future.
Welcome to use the unified model deployment toolbox MMDeploy: https://github.com/open-mmlab/mmdeploy
### register_extra_symbolics ### register_extra_symbolics
Some extra symbolic functions need to be registered before exporting PyTorch model to ONNX. Some extra symbolic functions need to be registered before exporting PyTorch model to ONNX.
......
## ONNX Runtime Deployment ## ONNX Runtime Deployment
### <span style="color:red">DeprecationWarning</span>
ONNX support will be deprecated in the future.
Welcome to use the unified model deployment toolbox MMDeploy: https://github.com/open-mmlab/mmdeploy
### Introduction of ONNX Runtime ### Introduction of ONNX Runtime
**ONNX Runtime** is a cross-platform inferencing and training accelerator compatible with many popular ML/DNN frameworks. Check its [github](https://github.com/microsoft/onnxruntime) for more information. **ONNX Runtime** is a cross-platform inferencing and training accelerator compatible with many popular ML/DNN frameworks. Check its [github](https://github.com/microsoft/onnxruntime) for more information.
......
## TensorRT Deployment ## TensorRT Deployment
### <span style="color:red">DeprecationWarning</span>
TensorRT support will be deprecated in the future.
Welcome to use the unified model deployment toolbox MMDeploy: https://github.com/open-mmlab/mmdeploy
<!-- TOC --> <!-- TOC -->
- [TensorRT Deployment](#tensorrt-deployment) - [TensorRT Deployment](#tensorrt-deployment)
- [<span style="color:red">DeprecationWarning</span>](#deprecationwarning)
- [Introduction](#introduction) - [Introduction](#introduction)
- [List of TensorRT plugins supported in MMCV](#list-of-tensorrt-plugins-supported-in-mmcv) - [List of TensorRT plugins supported in MMCV](#list-of-tensorrt-plugins-supported-in-mmcv)
- [How to build TensorRT plugins in MMCV](#how-to-build-tensorrt-plugins-in-mmcv) - [How to build TensorRT plugins in MMCV](#how-to-build-tensorrt-plugins-in-mmcv)
......
# Copyright (c) OpenMMLab. All rights reserved. # Copyright (c) OpenMMLab. All rights reserved.
import os import os
import warnings
import torch import torch
def is_custom_op_loaded(): def is_custom_op_loaded():
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
flag = False flag = False
try: try:
from ..tensorrt import is_tensorrt_plugin_loaded from ..tensorrt import is_tensorrt_plugin_loaded
......
# Copyright (c) OpenMMLab. All rights reserved. # Copyright (c) OpenMMLab. All rights reserved.
"""Modified from https://github.com/pytorch/pytorch.""" """Modified from https://github.com/pytorch/pytorch."""
import os import os
import warnings
import numpy as np import numpy as np
import torch import torch
...@@ -467,6 +468,18 @@ def roll(g, input, shifts, dims): ...@@ -467,6 +468,18 @@ def roll(g, input, shifts, dims):
def register_extra_symbolics(opset=11): def register_extra_symbolics(opset=11):
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
register_op('one_hot', one_hot, '', opset) register_op('one_hot', one_hot, '', opset)
register_op('im2col', im2col, '', opset) register_op('im2col', im2col, '', opset)
register_op('topk', topk, '', opset) register_op('topk', topk, '', opset)
......
...@@ -2,10 +2,23 @@ ...@@ -2,10 +2,23 @@
import ctypes import ctypes
import glob import glob
import os import os
import warnings
def get_tensorrt_op_path(): def get_tensorrt_op_path():
"""Get TensorRT plugins library path.""" """Get TensorRT plugins library path."""
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
wildcard = os.path.join( wildcard = os.path.join(
os.path.abspath(os.path.dirname(os.path.dirname(__file__))), os.path.abspath(os.path.dirname(os.path.dirname(__file__))),
'_ext_trt.*.so') '_ext_trt.*.so')
...@@ -24,12 +37,38 @@ def is_tensorrt_plugin_loaded(): ...@@ -24,12 +37,38 @@ def is_tensorrt_plugin_loaded():
Returns: Returns:
bool: plugin_is_loaded flag bool: plugin_is_loaded flag
""" """
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
global plugin_is_loaded global plugin_is_loaded
return plugin_is_loaded return plugin_is_loaded
def load_tensorrt_plugin(): def load_tensorrt_plugin():
"""load TensorRT plugins library.""" """load TensorRT plugins library."""
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
global plugin_is_loaded global plugin_is_loaded
lib_path = get_tensorrt_op_path() lib_path = get_tensorrt_op_path()
if (not plugin_is_loaded) and os.path.exists(lib_path): if (not plugin_is_loaded) and os.path.exists(lib_path):
......
# Copyright (c) OpenMMLab. All rights reserved. # Copyright (c) OpenMMLab. All rights reserved.
import warnings
import numpy as np import numpy as np
import onnx import onnx
...@@ -19,6 +21,19 @@ def preprocess_onnx(onnx_model): ...@@ -19,6 +21,19 @@ def preprocess_onnx(onnx_model):
Returns: Returns:
onnx.ModelProto: Modified onnx model. onnx.ModelProto: Modified onnx model.
""" """
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
graph = onnx_model.graph graph = onnx_model.graph
nodes = graph.node nodes = graph.node
initializers = graph.initializer initializers = graph.initializer
......
...@@ -40,6 +40,19 @@ def onnx2trt(onnx_model, ...@@ -40,6 +40,19 @@ def onnx2trt(onnx_model,
>>> device_id=0) >>> device_id=0)
>>> }) >>> })
""" """
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
device = torch.device('cuda:{}'.format(device_id)) device = torch.device('cuda:{}'.format(device_id))
# create builder and network # create builder and network
logger = trt.Logger(log_level) logger = trt.Logger(log_level)
...@@ -94,6 +107,19 @@ def save_trt_engine(engine, path): ...@@ -94,6 +107,19 @@ def save_trt_engine(engine, path):
engine (tensorrt.ICudaEngine): TensorRT engine to serialize engine (tensorrt.ICudaEngine): TensorRT engine to serialize
path (str): disk path to write the engine path (str): disk path to write the engine
""" """
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
with open(path, mode='wb') as f: with open(path, mode='wb') as f:
f.write(bytearray(engine.serialize())) f.write(bytearray(engine.serialize()))
...@@ -107,6 +133,19 @@ def load_trt_engine(path): ...@@ -107,6 +133,19 @@ def load_trt_engine(path):
Returns: Returns:
tensorrt.ICudaEngine: the TensorRT engine loaded from disk tensorrt.ICudaEngine: the TensorRT engine loaded from disk
""" """
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This function will be deprecated in future. '
msg += blue_text + 'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
with trt.Logger() as logger, trt.Runtime(logger) as runtime: with trt.Logger() as logger, trt.Runtime(logger) as runtime:
with open(path, mode='rb') as f: with open(path, mode='rb') as f:
engine_bytes = f.read() engine_bytes = f.read()
...@@ -154,6 +193,20 @@ class TRTWrapper(torch.nn.Module): ...@@ -154,6 +193,20 @@ class TRTWrapper(torch.nn.Module):
""" """
def __init__(self, engine, input_names=None, output_names=None): def __init__(self, engine, input_names=None, output_names=None):
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: This tool will be deprecated in future. '
msg += blue_text + \
'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
super(TRTWrapper, self).__init__() super(TRTWrapper, self).__init__()
self.engine = engine self.engine = engine
if isinstance(self.engine, str): if isinstance(self.engine, str):
......
...@@ -2,6 +2,7 @@ import glob ...@@ -2,6 +2,7 @@ import glob
import os import os
import platform import platform
import re import re
import warnings
from pkg_resources import DistributionNotFound, get_distribution from pkg_resources import DistributionNotFound, get_distribution
from setuptools import find_packages, setup from setuptools import find_packages, setup
...@@ -135,6 +136,21 @@ def get_extensions(): ...@@ -135,6 +136,21 @@ def get_extensions():
extensions = [] extensions = []
if os.getenv('MMCV_WITH_TRT', '0') != '0': if os.getenv('MMCV_WITH_TRT', '0') != '0':
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: ' + \
'Custom TensorRT Ops will be deprecated in future. '
msg += blue_text + \
'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
ext_name = 'mmcv._ext_trt' ext_name = 'mmcv._ext_trt'
from torch.utils.cpp_extension import include_paths, library_paths from torch.utils.cpp_extension import include_paths, library_paths
library_dirs = [] library_dirs = []
...@@ -314,6 +330,20 @@ def get_extensions(): ...@@ -314,6 +330,20 @@ def get_extensions():
extensions.append(ext_ops) extensions.append(ext_ops)
if EXT_TYPE == 'pytorch' and os.getenv('MMCV_WITH_ORT', '0') != '0': if EXT_TYPE == 'pytorch' and os.getenv('MMCV_WITH_ORT', '0') != '0':
# Following strings of text style are from colorama package
bright_style, reset_style = '\x1b[1m', '\x1b[0m'
red_text, blue_text = '\x1b[31m', '\x1b[34m'
white_background = '\x1b[107m'
msg = white_background + bright_style + red_text
msg += 'DeprecationWarning: ' + \
'Custom ONNXRuntime Ops will be deprecated in future. '
msg += blue_text + \
'Welcome to use the unified model deployment toolbox '
msg += 'MMDeploy: https://github.com/open-mmlab/mmdeploy'
msg += reset_style
warnings.warn(msg)
ext_name = 'mmcv._ext_ort' ext_name = 'mmcv._ext_ort'
import onnxruntime import onnxruntime
from torch.utils.cpp_extension import include_paths, library_paths from torch.utils.cpp_extension import include_paths, library_paths
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment