Loading...
 

(Multicore) Operating Systems Group

Work Plans

1.1. A Uniform OS interface for Hardware Performance Counters

Level: B.Sc or M.Sc

Objective: HPCs offer support to counting or sampling several micro-architectural events, such as cache misses and instructions counting, in real-time. However, they are difficult to use due to the limited hardware resources (for example Intel Nehalem supports event counting with seven event counters and AMD Opteron provides four HPC to measure hardware events) and complex interface (e.g. low-level and specific to micro-architecture implementation). The objective of this work is to design and implement a uniform OS interface for HPCs using the concept of hardware mediators and software components.

Activities:

  • Study the HPCs support in several architectures;
  • Study EPOS hardware mediators and software components structure;
  • Design and implement a uniform HPCs interface and an OS component;
  • Test and validation of the implementation;
  • Write a report or a paper;

1.2. Shared cache memory partitioning

Level: B.Sc or M.Sc

Objective: shared cache memory partitioning is used to provide more predictability for a real-time application running on multicore processors. Each partition is assigned to a thread (intra-application partitioning) or application (inter-application partitioning) and avoid the overlapping of cache space, thus increasing the system's performance. The objective of this work package is to design and implement a shared cache memory partitioning (static or dynamic) in a current multicore processor using EPOS.

Activities:

  • Study the virtual memory system of a IA32 processor;
  • Study the EPOS MMU mediator;
  • Design and implement a shared cache partitioning mechanism;
  • Tests and validation;
  • Write a report or a paper;

1.3. Bechmarks for Multicore Architectures

Level: B.Sc or M.Sc

Objective: Benchmarks composed by several different applications are used in order to evaluate the performance of multi-core architectures. Usually, these benchmarks implement applications to stress the processors in terms of memory and bus communication and processing. This work aims at studying some open-source benchmark applications and port their applications that have intensive data sharing to the EPOS operating system.

Activities:

  • Search and study open-source benchmark for multi-core architectures;
  • Choose a set of applications from these benchmarks that fits the objective;
  • Port these applications to EPOS;
  • Test and evaluate the applications;
  • Write a report or paper;