My meeting notes for 2023-03-20

Dmitry Kazakov dimula73 at gmail.com
Wed Mar 22 08:29:48 GMT 2023


On Wed, Mar 22, 2023 at 8:12 AM Sharaf Zaman <shzam at sdf.org> wrote:

>
> So, we just create a map to mark broken preset as “broken” and somehow
> keep them
> in sync with the database (I’ll have to investigate how)?
>

Yes, the original implementation did it in somewhat this way, but there was
an issue that this information is not available on resource loading (other
resources could be unavailable). So Halla refactored that into calculation
on the fly.

Ideally, you need to add one more stage to resource initialization. That
stage would happen **after** all the resources are loaded, then you could
update this flag. And you should somehow rerun this phase every time and
resource is added/removed.





> PS: I’m not very well-versed with the dependent-resource system (probably
> evident from the fact that I removed code in delegate rendering :p).
>
> Dmitry Kazakov <dimula73 at gmail.com> writes:
>
> > Hi, Sharaf!
> >
> > I have just checked the code in VTune. It seems like the line you
> mentioned takes about 10% time while scrolling. Not that it is too much, but
> > still comparable with 15% spent on the thumbnail scaling :)
> >
> > I guess we have two solutions here:
> >
> > 1) Just refactor the dependent-resource fetching/marking and don’t do
> the checks in the delegate. That would remove the whole metadata
> > fetching line from the delegate.
> > 2) Make sure that KoResource::metadata() is always synchronized with the
> database. I guess it should be somewhat synchronized, though I’m
> > not very sure :)
> >
> > On Mon, Mar 20, 2023 at 1:08 PM Dmitry Kazakov <dimula73 at gmail.com>
> wrote:
> >
> >  HI, Sharaf!
> >
> >  Do you mean that you see this metadata line in the profiler when
> rendering/scrolling the preset chooser?
> >
> >  I can profile this testcase under VTune and share results if needed.
> >
> >  On Mon, Mar 20, 2023 at 12:43 PM Sharaf Zaman <shzam at sdf.org> wrote:
> >
> >  Hello!
> >
> >  I hope everybody had a good weekend and has been having a good Monday :)
> >
> >  To give an update on what I did last week: Firstly I merged most of my
> standing
> >  merge requests, I merged my MR to improve rendering of Brush Presets,
> although I
> >  had to make some modifications because they were breaking broken
> presets. So, it
> >  is next in line for some optimizations.
> >
> >  I merged my MR for easier switching of resource locations and I fixed a
> bug with
> >  cursor icon being stuck as a “hand” (bug 456183).
> >
> >  And finally I looked into caching prepared SQL statements that we use.
> I first
> >  asked about it on phabricator (<
> https://phabricator.kde.org/T15245#288770>) and
> >  was told nobody has looked into it before. I had noticed that
> QSqlQuery::prepare
> >  being shown high up in the profiler, so I thought it might be a good
> idea to
> >  optimize this away, but before I do a big search and replace, I want to
> make
> >  sure with something more localized to see if it actually can improve
> performance
> >  in Krita or not.
> >
> >  Kind Regards,
> >  Sharaf Zaman
> >  <https://www.sh-zam.com>
> >
> >  –
> >  Dmitry Kazakov
>


-- 
Dmitry Kazakov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kimageshop/attachments/20230322/791f0e4a/attachment.htm>


More information about the kimageshop mailing list