gpu::FarnebackOpticalFlow and gpu::PyrLKOpticalFlow won't validate GPU resources (Bug #1759)


Added by Manlio Barajas almost 13 years ago. Updated almost 13 years ago.


Status:Done Start date:2012-04-04
Priority:Normal Due date:
Assignee:Alexey Spizhevoy % Done:

0%

Category:gpu (cuda)
Target version:2.4.0
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

In my setup, I have a GTX 280M GPU (112 CUDA cores, 1Gb of memory). When I try to run gpu::FarnebackOpticalFlow or gpu::PyrLKOpticalFlow on 720x480 images and default of recommended parameters, I get:

For FarnebackOpticalFlow

/modules/gpu/src/cuda/optical_flow_farneback.cu:429: error: (-217) too many resources requested for launch in function boxFilter5Gpu

And for PyrLKOpticalFlow

/modules/gpu/src/cuda/pyrlk.cu:516: error: (-217) too many resources requested for launch in function lkSparse_caller

As a reference, I may comment that gpu::GoodFeaturesToTrackDetector_GPU and gpu::BroxOpticalFlow work well.


Associated revisions

Revision 6a9f9342
Added by Alexey Spizhevoy almost 13 years ago

Fixed bug #1759

Revision 800d53f7
Added by Roman Donchenko over 11 years ago

Merge pull request #1759 from ilya-lavrenov:ocl_distanceToCenters

History

Updated by Marina Kolpakova almost 13 years ago

Could you provide values of other used parameters or simple code example for bug reproduction?

Updated by Anatoly Baksheev almost 13 years ago

Thank you the report. It seems it is related to old GPU architectures (sm_11) which have less registers on chip.

Adding my guys to solve this.

Updated by Manlio Barajas almost 13 years ago

Marina Kolpakova wrote:

Could you provide values of other used parameters or simple code example for bug reproduction?

Sure.

For FarnebackOpticalFlow, I tried this:

        gpu::GpuMat gPrv(prv);
        gpu::GpuMat gNxt(nxt);
        gpu::GpuMat gFlwX;
        gpu::GpuMat gFlwY;
        gpu::FarnebackOpticalFlow farnebackOpticalFlow;
        farnebackOpticalFlow(gPrv, gNxt, gFlwX, gFlwY);

For PyrLKOpticalFlow, this is my code:

        gpu::GpuMat gPrv(prv);
        gpu::GpuMat gNxt(nxt);
        gpu::GpuMat gFeatures;
        gpu::GoodFeaturesToTrackDetector_GPU cornerDetector = gpu::GoodFeaturesToTrackDetector_GPU(20, 0.1, 7);
        cornerDetector(gPrv, gFeatures);

        gpu::GpuMat gFlow;
        gpu::GpuMat gStatus;
        gpu::PyrLKOpticalFlow lkTracker;
        lkTracker.sparse(gPrv, gNxt, gFeatures, gFlow, gStatus);

Note that setting number of features lower than default (1000) didn't help.

My images are 720x480 color images (prv and nxt) and GPU GTX 260m (not 280m). I run Ubuntu 10.04 amd64.

Thanks.

Updated by Alexey Spizhevoy almost 13 years ago

  • Assignee changed from Anatoly Baksheev to Alexey Spizhevoy

Updated by Alexey Spizhevoy almost 13 years ago

Fixed in rev. 8259

  • Status changed from Open to Done

Also available in: Atom PDF