---
name: "switchtest"
section: "1"
platform: "linux"
package: "xenomai-runtime"
version: "2.6.3-2"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/switchtest"
---

# switchtest(1)

Xenomai context switch test

## NAME

switchtest - Xenomai context switch test

## SYNOPSIS

**switchtest** \[options\] threadspec threadspec...

## DESCRIPTION

**switchtest** is part of Xenomai. It can be used to test thread context switches. **switchtest** creates threads of various types and attempts to switch context between these threads, printing the count of context switches every second. A suitable Xenomai enabled kernel with the respective module (xeno\_posix) must be installed.

## OPTIONS

Each threadspec specifies the characteristics of a thread to be created:

threadspec = (rtk\|rtup\|rtus\|rtuo)(\_fp\|\_ufpp\|\_ufps)\*\[0-9\]\*

**rtk**

for a kernel-space real-time thread

**rtup**

for a user-space real-time thread running in primary mode

**rtus**

for a user-space real-time thread running in secondary mode

**rtuo**

for a user-space real-time thread oscillating between primary and secondary mode

**\_fp**

means that the created thread will have the XNFPU bit armed (only valid for rtk)

**\_ufpp**

means that the created thread will use the FPU when in primary mode\\n(invalid for rtus)

**\_ufps**

means that the created thread will use the FPU when in secondary mode (invalid for rtk and rtup)

**\[0-9\]**

specifies the ID of the CPU where the created thread will run, 0 if unspecified

Passing no **threadspec** is equivalent to running:

switchtest rtkN rtkN rtk\_fpN rtk\_fpN rtk\_fp\_ufppN rtk\_fp\_ufppN rtupN rtupN rtup\_ufppN rtup\_ufppN rtusN rtusN rtus\_ufpsN rtus\_ufpsN rtuoN rtuoN rtuo\_ufppN rtuo\_ufppN rtuo\_ufpsN rtuo\_ufpsN rtuo\_ufpp\_ufpsN rtuo\_ufpp\_ufpsN

with N=1,...,nr\_cpus, i.e. occurrences of all the arguments for each CPU

Passing only the --nofpu or -n argument is equivalent to running:

switchtest rtkN rtkN rtupN rtupN rtusN rtusN rtuoN rtuoN

similar to the above.

**switchtest** accepts the following options:

- **--help, -h**

  print usage information and exit

- **--lines \<lines\>, -l \<lines\>**

  print headers every \<lines\> lines

- **--quiet or -q**

  prevent this program from printing every second the count of ncontext switches

- **--timeout \<duration\>, -T \<duration\>**

  limit the test duration to \<duration\> seconds

- **--nofpu, -n**

  disables any use of FPU instructions

## AUTHOR

**switchtest** was written by Philippe Gerum and Gilles Chanteperdrix. This man page was written by Roland Stigge.
