Skip to content

Traincascade tool: reported training time invalid on multicore systems #6502

@StevenPuttemans

Description

@StevenPuttemans

Please state the information for your system

  • OpenCV version: 3.x --> current master branch
  • Host OS: Linux (Ubuntu 14.04)

In which part of the OpenCV library you got the issue?

OpenCV's embedded train_cascade tool for building cascade classifiers using the AdaBoost process

Expected behaviour

When running the tool, the output generate should specify how long the training of each stage took, by outputting the following line after each finished stage:

Training until now has taken 0 days 0 hours 14 minutes 34 seconds.

Actual behaviour

Due to the fact that part of the training can be done using multiple cores, when using larger core systems (in my case 24 cores), the difference between the actual processing time and the user time (reported using the embedded linux time tool), differs from the reported time.

real 11m46.084s
user 14m18.198s
sys 0m18.812s

The difference gets bigger if more data is used and if processing takes longer, in the line of hours and days.

I will look into a possible solution, so that the real time is returned instead of the user time generated by counting the clock ticks (which takes into account all the cores available and used).

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions