RAM USAGE scary

So i just downloaded memileo and LM comics brush and the brush broke krita in my high specs laptop.

Everytime i want to click one of the brushes in LM comics, krita keeps loading, stops working and then crash. While memileo brush, krita keeps loading and finally i am able to use without lag BUT when i check the ram consumption is 8GB. While my photoshop usage is 2-4GB.
Crazy i cant use an app that use 8Gb of ram lol.

My laptop specs, acer predator helios neo, i9 13th gen, 16gb ram, rtx4060 8gb. And i though my laptop can handle good.

PS: Its so weird, previously i check krita only take max 1gb ish ram usage. Just when i tried to install additional brushes (lm brushes and memelio) and theme creator plugin suddenly ram usage crazy, now only open krita without any tab already 6gb ram. Anyone knows why?

Sounds like either the resources bundle or the plug-in is at fault. When people create enormous brush textures or poorly coded plug-ins, there’s not much Krita can do about it. One thing that’s an actual downside of Krita is that it loads all resources at the start (to have them always ready later) and this can make Krita use a lot of memory when normally only huge projects files become an issue.

ok so i tested, its the brushes that make the ram usage go crazy. without the lm comics brushes and the memelio brushes, first open krita its 900mb ram.

When i install only lm comics:
opening krita needs 5gb ram,
using lm comics brush, keeps loading so long and then spikes to 8gb ram.

when i install only memelio brushes:
opening krita 2.3gbram
using memelio brushes, keeps loading just one time and no lagging after picking other brushes, 5.5gb ram.

then i tested removing more brushes, and it gets lighter ram.

this is quite heavy brushes… i cant hoarding brushes now hahaha… can it be optimize? now im confuse what to delete. i love the brushes, but i cant use 8gb ram lol

Hi

There’s a warning provided by @Lilly_Mist

Here, you can read a talk we had about this brush pack

In synthesis, in the brush pack there’s a lot of animated high-quality brushes.
Once loaded by Krita, theses brushes are probably stored uncompressed in memory.

Looking for example brush “LMcb Trees mixed” which refers to “Trees4”, brush size in memory is 124MB (21 frames of 1238x1251 pixels)
So for 20 brushes like this, it already took ~2.4GB RAM

The thing now, I’m not sure Krita load all brushes in memory unless brush is used: normally no, but i’m not an expert about internal Krita’s code.

May be, can also depend of plugins.

Concerning plugins, they use Krita’s API.
So a plugin can’t be considered as “poorly” designed just by using API.

On my side, I’ve already opened a bug about API related to resources:
https://bugs.kde.org/show_bug.cgi?id=473311

Except to not use API (possible but not recommended), plugin that need to access to resources can be a source of slowness and memory consumption…

Grum999

Do you have to delete them? Can’t you Deactivate them in Settings → Manage Resource Libraries to get reduced RAM use?

yep, and memilio brushes too, so heavy but so good mimics paint brushes… well for now i just deactivated it when i dont use and activate it when i do use. just want to ask to devs if this can be somewhat optimised in the future or not… i mean is all art apps also like this or only in krita? (the more you add brushes, the more ram consumption thing)

That answers my question.

haha… well, i saw your comment later and i already did deactivate my brush…

1 Like

What you can do is to split bundles, recreate your own.

  • A bundle with all brushes you use frequently
  • One or more bundles with great brushes you don’t use frequently and that use a lot of memory; then activate them only when needed

May be yes, may be no.

The thing here, Krita’s brushes are PNG files with embedded metadata for brush definition.
So the PNG file itself is used to represent the icon you have for the brush.
Even if you don’t use the brush, the icon (then PNG file) is loaded in memory.
And I’m wondering if libpng is not loading metadata in memory too (brush definition) even if not used.

Need to be tested & checked…

Grum999

yep, i deleted some brushes that i dont like but it does takes time since i have to try the brush which one i dont like, tag the brush to delete tag, go to manage resources to delete the brush. its such a tiring way to delete since i cant delete immediately in the brush preset.

also i will organise things by selecting all different brush folders and create my own folders and export it for keepsake BUT krita does make it a chore since i cant drop and drag in brush preset and export it. :frowning:

since i can deactivated it, i do feel better, and only curious if other art app also does this like the add more brushes add ram. i cant try with medibang and ibis paint cause their brushes are too simple so wont effect much. i havent try with photoshop though.

For all what I know, you’ll find only few of such huge ABR’s for PS, but there are such, you just have to discover them.

Michelist

yea i have lots of abr and kyle’s brushes but i havent tested the ram in photoshop, maybe later.

Concerning memory usage of brushes, there is a new optimization for that in the Nightly builds, which will also be in 5.2.3: Fix slowdowns when loading a bundle with heavy GBR brushes (!2112) · Merge requests · Graphics / Krita · GitLab

4 Likes

that’s great news.

one thing, i tried to create new brush bundles, i already tried twice but i always missing some brushes. i already tried to restart krita but still brushes are missing.