Summary: | gradient are really slow to calculate | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | CyrilJedor <cyril.jedor> |
Component: | Tools | Assignee: | Krita Bugs <krita-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | halla |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Other | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | callgrind output |
Description
CyrilJedor
2012-05-18 23:40:31 UTC
Created attachment 71375 [details]
callgrind output
The attached callgrind output shows that we're spending way too much time in creating KoColor id's and comparing colorspace names. It should be quite possible to optimize this.
Git commit 46e5b5534636024f7fb9fd9ddb40f740a78033ae by Boudewijn Rempt. Committed on 26/05/2012 at 09:24. Pushed by rempt into branch 'master'. Make converting pixels much faster The check for id() is really expensive (see valgrind log attached to bug 300285), so short-circuit that in the common case where it's not necessary. M +8 -2 libs/pigment/KoColorSpaceAbstract.h http://commits.kde.org/calligra/46e5b5534636024f7fb9fd9ddb40f740a78033ae Git commit f967662e9b54ee865bb10eb9a1c02757da3c680e by Boudewijn Rempt. Committed on 26/05/2012 at 09:49. Pushed by rempt into branch 'master'. KoID: Don't copy klocalized string We use KoID as if it were an implicitly shared data class, and that was mostly true as long as it only contained two QStrings. But copying the KLocalizedString invalidates that assumption: copying that is very expensive. See the trace with bug 300285. M +13 -0 interfaces/KoID.h http://commits.kde.org/calligra/f967662e9b54ee865bb10eb9a1c02757da3c680e I think it's pretty ok now :-) I'll make a new windows build today. |