Portable Linux Processor Affinity 1.1 (Default branch)


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

PLPA is an attempt to solve the problem ofmultiple API's for processor affinity withinLinux. Specifically, the functionssched_setaffinity() and sched_getaffinity() havenumbers and types of parameters depending on yourLinux vendor and/or version of GLibc. This isquite problematic for applications attempting touse processor affinity in Linux for compile-time,link-time, and run-time reasons. The PLPA providesa single processor affinity API that developerscan write to in order to get both consistentbehavior and binary compatibility across differentLinux installations (assuming that you have anexecutable that is otherwise binary Linux portable).License: BSD License (revised)Changes:
The ability to understand (socket,core) tuples forspecific process placement was added, as opposedto just specifying Linux virtual processor IDs.The plpa-taskset executable was also added, whichunderstands the same command line syntax as the"taskset" command, but also understands(core@socket) nomenclature.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
sched_thread_affinity(5)					File Formats Manual					  sched_thread_affinity(5)

NAME
sched_thread_affinity - adjust scheduler thread affinity VALUES
Failsafe Default Allowed values Any value in the range of is allowed. A value of indicates weak thread affinity, and the threads may run on different processors. A value of indicates strong thread affinity, and the threads will likely remain on the same processor. Recommended values Use the default value in normal cases. In special cases where it is imperative that threads run as quickly as possible, a value closer to may be used. However, this may lead to an increase in cache misses. Customers must evaluate the performance impact in their workload environment before changing the value of this tunable on production sys- tems. DESCRIPTION
The tunable defines on which processor a thread may likely run. A thread with lower affinity may move from one processor to another during its lifetime, whereas a thread with higher affinity will likely experience minimal movement across processors. A change in the value may have direct impact on system throughput and response times. A very small value may result in threads being run much quicker at the possible expense of higher cache misses, and a very large value may result in threads being run less frequently if they have run (or are running) on a loaded processor, with a possible benefit of improved cache affinity. I/O intensive applications are likely to benefit from a lower value for this tunable. Who Is Expected to Change This Tunable? Anyone. Restrictions on Changing Changes to this tunable take effect immediately. When Should the Value of This Tunable Be Raised? Any increase in the value of this tunable will cause most threads to remain on the processor where they have run during their lifetimes. What Are the Side Effects of Raising the Value? Raising the value of the tunable may cause some threads to wait to run, even though there may be less loaded or idle processors in the sys- tem. When Should the Value of This Tunable Be Lowered? The tunable value should be lowered if the workload expects to run as quickly as possible, regardless of whether it is moved from processor to processor at the cost of possible increases in cache misses. What Are the Side Effects of Lowering the Value? Lowering may result in an increase in cache misses as threads begin to run on different processors during their lifetimes. What Other Tunable Values Should Be Changed at the Same Time? None. WARNINGS
All HP-UX kernel tunable parameters are release specific. This parameter may be removed or have its meaning changed in future releases of HP-UX. Installation of optional kernel software, from HP or other vendors, may cause changes to tunable parameter values. After installation, some tunable parameters may no longer be at the default or recommended values. For information about the effects of installation on tun- able values, consult the documentation for the kernel software being installed. For information about optional kernel software that was factory installed on your system, see at AUTHOR
was developed by HP. Tunable Kernel Parameters sched_thread_affinity(5)