-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
accelerating OF execution #101
Comments
Hi @jpiesing, what is the maximum acceptable time required to execute the OF? I normally run OF on native windows and run all 6 berlin test overnight at the same time which normally finishes within couple of hours and next morning they all completed. Is this considered to be too long? One OF process is single threaded. So it only uses one CPU. |
@louaybassbouss Did I hear you mention 40 hours yesterday? What was that for? |
40 hours is really really long to me. @louaybassbouss you can run all 6 process same time, did you run one after the other or all at the same time? |
@jpiesing OF time is on our side within docker around 13x times the recording time. For berlin plugfest recordings is around 4-5 hours. But we ran a full set of tests in our lab. Recording time is around 3h, OF time is around 40h. The factor of OF time vs Recording time better metric we can use to measure the performance. |
Thanks @louaybassbouss I do think 40+ hour for 3 hour recording is too long. To help me to understand the issue correctly can you kindly let me have your PC spec number of CPU and MEM please? Also which OS you running this on and either it is docker within virtual box or native Linux system? And any other process / docker is running at the same time please? |
IMHO it's important to continue being able to run all validated tests overnight. We currently have 26 validated tests which are a mixture of 30s and 1 minute. Suppose 20 are 30s and 6 are 1 minute (I've not checked, that's just a guess). That would be 16 minutes plus the gaps between tests in the recording so if that gap is 30s (say) then that's a further 13 minutes for a total of 29 minutes so let's work with a round 30 minutes. Fraunhofer are quoting 13 times the recording time so 13 times 30 minutes fits in overnight. Good. How would the 30 minutes increase when;
Thirteen times the recording doesn't scale. |
Independent of GPU acceleration, I found the following two threads seaching for python, opentv, multiple cores. Just a thought, would it be reasonably practical to modify the OF to divide a recording into N pieces, process each one separately and then join up the results? Would that be easier / safer / less work than a GPU? |
We use a powerfull server with following spec:
If we run multiple OF sessions, we still get same factor 13x (we tested with 5 OF sessions in parallel). |
My ancient desktop PC running overnight took the following to process the Philips TV recording from the Berlin plugfest - as measured using the 'time' feature built into the shell. real 496m26,285s mediainfo reports that recording as 33 min, 37s = 2017 seconds. 39040/2017=19.3 This was running the OF outside docker. |
Here's the results from running the Philips TV recording from the Berlin plugfest on my work laptop. Also as measured using the 'time' feature built into the shell. real 161m37.586s It's the same file as the desktop PC in the previous comment, 33min, 37s = 2017 seconds. 186m32.423s = 11192.423s. 11192/2017 = 5.55. The processor is an Intel Core i7-1365U - https://www.techpowerup.com/cpu-specs/core-i7-1365u.c3070 The results of 'lscpu' are as follows. Architecture: x86_64 |
@nicholas-fr reports running the OF on the Philips TV recording from the Berlin plugfest on his work laptop takes : 3h36m18.479s = 12978s |
The time taken to run the OF seems to be a growing barrier.
Are there any opportunities to accelerate it?
Is the QR code detection running on the main CPU? Does it exploit a GPU at all?
If it's running on the main CPU, is it limited to one core or does it use more than one?
In 10 minutes with Google, I found this reference to a (partially) GPU accelerated version of OpenCV - https://opencv.org/platforms/cuda/. Have you looked at this previously?
The text was updated successfully, but these errors were encountered: