Download Adaptec 1742A Technical data
Transcript
Programming Release Notes 6.20 POSIX Threads Library 6.20.5 Setting of the MULTITHREAD SYSGEN Parameter on NUMA Systems V7.3 When use of multiple kernel threads is enabled (by way of the LINK/THREADS_ ENABLE qualifier or the THREADCP command verb) for an image, the POSIX Threads Library monitors the apparent parallelism of an application and creates multiple kernel threads up to the number of CPUs available. The OpenVMS Executive can schedule each kernel thread to execute on a separate CPU and, therefore, can execute simultaneously. The number of kernel threads that a single process can create may be further bounded by the value of the SYSGEN parameter MULTITHREAD. In OpenVMS Version 7.3, when running on a Non-Uniform Memory Access (NUMA) platform (for example, GS160), all of the kernel threads created by the threads library are limited to execution on the CPUs that are located in the home Resource Affinity Domain (RAD) of the process. Typically, there are four CPUs in a RAD. When optimizing the performance of a threaded application, you may want to set the MULTITHREAD parameter to four or fewer to ensure that any one process creates no more than four kernel threads. If a process creates more than four kernel threads, all of those kernel threads compete for the four (say) CPUs within the process’s home RAD. At best, little or no gain would be realized, while in fact performance could decrease due to extra scheduling overhead. 6.20.6 POSIX Threads Library Debugger Metering Function V7.0 The metering capability of the POSIX Threads Library debugger does not work in this release. 6.20.7 C Run-Time Library errno Value V7.0 When errno is accessed from the OpenVMS Debugger, the value of the global errno (not the per-thread errno) is returned. (This is not a new condition; it just has not been documented previously.) 6.20.8 SET TASK/ACTIVE Command V6.2 The OpenVMS Debugger command SET TASK/ACTIVE does not work either for the POSIX Threads Library (on both OpenVMS Alpha and VAX systems) or for Compaq Ada for OpenVMS Alpha systems, the tasking for which is implemented using the POSIX Threads Library. Instead, you can use the following effective substitutes on the POSIX Threads Library: • For query-type actions, use the SET TASK/VISIBLE command. • To gain control to step through a particular thread, use strategic placement of breakpoints. Programming Release Notes 6–21