HPlogo HP-UX Reference > P

pthread_condvar_prio_boost(5)

Tunable Kernel Parameters
HP-UX 11i Version 2: December 2007 Update
» 

Technical documentation

 » Table of Contents

 » Index

NAME

pthread_condvar_prio_boost — control priority boost for userspace threads using pthread condition variables

VALUES

Default

0

Allowed values

0

Turn Off

1

Turn On

DESCRIPTION

pthread_condvar_prio_boost is a dynamic tunable that enables or disables support for priority boosting of a thread doing wakeup of other thread(s) waiting on condition variables. This priority boost may improve the performance of certain type of multithreaded applications that use mutexes and conditional variables.

Who Is Expected to Change This Tunable?

Engineers who tune multithreaded application performance.

Restrictions on Changing

Changes to this tunable take effect immediately.

When Should the Tunable Be Turned On?

This tunable may be turned on when the priority boosting is intended for a thread issuing the wakeup on other threads sleeping on the condition variable using either pthread_cond_wait() or pthread_cond_timedwait().

In general, applications that have the following type of code sequences may benefit by turning this tunable ON:

int ret; ... ret = pthread_mutex_lock(&mutex); // assert that the 'ret' value is 0. ret = pthread_cond_signal(&cond); // assert that the 'ret' value is 0. ret = pthread_mutex_unlock(&mutex); // assert that the 'ret' value is 0.

What Are the Side Effects of Turning the Tunable On?

This tunable affects all multithreaded applications running in the system. Some applications may show a performance degradation as a result of turning this on.

When Should the Tunable Be Turned Off?

This tunable is turned off by default.

What Is the Disadvantage of Turning Off the Tunable?

When the tunable is turned off, applications will not have the advantage of the priority boost.

What Other Tunable Values Should Be Changed at the Same Time?

None.

WARNINGS

This tunable is the system wide setting that affects all multithreaded applications running in the system.

This tunable affects only the threads with the SCHED_TIMESHARED scheduling policy. Setting this tunable will not have any effect on threads with other scheduling policies.

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 tunable values, consult the documentation for the kernel software being installed. For information about optional kernel software that was factory installed on your system, see HP-UX Release Notes at http://docs.hp.com.

AUTHOR

pthread_condvar_prio_boost was developed by HP.

SEE ALSO

sched_getparam(2), sched_getscheduler(2), sched_yield(2), pthread_cond_broadcast(3T), pthread_cond_signal(3T), pthread_cond_wait(3T).