Is there a limit on how many bundles on Android? 🤔

@sh-zam is there a limit on how many bundles that can be imported on Android? The last bundle I imported caused Krita to be sluggish when starting up (loading the brushes and when scrolling through the brushes docker.) I’m getting concerned and I’m wondering if I should disable a few bundles.

This is not an Android-specific problem, and the limit is the hardware. If I import a lot of resources under Windows, or in my Linux VM, then I can also “bring these systems to their knees”. But from the feeling, I would say that patterns and brush tips, in appropriate numbers, have the “biggest effect”. Whereas since Krita 5 now also the presets can contain brush tips.
In my VM, I was able to map the connection very well. The more processor cores and RAM I assign to the VM, the smoother Krita runs.
And by adding resources to Krita, you slow down the VM again.

Michelist

1 Like

This problem isn’t specific to Android (it’s a general Krita one) and since I have waaayy too many bundles in my desktop, Krita takes almost 5-7 minutes to start up. For the technical aspect of it, I think @Michelist did a good job on covering that, Cheers Michelist!

@AhabGreybeard once said that bundles take a toll on Krita when starting up (resources in more general). Do you have any .abr brushes? (PhotoShop Brushes). They are really huge in size and I had to disable all of them (I only had 5 of them and that helped a ton) to come to a reasonable timing to load. Can’t say same for the .gbr brushes since they’re small. What you can also do is check whether you have double installed a bundle :slight_smile:

1 Like

I also have many bundles what i do is make smaller versions of the bundles with just the things i want to use as most times i don’t use all the brushes in it. It’s not the best option but if you have too many bundles this helps a bit

Well, we actually don’t load the resources on startup anymore, so that shouldn’t make a difference. What made a difference was the query we used to provide the thumbnails in the choosers. This query included the thumbnail, and that made sqlite take a lot of time if there were a lot of bundles – because the query also includes the inactive bundles. In 5.1.0-beta1, we optimized that away, so please try that version: no matter the number of bundles, memory usage shouldn’t be a problem, and the performance of the resource selectors should be fine.

2 Likes

As a database layman, I suspect that Krita must “touch” each resource at least once at startup to compare it with the DB, and with large “collections” this can slow down the startup process noticeably. In an “extreme test” I came alone on a DB size of 2.5 GB, and then not only the first start with that DB takes quite a few minutes. Even with my 2 XEON’s with 12/HT24 cores and 96 GB RAM (that’s not a typo).

Michelist

1 Like

Thanks all. It seems to settle after starting at first. I guess I’ll wait until 5.1 comes to the Playstore. :slightly_smiling_face:

1 Like

We only read the resource when it’s encountered for the first time. After that, only when the timestamp has changed.

Thanks for the explanation, I’m at war with databases and I don’t know anything about programming beyond Commodore Basic and a little MOS 6510 assembler.
I think I need a SYS 64738 for today.
:wink:

Michelist