Portable Linux Processor Affinity 1.2 (Default branch)


 
Thread Tools Search this Thread
Special Forums News, Links, Events and Announcements Software Releases - RSS News Portable Linux Processor Affinity 1.2 (Default branch)
# 1  
Old 10-27-2008
Portable Linux Processor Affinity 1.2 (Default branch)

PLPA originated as an attempt to solve the problem of multiple APIs for processor affinity within Linux, but has since grown into a Linux processor affinity toolkit. It provides a Linux distro/kernel/glibc-independent C API for setting and getting processor affinity, and in newer kernels on supported platforms, it also supports mapping (core, socket) tuples to Linux virtual processor IDs. The plpa-taskset command effectively provides command-line access to the C API, and can be used to get/set processor affinity for new or already-running processes. Affinity can be expressed either as a set of Linux virtual processor IDs or (core, socket) tuples. License: BSD License (revised) Changes:
The major new feature of this release is the ability to bind processes to specific (core,socket) sets. Specifically, PLPA allows the binding specification to be specified in terms of cores and sockets (vs. Linux virtual processor IDs). Binding to (core,socket) tuples is available through both the C API and the "plpa-taskset" command-line executable. Image

Image

More...
Login or Register to Ask a Question

Previous Thread | Next Thread

2 More Discussions You Might Find Interesting

1. Programming

Set Processor Affinity to group of cores

Hi on multi-core system - I know I can set each process to run on specific core (Processor Affinity). If I want to set process (which contains several threads) to run on group of core, how can I do it ? For example: If we have 8 core, and two process each process contain 4 threads. And I... (2 Replies)
Discussion started by: laro1983
2 Replies

2. UNIX for Dummies Questions & Answers

Processor Affinity on Redhat AS3

Does anyone know how to setup processor affinity on Redhat AS3.0. I know how to do this on Solaris and Windows.. Thanks (2 Replies)
Discussion started by: sssow
2 Replies
Login or Register to Ask a Question
runon(1)						      General Commands Manual							  runon(1)

NAME
runon - Runs a command on a specific CPU or processor set SYNOPSIS
runon cpu_num command [argument...] runon -p [-x] pset_id command [argument...] runon -r rad_id command [argument...] DESCRIPTION
The runon utility runs the specified command (command) on the specified CPU (cpu_num), Processor Set (pset) or Resource Affinity Domain (RAD). The argument variable specifies any options or arguments for the specified command. All the threads created by the command inherit the CPU binding to the specified CPU (cpu_num), including threads created as the result of a fork. If the -p option is used, the specified command is bound to a processor set rather than to a specific processor. Because a processor set can contain more than one processor, the -p option is useful for multi-threaded applications. In addition, you can use the -x option to specify exclusive access to a processor set. OPTIONS
Binds to a processor set instead of a processor. You must specify the processor set identification number (pset_id), which is a unique integer that identifies the processor set and is returned by the pset_create command. You can specify the -x option with the -p option. Invokes Resource Affinity Domain (RAD) binding, which binds the command to a RAD identifier (rad_id) instead of an individual processor or pset. The RAD structure holds data associated with a NUMA building block. In this release, and for the purpose of using the runon command, a RAD is analogous to a hardware Quad Building Block or QBB. The hardware QBB identifier also identifies the RAD. However, in future releases a RAD will be defined as a related set of memory, pro- cessors, and I/O that might not map to a discrete QBB. Specifies exclusive use of a processor set. Use the -x option only with the -p option. SEE ALSO
Commands: pset_assign_cpu(1), pset_assign_pid(1), pset_create(1), pset_info(1), psradm(8) Files: processor_sets(4) Other: numa_intro(3) runon(1)