I’ll be upgrading my computer between now and Q2 of the next year and would like to build something that’ll also make Krita happy.
I dream of working on 6000 px documents without experiencing lag. Sometimes I work on posters of up to 12000 px and it’d be nice to not lag badly on them either, but I can live with it.
I often work at smaller 1000 px to 2000 px for 60% of the painting, which doesn’t lag badly, then resize and finish at the final resolution, and that’s when the trouble starts. I’ve been spending a lot of time staring at my computer waiting it to update the canvas and just do things.
The features I use most are blending modes; transparency, filter, and transform masks; and alpha inherit in several group layers. At some points I’ll have around 100 layers counting groups, but I keep them under 50 most of the time. I also use G’MIC filters but it’s only once or twice per artwork so their performance doesn’t matter.
I currently have 24GB of DDR3 RAM. Krita tends to lag before going yellow or consuming all of it, so I’m not sure if the RAM is just slow, if it’s the CPU speed (Krita doesn’t take much % of it) or whatever else is impacting performance. I’m not entirely sure this is a problem that can be solved by throwing more hardware at it.
Krita’s cache is already on a NVMe SSD, sometimes I run out of space but a roomier one is the first thing I’ll be adding.
What components should I focus on? If you were to build a PC specifically for Krita what would you get?
As I understand it, for a CPU then it’s the single thread performance that mattters.
Multi thread (or multi core) performance only has an effect when rendering animations.
For those, you can compare CPU performance here: https://www.cpubenchmark.net/
The search facility at the top right of the webpage lets you enter a CPU part number (e.g. i7 10700K, whatever) to get the performance chart for it then you can search again to compare it with your current CPU.
The GPU isn’t all that important at the moment except for doing canvas zoom and rotation and any modern CPU has a built-in GPU that’s more than good enough for use with krita.
So is any modern graphics card that you might buy.
For RAM, faster is better as might be expected.
If you’re chasing extreme levels of performance then the exact type of RAM and its organisation and number of modules is important, especially with DDR5 RAM.
However, any modern fast DDR4 RAM will be good.
Note: Modern AMD processors are DDR5 only and Intel will be heading that way too.
Faster and more powerful should make it better for a larger and more complex document, in theory. I never make those images though and I don’t know enough about that detailed internal operation of krita.
There may be a cutoff point where there is no point going ‘better’ to benefit krita. I don’t know where that cutoff point might be.
However, this computer is the sort of thing that should last you many years and you may develop additional interests such as Blender rendering and video editing.
A 12000x12000 RGBA32 image will require ~0.5GB. If your GPU only has 8GB, then you would clock out at 16 layers. If we account for PCIe speeds, PCIe 3.0 can handle up 8GB/s which translates to 16FPS when updating the entire image.
Krita doesn’t do image/brush processing on the GPU so basically any will do. Anything related to Painting and what typically causes lag in Krita is mostly done by the CPU, image data is stored in normal memory.
Sure, most processing isn’t done on the GPU but the outputs of that processing need to be copied to the GPU to update the view. I’m pretty sure layer blending and canvas navigation are done on the GPU too. I feel like GPU is worth considering if you already have a good CPU.
That’s very good information! I knew Krita didn’t require much from the GPU for brush processing but wasn’t aware the VRAM would have this much influence on the canvas size.
I wasn’t tracking VRAM for Krita, but it might be a bottleneck I’m experiencing. I have pretty good performance at smaller sizes but see a steep erosion in performance at larger sizes.
I already make extensive use of Blender and other 3D software.
Getting a decent GPU with plenty RAM so I stop running out at complex scenes is already in my plans, I wasn’t sure what I should look for in terms of RAM and CPU for Krita. Now I know something with fewer threads but better clocks is preferable (and it’s also better for Blender). I’ve always had very good experience with Intel but I’m now even eyeing some Ryzens.
Edit: Tracking usage more closely shows CPU clock spikes when lags feel worse, so I’ll definitively look into getting a nicer one.
It doesn’t. I can navigate a very large canvas on my old laptop with sub par GPU just fine. Hardware acceleration is really pretty much only used to make zooming and rotation better.
However since you want to use blender, that one will actually require a powerful graphics card.
Layer blending (or compositing) is not done on the GPU, only navigation and displaying the canvas.
There’s a lot of multithreading in Krita, especially on the pixel brush engine, but also in many filters and compositing. We also use SIMD instructions (via XSIMD library) a lot, I just asked the other devs, and good AVX2 instruction support will help a lot (This too is primarily in the compositing, but compositing is used wherever transparency is used, like brushes, so that’s quite a bit of Krita’s processes).
Just waiting for a software stack that actually works on all platforms…unless the industry suddenly decides to pick us as prestige project and throw millions in cash and devolpers at Krita to implement the same thing many times…(how many times was Cycles reimplemented? OpenCL, Cuda, OptiX, HIP, oneAPI, Metal…)
This gets asked so often that we collectively grew tired of explaining why it’s not a thing and not happening in the foreseeable future. You can use the forum search to find mny of the topics.
General specs for any 2D art program is pretty basic, outside of the studios using networked work stations.
High single core performance, 32GB high speed Ram, decent but not necessarily top end GPU will serve you well. Processor and RAM performance will make the most difference, don’t skimp on speeds. Number of cores won’t matter as much, a 6 core is plenty.
At 32 GB RAM, you’re going to be fine for even larger projects, anything over 64GB you’re going to most likely run into the software’s limits before you run out of RAM. So it’s diminished returns for the money after 64Gb.
3D rendering, video editing,and animation is where the gaming computer specs start to shine. High end matched GPU, etc. Not necessary for still images.
As for Krita itself, it will even run fine on my old Surface 4 with abysmal specs, with only minor slowdowns here and there. But I don’t use large brushes, projects, etc. on it.
Hi Celes, you’re saying you’re on DDR3, then your system must be pretty old. If you upgrade to a DDR5 platform, a nice NVME SSD, and a strong processor, you should be very happy. For a productivity system, I would not skimp on either cores or RAM, just go with something that may feel like an overkill. The truth is once you upgrade the system you typically stay on it for 5 years if not longer, so it’s good to go close to a high-end. Of course it’s a heap of money so…
My current system is Ryzen 5950X and upgrading to 9950X and DDR5 would already be a huge win. I still didn’t because I’m feeling a bit lazy and… the cost
I have 64 GB RAM and it is kind of overkill, until it isn’t. Blender/Krita can consume a lot of memory, it all depends on the document you are working on. In my case I also do programming, run WSL2, it all can use a lot of RAM. More CPU cores is good too, it’s not just Krita, you may be running OBS, browser, Discord, etc.
Bottom line, I would go for a 16c/32t CPU and 64 GB RAM (2 modules, not 4) unless you really don’t want to spend that much cash.