@@ -1,4 +1,5 @@
# Copyright (c) OpenMMLab. All rights reserved.
+# Copyright 2024 Huawei Technologies Co., Ltd
import mmcv
from .version import __version__, short_version
@@ -17,7 +18,7 @@ def digit_version(version_str):
mmcv_minimum_version = '1.3.17'
-mmcv_maximum_version = '1.6.0'
+mmcv_maximum_version = '1.7.2'
mmcv_version = digit_version(mmcv.__version__)
@@ -26,4 +27,4 @@ assert (mmcv_version >= digit_version(mmcv_minimum_version)
f'MMCV=={mmcv.__version__} is used but incompatible. ' \
f'Please install mmcv>={mmcv_minimum_version}, <={mmcv_maximum_version}.'
-__all__ = ['__version__', 'short_version']
+__all__ = ['__version__', 'short_version']
\ No newline at end of file
@@ -1,11 +1,16 @@
# Copyright (c) OpenMMLab. All rights reserved.
+# Copyright 2024 Huawei Technologies Co., Ltd
import warnings
+import torch
+import torch_npu
import torch.nn as nn
import torch.utils.checkpoint as cp
from mmcv.cnn import build_conv_layer, build_norm_layer, build_plugin_layer
from mmcv.runner import BaseModule
from torch.nn.modules.batchnorm import _BatchNorm
+import mx_driving.fused
+
from ..builder import BACKBONES
from ..utils import ResLayer
@@ -288,7 +293,7 @@ class Bottleneck(BaseModule):
if self.downsample is not None:
identity = self.downsample(x)
- out += identity
+ out = mx_driving.fused.npu_add_relu(out, identity)
return out
@@ -297,8 +302,6 @@ class Bottleneck(BaseModule):
else:
out = _inner_forward(x)
- out = self.relu(out)
-
return out