The growing complexity in computer system hierarchies due to the increase in the number of cores per processor, levels of cache (some of them shared) and the number of processors per node, as well as the high-speed interconnects, demands the use of new optimization techniques and libraries that take advantage of their features.

Servet is a portable suite of benchmarks to obtain the most interesting hardware parameters to support the automatic optimization of applications on multicore clusters. These benchmarks determine:

  • Number of levels of cache and their sizes
  • Cache topology of shared caches
  • Memory access bottlenecks
  • Communications layers and overheads

Furthermore Servet includes an API (with C syntax) to access the estimated data from programs or applications and algorithms to find the most appropriate mapping policy according to the estimated data.