Megvii-BaseDetection / Megvii-BaseDetection/BorderDet

How to solve the error "cuda runtime error (98) : invalid device function" when run the borderDet?

Open
#53 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
429
Forks
62
PR merge metrics
No merged PRs in 30d

Description

I first install cvpods and success to train retinaNet.
However, I face the error in border_align when I train borderDet.
Now I don't know how to fix it.

发生异常: RuntimeError
cuda runtime error (98) : invalid device function at /home//weizhiwei/work/cvpods/cvpods/layers/csrc/border_align/border_align_kernel.cu:202
File "/home/weizhiwei/work/cvpods/cvpods/layers/border_align.py", line 15, in forward
output = _C.border_align_forward(input, boxes, wh, pool_size)
File "/home/weizhiwei/work/cvpods/cvpods/layers/border_align.py", line 42, in forward
output = border_align(feature, boxes, wh, self.pool_size)
File "/home/weizhiwei/work/cvpods/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 809, in forward
ltrb_conv = self.border_align(feature, boxes)
File "/home/weizhiwei/work/cvpods/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 734, in forward
border_cls_conv = self.border_cls_subnet(cls_subnet, align_boxes, wh)
File "/home/weizhiwei/work/cvpods/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/borderdet.py", line 147, in forward
) = self.head(features, shifts)
File "/home/weizhiwei/work/cvpods/cvpods/engine/base_runner.py", line 185, in run_step
loss_dict = self.model(data)
File "/home/weizhiwei/work/cvpods/cvpods/engine/base_runner.py", line 84, in train
self.run_step()
File "/home/weizhiwei/work/cvpods/cvpods/engine/runner.py", line 271, in train
super().train(self.start_iter, self.start_epoch, self.max_iter)
File "/home/weizhiwei/work/cvpods/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/train_net.py", line 96, in main
runner.train()
File "/home/weizhiwei/work/cvpods/cvpods/engine/launch.py", line 56, in launch
main_func(*args)
File "/home/weizhiwei/work/cvpods/BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x/train_net.py", line 110, in
args=(args,),

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the BorderDet training run and inspect the failing call in cvpods/layers/border_align.py. Then read cvpods/layers/csrc/border_align/border_align_kernel.cu around line 202 and the BorderDet training entry point mentioned in the traceback. Done means identifying the environment or build condition causing the invalid device function and documenting a verified resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
computer-vision, machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.