CPU hogging in the current master

Lubomir I. Ivanov neolit123 at gmail.com
Tue Sep 24 03:04:05 UTC 2013


i've noticed that particular dives in the Qt divelist make the
application non-responsive for n seconds.

test case for a couple of builds - Qt (master) and GTK (binary from
12.may.2013):
- disable all extra profile plot settings
- import all test dives
- select dive #20 (20th test dive...)
- measure render time, roughly

with this old GTK build it takes milliseconds, with Qt it takes >5 seconds.

after some testing i've narrowed down the cause to be in the "backend"...
profile.c: calculate_deco_information()
while(next_stop >= 0) {
...

where 'next_stop' seems to update thousand of times between 3000 and 0
for this dive.

it seems that this portion of code was written by Anton Lundin in
july, so i've CCed him in this email.

git blame profile.c -L 1091,1107
35356e36 (Anton Lundin 2013-07-05 15:19:41 +0200 1091)

could this algorithm be somehow improved?

lubomir
--


More information about the subsurface mailing list