Processchemaläggare för mångkärniga processorer – Fördelning av minnesbelastning i NUMA-system
Abstract
For systems with multicore processors contention for shared resources is a problem that occurs when several memory-intensive processes are executed in parallel within the same memory domain. This contention has a direct influence on the performance of the system and is a complex problem that has been recognized for a long time. An attractive and actively studied way to minimize this problem is by using a process scheduler adapted to allocate processor cores in a way such that contention for shared resources is minimized.
With the introduction of multicore NUMA-systems (Non-Uniform Memory Access) the situation has become even more complex. In these systems the access time for processor cores to different memory domains vary depending on factors such as distance and load. Thus, the process scheduler also has to consider where the memory of each process is placed to minimize the distance and balance the load on each memory domain.
This report presents a user-level process scheduler for a NUMA-system based on the multicore processor Tilera TILEPro64. The scheduler considers the load on each memory domain to guide the allocation of processor cores. The purpose is to spread the executing processes and thereby minimize memory access time.
The results show that the scheduler achieves a small performance gain regarding execution time for several workloads. On the basis of these results the report discusses properties of the system and potential limitations in both the development environment and our implementation.
Degree
Student essay
Collections
View/ Open
Date
2014-10-03Author
Edholm, Daniel
Löfgren, Anders
Nilsson, Viktor
Language
swe