ScaleWay review?

If you doubled or tripled(!) single-core CPU performance, you’d be reducing the page generation component of site load time by about the inverse ratio (double CPU → half the time; triple CPU speed → third of the time). Note that’s only one component of site load time – there’s still the client-side JS rendering and network latency, which is completely outside your control, as well as database request processing time, which is within your control, but is dominated by the speed of your disks, and the size and speed of your RAM, rather than the CPU clock speed.

You will also be able to serve twice (or three times as many) requests as you would otherwise, because the CPU is completing requests that much faster, so it can move onto the next request quicker.

Increasing either of these will increase the capacity of the machine to serve concurrent requests, if that is the current limiting factor. Each concurrent request takes up a CPU core (while the request is being processed), so if you want to process more requests simultaneously, you need more cores. Note, however, that with all CPUs produced these days, more cores on a single die equates to a lower per-core speed, so it’s a tradeoff. We (CDCK) run more machines, each with fewer (faster) cores, for maximum performance, but it does mean there’s more machines to power and manage.

Increasing RAM is needed once you’re running a certain number of unicorn worker processes, because each unicorn is only processing one request at a time, and each unicorn also consumes a certain amount of RAM (200-300MB, typically). So, if you had 16 cores but only 1GB of RAM (say), you could really only run 1-2 unicorns (RAM is also needed for the system, DB, etc) and all those extra cores would go to waste. Similarly, if you had 2 cores but 32GB of RAM (say), you could run 50 unicorns, but they’d all be arguing over the two available CPU cores and you’d be wasting most of that RAM. You need to balance CPU cores and RAM to get the most out of your system. There’s no hard-and-fast rules about that, though, because so much depends on what else the box is doing, the request rate and pattern of your visitors, and so many, many other things. It’s why I get the big bucks. :grinning:

9 Likes