Doctoral meeting: 'Thanos vs NUMA: the fight for the optimal mapping'
NUMA systems are an unpopular kind of professional server, but of great importance in nowadays life. Big companies like Netflix or Riot Games invest huge amounts of money in extracting the best possible performance to improve their services.
In contrast with traditional systems, NUMA servers are composed of several nodes and each node comprehends one or more multi-processors with one or more memory slots. Theoretically, that composition should be transparent to the user. Nevertheless, the reality is harder and performance issues might appear if the locality is not taken into account. The challenge resides in exploiting local memory operations rather than remote, but there is a thin line between extracting the most of the system and saturating the memory bus. Given that, threads and memory pages should be placed carefully for optimising performance.
To face the challenge, we are developing a novel user-space migration tool called Thanos. Thanos aims to extract the best possible performance by migrating threads and memory pages across NUMA nodes in a transparent way to the user.
In this doctoral meeting, we will try to introduce the problem in a friendly (full of memes) manner so everyone can understand the challenge, its relevance and how we are facing it.