Commit Graph

62 Commits (2b97c52d39324fadd81235e01649e9b01956b07d)

Author SHA1 Message Date
Zachary Streeter d1690cee1c resolve conflicts 2022-10-22 13:39:50 +08:00
Zaida Zhou 57ba4811f1
Rename mmcv package name (#2235)
* Rename mmcv package name

* fix typo

* fix typo

* fix typo
2022-08-30 16:24:06 +08:00
q.yao 2e5628b410
[Refactor]: Remove deployment for dev-2.x (#2225)
* remove deploy for 2.0

* update onnx ut
2022-08-26 20:11:05 +08:00
Zaida Zhou 0b4285d959
Pick commits from master (#2164)
* [Docs] Add swith_language.md in docs (#2160)

* [Fix] Fix onnx unit tests (#2155)

* [Docs] Limit extension versions (#2144)

* Support PrRoIPool operation

* Add MPS bbox overlap

* Add .pre-commit-config-zh-cn.yaml (#2135)

Co-authored-by: xcnick <xcnick0412@gmail.com>
Co-authored-by: Jingwei Zhang <zjw18@mails.tsinghua.edu.cn>
Co-authored-by: q.yao <yaoqian@sensetime.com>
2022-08-03 14:11:53 +08:00
Zaida Zhou 45fa3e44a2
Add pyupgrade pre-commit hook (#1937)
* add pyupgrade

* add options for pyupgrade

* minor refinement
2022-05-18 11:47:14 +08:00
Zaida Zhou 235c0253ab
bump version to v1.5.0 (#1883) 2022-04-19 00:14:38 +08:00
Qiza-lyhm 42e7e2eec4
[Fix] Add MLU kernels to be compiled (#1885)
- Add MLU operator kernels.
2022-04-17 01:10:06 +08:00
Jiazhen Wang 362a90f8bf
[Feature] Add several MLU ops (#1563)
* [Feature] Add roiaware pool3d ops from mmdet3d (#1382)

* add ops (roiaware pool3d) in mmdet3d

* refactor code

* fix typo

Co-authored-by: zhouzaida <zhouzaida@163.com>

* [Feature] Add iou3d op from mmdet3d (#1356)

* add ops (iou3d) in mmdet3d

* add unit test

* refactor code

* refactor code

* refactor code

* refactor code

* refactor code

Co-authored-by: zhouzaida <zhouzaida@163.com>

* [Fix] Update test data for test_iou3d (#1427)

* Update test data for test_iou3d

* delete blank lines

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* [Feature] Add group points ops from mmdet3d (#1415)

* add op (group points) and its related ops (ball query and knn) in mmdet3d

* refactor code

* fix typo

* refactor code

* fix typo

* refactor code

* make input contiguous

Co-authored-by: zhouzaida <zhouzaida@163.com>

* add mmdet3d op (#1425)

Co-authored-by: zhouzaida <zhouzaida@163.com>

* [Feature] Loading objects from different backends and dumping objects to different backends (#1330)

* [Feature] Choose storage backend by the prefix of filepath

* refactor FileClient and add unittest

* support loading from different backends

* polish docstring

* fix unittet

* rename attribute str_like_obj to is_str_like_obj

* add infer_client method

* add check_exist method

* rename var client to file_client

* polish docstring

* add join_paths method

* remove join_paths and add _format_path

* enhance unittest

* refactor unittest

* singleton pattern

* fix test_clientio.py

* deprecate CephBackend

* enhance docstring

* refactor unittest for petrel

* refactor unittest for disk backend

* update io.md

* add concat_paths method

* improve docstring

* improve docstring

* add isdir and copyfile for file backend

* delete copyfile and add get_local_path

* remove isdir method of petrel

* fix typo

* add comment and polish docstring

* polish docstring

* rename _path_mapping to _map_path

* polish docstring and fix typo

* refactor get_local_path

* add list_dir_or_file for FileClient

* add list_dir_or_file for PetrelBackend

* fix windows ci

* Add return docstring

* polish docstring

* fix typo

* fix typo

* deprecate the conversion from Path to str

* add docs for loading checkpoints with FileClient

* refactor map_path

* add _ensure_methods to ensure methods have been implemented

* fix list_dir_or_file

* rename _ensure_method_implemented to has_method

* Add CI for pytorch 1.10 (#1431)

* [Feature] Upload checkpoints and logs to ceph (#1375)

* [Feature] Choose storage backend by the prefix of filepath

* refactor FileClient and add unittest

* support loading from different backends

* polish docstring

* fix unittet

* rename attribute str_like_obj to is_str_like_obj

* [Docs] Upload checkpoint to petrel oss

* add infer_client method

* Support uploading checkpoint to petrel oss

* add check_exist method

* refactor CheckpointHook

* support uploading logs to ceph

* rename var client to file_client

* polish docstring

* enhance load_from_ceph

* refactor load_from_ceph

* refactor TextLoggerHook

* change the meaning of out_dir argument

* fix test_checkpoint_hook.py

* add join_paths method

* remove join_paths and add _format_path

* enhance unittest

* refactor unittest

* add a unittest for EvalHook when file backend is petrel

* singleton pattern

* fix test_clientio.py

* deprecate CephBackend

* add warning in load_from_ceph

* fix type of out_suffix

* enhance docstring

* refactor unittest for petrel

* refactor unittest for disk backend

* update io.md

* add concat_paths method

* fix CI

* mock check_exist

* improve docstring

* improve docstring

* improve docstring

* improve docstring

* add isdir and copyfile for file backend

* delete copyfile and add get_local_path

* remove isdir method of petrel

* fix typo

* rename check_exists to exists

* refactor code and polish docstring

* fix windows ci

* add comment and polish docstring

* polish docstring

* polish docstring

* rename _path_mapping to _map_path

* polish docstring and fix typo

* refactor get_local_path

* add list_dir_or_file for FileClient

* add list_dir_or_file for PetrelBackend

* fix windows ci

* Add return docstring

* polish docstring

* fix typo

* fix typo

* fix typo

* fix error when mocking PetrelBackend

* deprecate the conversion from Path to str

* add docs for loading checkpoints with FileClient

* rename keep_log to keep_local

* refactor map_path

* add _ensure_methods to ensure methods have been implemented

* fix list_dir_or_file

* rename _ensure_method_implemented to has_method

* refactor

* polish information

* format information

* bump version to v1.3.16 (#1430)

* [Fix]: Update test data of test_tin_shift (#1426)

* Update test data of test_tin_shift

* Delete tmp.engine

* add pytest raises asserterror test

* raise valueerror, update test log

* add more comment

* Apply suggestions from code review

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* fix the wrong function reference bug in BaseTransformerLayer when batch_first is True (#1418)

* [Docs] Add mmcv itself in the docs list (#1441)

* Add mmcv itself in the docs list

* modify link of docs

* [Improve] improve checkpoint loading log (#1446)

* [Feature] Support SigmoidFocalLoss with Cambricon MLU backend (#1346)

* [Feature] Support SigmoidFocalLoss with Cambricon MLU backend

* refactor MMCV_WITH_MLU macro define

* refactor NFU_ALIGN_SIZE, PAD_DOWN and split_pipeline_num

* delete extra fool proofing in cpp

* [Feature] Support SigmoidFocalLossBackward with Cambricon MLU backend

* fix macro definition in SigmoidFocalLoss

* refactor mlu files into clang-format

* refactor sigmoid focal loss test

* refactor Sigmoid Focal Loss file structure.

* fix python lint error

* fix import torch_mlu error type

* fix lint

* refactor clang format style to google

Co-authored-by: zhouzaida <zhouzaida@163.com>

* [Feature] Support RoiAlign With Cambricon MLU Backend (#1429)

* [Feature] Support NMS with cambricon MLU backend (#1467)

* [Feature] Support BBoxOverlaps with cambricon MLU backend (#1507)

* [Refactor] Format C++ code

* [Refactor] include common_mlu_helper in pytorch_mlu_helper and refactor build condition

* [Improve] Improve the performance of roialign, nms and focalloss with MLU backend (#1572)

* [Improve] Improve the performance of roialign with MLU backend

* replace CHECK_MLU with CHECK_MLU_INPUT

* [Improve] Improve the perf of nms and focallosssigmoid with MLU backend

* [Improve] Improve the performance of roialign with MLU backend (#1741)

* [Feature] Support tin_shift with cambricon MLU backend (#1696)

* [Feature] Support tin_shift with cambricon MLU backend

* [fix] Add the assertion of batch_size in tin_shift.py

* [fix] fix the param check of tin_shift in cambricon code

* [fix] Fix lint failure.

* [fix] Fix source file lint failure.

* Update mmcv/ops/tin_shift.py

[Refactor] Modify the code in mmcv/ops/tin_shift.py.

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

Co-authored-by: budefei <budefei@cambricon.com>
Co-authored-by: budefei <budefei@cambricom.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* resolve conflicts and fix lint

* fix mmcv.utils.__init__

* fix mmcv.utils.__init__

* Fix lints and change FLAG

* fix setup and refine

* remove a redundant line

* remove an unnecessary 'f'

* fix compilation error

Co-authored-by: dingchang <hudingchang.vendor@sensetime.com>
Co-authored-by: zhouzaida <zhouzaida@163.com>
Co-authored-by: q.yao <yaoqian@sensetime.com>
Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
Co-authored-by: pc <luopeichao@sensetime.com>
Co-authored-by: Wenwei Zhang <40779233+ZwwWayne@users.noreply.github.com>
Co-authored-by: q.yao <streetyao@live.com>
Co-authored-by: Tong Gao <gaotongxiao@gmail.com>
Co-authored-by: Yuxin Liu <liuyuxin@cambricon.com>
Co-authored-by: zihanchang11 <92860914+zihanchang11@users.noreply.github.com>
Co-authored-by: shlrao <shenglong.rao@gmail.com>
Co-authored-by: zhouchenyang <zcy19950525@gmail.com>
Co-authored-by: Mrxiaofei <36697723+Mrxiaofei@users.noreply.github.com>
Co-authored-by: budefei <budefei@cambricon.com>
Co-authored-by: budefei <budefei@cambricom.com>
2022-04-16 15:45:00 +08:00
Qiza-lyhm 4826a9b7e4
[Feature] Support PyTorch backend on MLU (#1770)
* feat(MLU): Support PyTorch backend on MLU

  * MMCV support PyTorch backend on MLU

  * Add MLUDataParallel and MLUDistributedDataParallel

  * Add MLU operator support

* [Fix]: Fix PR comments and add IS_MLU to get device available check

* [Fix]: fix PR comments of dist_utils.py

* [Doc] Rewrite annotations of functions.

* [Docs] Rewrite annotation in distributed.py

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>

* [Docs] Fix lint

Co-authored-by: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com>
2022-04-14 21:48:18 +08:00
q.yao 6289b6f922
[Fix] Fix rocm support (#1704) 2022-03-21 15:24:22 +08:00
q.yao fd3a1a16ea
Add deprecate warning of deployment (#1750) 2022-03-01 15:07:07 +08:00
Zaida Zhou dd82ab1497
Upgrade the version of isort (#1705)
* Upgrade the version of isort

* sort the order of importing modules
2022-02-09 21:29:21 +08:00
Zaida Zhou 8abb3b2909
Deprecate the support for "python setup.py test" (#1637)
* Remove the unnecessary dependency pytest-runner

* remove the tests_requires option from setup.py
2022-01-10 16:28:25 +08:00
Jiazhen Wang d30e37d4d5
[Refactor] refactor requirements (#1536)
* [Improve] build using ninja

* [Refactor] refactor requirements

* [Improve] imporve docs

* [Fix] fix file name
2021-12-29 23:15:11 +08:00
pc a4dc2a72ab
support device dispatch in parrots (#1588) 2021-12-24 00:30:54 +08:00
Ming-Hsuan-Tu 48f44b697a
fix tensorrt test failed with pytorch 1.8+ (#1464)
* fix tensorrt test failed with pytorch 1.8+

* add comment
2021-12-10 19:41:37 +08:00
Zaida Zhou a7c1016758
[Fix] Fix compiled error on windows (#1543)
* [Fix] Fix compiled error on windows

* fix typo
2021-12-01 19:10:11 +08:00
Zaida Zhou 46b2cb376b
[Fix] Fix the compiled error on windows due to the c++14 flag (#1526)
* [Fix] Fix the compiled error on windows due to the c++14 flag

* fix lint
2021-11-28 19:21:41 +08:00
q.yao 230f9a3b80
Refactor csrc with device dispatcher (#1463)
* Add device registry for pytorch ops

* add declaration of CheckDeviceConsistency

* fix for torch130

* assert with torch check

* Refactor ops with dispatch

* update rest ops

* faster install

* update compatibility

* update compatibility, rename parameter

* move cpu implement to pytorch/cpu

* update ops/csrc/README.md

* fix rocm support

* update cn document

* update docs

* list instead of map
2021-11-23 21:59:53 +08:00
Zaida Zhou d3b0572408
Add citation (#1303) 2021-09-01 19:20:01 +08:00
Zaida Zhou 5617ad72d0
[Feature] Add python3.9 in CI (#1291)
* [Feature] Add python3.9 in CI

* fix dependencies for compiling onnx
2021-08-27 16:25:30 +08:00
lizz 81777d1213
Use more cpus in building (#1046)
* Use more cpus in building

Signed-off-by: lizz <lizz@sensetime.com>

* Add psutil to requirements

Signed-off-by: lizz <lizz@sensetime.com>

* fix

Signed-off-by: lizz <lizz@sensetime.com>

* fix

Signed-off-by: lizz <lizz@sensetime.com>

* Hope faster

Signed-off-by: lizz <lizz@sensetime.com>

* fix macos

Signed-off-by: lizz <lizz@sensetime.com>
2021-08-18 19:37:18 +08:00
Haodong Duan 93418560d8
[Fix] Do not depend on setuptools>=52 (#1235)
* use packaging instead

* update

* update

* update

* update
2021-08-10 16:17:59 +08:00
Zaida Zhou dfb48c87ae
[Refactor] Refactor the directory of csrc (#1206)
* [Refactor] Refactor the csrc directory

* update MANIFEST.in

* fix hip

* add csrc readme

* trailing whitespace

* fix syntax error in setup.py

* add compatibility docs

* move parrots_cudawarpfunction.cuh to common/cuda

* fix grammar, update directory tree

* fix MANIFEST.in

* Add new structre of csrc in compatibility.md

* Add original structre of csrc in compatibility.md

* fix typo

* remove TODO

* modify according to comment

* format

Co-authored-by: grimoire <yaoqian@sensetime.com>
2021-08-10 15:09:19 +08:00
Y_Xuan 2dc0a219c1
[Feature] Porting mmcv for hip (#1022)
* porting mmcv for hip

* add nvcc

* fix format

* fix format

* fix bug for carafe

* fix test_utils because rocm_torch not allow set torch.backends.cudnn.benchmark to false

* add LOOSEVERSION

* fix format

* fix format of version

* fix code format

* test for yaml

* fix bug for citest

* fix bug for how to get torch._version_ at setup.py
2021-07-09 21:02:10 +08:00
tangyanf 5504b5fbcf
fix compile without cuda (#945) 2021-04-17 12:16:40 +08:00
z55250825 48d9902585
Add new parrots extension implementation for all ops (#794)
* delete all parrots file
add bbox_overlaps new parrots op impl

* support first new impl parrts op (bbox_overlaps)(success test)

* add box_iou_rotated op, test succeed

* add carafe and carafe_naive op, test succeed (one parrots bug need fix)

* add cc_attention op, test success

* add corner_pool op, test success

* add parrots op deform_conv, test success

* add deform_roi_pool op, test success (but has question)

* add focal loss op, test success (gradcheck)

* add masked_conv2d op, test success

* add modulated_deform_conv op, test success

* add nms and nms_rotated op, test success

* add psamask op, test success

* add roi_align op, test_success

* add roi_pool op, test success

* add sync_bn op, test success

* add tin_shift op, test success

* fix test_deform_roi_pool, add parrots test

* skip test_onnx because parrots does not support onnx

* fix c++ lint

* fix python lint

* fix python lint
2021-02-26 19:05:25 +08:00
q.yao 0de9e149c0
[Feature]: Add custom operators support for TensorRT in mmcv (#686)
* start trt plugin prototype

* Add test module, modify roialign convertor

* finish roi_align trt plugin

* fix conflict of RoiAlign and MMCVRoiAlign

* fix for lint

* fix test tensorrt module

* test_tensorrt move import to test func

* add except error type

* add tensorrt to setup.cfg

* code format with yapf

* fix for clang-format

* move tensorrt_utils to mmcv/tensorrt, add comments, better test module

* fix line endings, docformatter

* isort init, remove trailing whitespace

* add except type

* fix setup.py

* put import extension inside trt setup

* change c++ guard, update pytest script, better setup, etc

* sort import with isort

* sort import with isort

* move init of plugin lib to init_plugins.py

* resolve format and add test dependency: tensorrt

* tensorrt should be installed from source not from pypi

* update naming style and input check

* resolve lint error

Co-authored-by: maningsheng <maningsheng@sensetime.com>
2021-01-06 11:05:19 +08:00
q.yao 94810f2297
[Feature]: Add custom operators support for onnxruntime in mmcv (#612)
* add onnx support to roi_align and roi_pool

* add softnms ort support

* fix for lint

* format cpp code with clang-format:google

* add new empty line to the end of head files in onnxruntime

* update to pytorch1.7

* add test of softnms to onnxruntime

* fix for lint

* remote print in ops/info.py

* change import order, fix for flake8

* fix include

* add assert torch>=1.7.0

* [doc]: add document for onnxruntime custom operator

* update onnxruntime version to v1.5.1 for softnms

* remove doc menu

* Resolve lint for markdown

* resolve naming style in onnxruntime_op.md

* Use old cpp apis, optimize test_onnx.py

* Fixing strings in tests/test_ops/test_onnx.py

* code format with yapf

* fix soft_nms parrot

* add import in onnxruntime setup, avoid conflict

* fix doc and add assert

* change cpp guard

Co-authored-by: maningsheng <maningsheng@sensetime.com>
2020-12-23 11:03:55 +08:00
Rui Xu b7136e3953
[Refactor] remove the c implementation of flow_warp (#707)
* remove flow-warp-c

* remove flow warp in setup.py and imports

* fix floor and ceil bug

* fix broadcast bug

* add warnings and assertions

* fix bilinear bug

* pass unit test

* pass unit test

* pass unit test

* pass unit test

* fix value bug

* fix lint

* fix lint

* add mk lint

* update docs

* update docs

* fix bug in imports

* fix bug in setup.py
2020-12-13 19:43:25 +08:00
Kai Chen 03214fd446
Support pytorch 1.7 and update the CI (#631)
* support pytorch 1.7 and update the CI

* fix CI

* fix onnxruntime version in macos
2020-10-31 17:58:15 +08:00
David de la Iglesia Castro c8146cc52b
Skip opencv requirement if it's already installed in the env (i.e. via conda) (#616)
* Skip opencv requirement if it's already installed in the env

* pre-commit

* Check opencv conda version

* Check opencv conda version
2020-10-17 17:58:25 +08:00
Kai Chen 487f381f25
fix docs (#440) 2020-07-21 14:48:16 +08:00
Kai Chen cc70cf8ec3
bump version to 1.0.0 (#402) 2020-07-09 02:57:38 +08:00
Jerry Jiarui XU 192b3b3ceb
use env to control compile op or not (#400)
* use env to control compile op or not

* use str as env var

* update readme

* update rc01

* update readme

Co-authored-by: Kai Chen <chenkaidev@gmail.com>
2020-07-09 02:19:02 +08:00
Wenwei Zhang 18d6372027
Rewrite readme.rst by markdown (#391)
* Rewrite readme.rst by markdown

* Update setup.py

* Update mmcv links

* clean code

* Add logo

* Resolve comments

* clean unnecessary code change
2020-07-08 01:20:27 +08:00
Yuanhao Zhu b18a33833e
fix macOS compile (#386) 2020-07-07 01:00:37 +08:00
Kai Chen 63b7aa31b6
Fix docstring formats (#383)
* update doc formats

* update docstring
2020-07-04 00:55:25 +08:00
zhuyuanhao e43fe0e243
remove cuda args (#372) 2020-06-29 21:14:09 +08:00
zhuyuanhao d9549fba04
fix cpp header error (#371)
* 1. use macro USE_PARROTS control header include
2. add clang-format google style in pre-commit

* use MMCV_ macros
2020-06-29 18:48:50 +08:00
zhuyuanhao c0f5492ee9
add ext ops, support parrots (#310)
* add ext ops, support parrots

* fix lint

* fix lint

* update op from mmdetection

* support non-pytorch env

* fix import bug

* test not import mmcv.op

* rename mmcv.op to mmcv.ops

* fix compile warning

* 1. fix syncbn warning in pytorch 1.5
2. support only cpu compile
3. add point_sample from mmdet

* fix text bug

* update docstrings

* fix line endings

* minor updates

* remove non_local from ops

* bug fix for nonlocal2d

* rename ops_ext to _ext and _ext to _flow_warp_ext

* update the doc

* try clang-format github action

* fix github action

* add ops to api.rst

* fix cpp format

* fix clang format issues

* remove .clang-format

Co-authored-by: Kai Chen <chenkaidev@gmail.com>
2020-06-28 23:15:47 +08:00
Jerry Jiarui XU 5542c24bb1
Fixed package data in pip (#303) 2020-05-30 13:04:37 +08:00
Jerry Jiarui XU fabee855b1
Add requirement parser (#286) 2020-05-15 23:08:12 +08:00
Lei Yang eb93599e1b
Add yapf to install_requires (#285) 2020-05-15 20:25:59 +08:00
Kai Chen 12e5913bb9
Remove supports for python 2.7 and bump version to 0.4.0 (#211)
* remove supports for python 2.7

* fix the unit test for python 3.5

* add python 3.8 in CI

* try ubuntu 18.04 as the environment
2020-03-16 15:15:35 +08:00
Kai Chen 9470ff7035
remove support for python 3.4 (#189) 2020-02-15 15:09:36 +08:00
Kai Chen f4272a8875
remove the outdated PaviLoggerHook and add requirements.txt (#185) 2020-02-12 22:46:12 +08:00
lizz 712651aab6
Adaptive progress bar length (#174)
* Adaptive progress bar length

Signed-off-by: lizz <lizz@sensetime.com>

* it works

Signed-off-by: lizz <lizz@sensetime.com>

* format

* pass test

* :lipstick

* test

* Update test_progressbar.py

* 2.7

* sort import

Signed-off-by: lizz <lizz@sensetime.com>

* try this

Signed-off-by: lizz <lizz@sensetime.com>
2020-02-02 18:18:17 +08:00
Rinat Shigapov aea750051f fix dependencies (#146)
* fix requirements

* don't reuse build dependencies between different envs

* minor fix

* change the order of opencv and opencv-headless
2019-11-21 23:34:26 +08:00
Karlind 95b87687ca install cython automatically as a dependency (#101)
* install cython automatically as a dependency

* install numpy automatically before building

* fix linting errors
2019-07-31 20:29:04 +08:00