SystemTopology

Erik Schnetter <schnetter@gmail.com>

April 26 2015

Abstract

1 Introduction

2 Physical System

3 Numerical Implementation

4 Using This Thorn

4.1 Obtaining This Thorn

4.2 Basic Usage

4.3 Special Behaviour

4.4 Interaction With Other Thorns

4.5 Examples

4.6 Support and Feedback

5 History

5.1 Thorn Source Code

5.2 Thorn Documentation

5.3 Acknowledgements

References

6 Parameters




set_thread_bindings
Scope: private KEYWORD



Description: Set thread bindings (aka thread-CPU affinity)



Range Default: auto
yes
set bindings
no
no not modify bindings
auto
depends on system architecture






thread_layout
Scope: private KEYWORD



Description: How to lay out threads over cores



Range Default: dense
dense
Pack threads on as few NUMA nodes/cores as possible
loose
Spread threads over all NUMA nodes/cores



7 Interfaces

General

Implements:

systemtopology

Provides:

GetNumSMTThreads to

GetMaxSMTThreads to

GetCacheInfo1 to

GetMPIProcessInfo to

8 Schedule

This section lists all the variables which are assigned storage by thorn CactusUtils/SystemTopology. Storage can either last for the duration of the run (Always means that if this thorn is activated storage will be assigned, Conditional means that if this thorn is activated storage will be assigned for the duration of the run if some condition is met), or can be turned on for the duration of a schedule function.

Storage

NONE

Scheduled Functions

CCTK_STARTUP

  st_system_topology

  output and/or modify system topology and hardware locality

 

  After: hwloc_startup
  Before: driver_startup
  Language: c
  Type: function