available_threads - returns information about current thread usage
SUBROUTINE AVAILABLE_THREADS(TOTAL, USING) INTEGER TOTAL, USING SUBROUTINE AVAILABLE_THREADS_64(TOTAL, USING) INTEGER*8 TOTAL, USING F95 INTERFACE SUBROUTINE AVAILABLE_THREADS(TOTAL, USING) INTEGER :: TOTAL, USING SUBROUTINE AVAILABLE_THREADS_64(TOTAL, USING) INTEGER(8) :: TOTAL, USING C INTERFACE #include <sunperf.h> void available_threads(int *total, int *using); void available_threads_64(long *total, long *using);
Oracle Solaris Studio Performance Library available_threads(3P) NAME available_threads - returns information about current thread usage SYNOPSIS SUBROUTINE AVAILABLE_THREADS(TOTAL, USING) INTEGER TOTAL, USING SUBROUTINE AVAILABLE_THREADS_64(TOTAL, USING) INTEGER*8 TOTAL, USING F95 INTERFACE SUBROUTINE AVAILABLE_THREADS(TOTAL, USING) INTEGER :: TOTAL, USING SUBROUTINE AVAILABLE_THREADS_64(TOTAL, USING) INTEGER(8) :: TOTAL, USING C INTERFACE #include <sunperf.h> void available_threads(int *total, int *using); void available_threads_64(long *total, long *using); PURPOSE AVAILABLE_THREADS calls library routine OMP_GET_MAX_THREADS to obtain the maximum value that can be returned by calls to OMP_GET_NUM_THREADS. This value is stored in TOTAL. If OMP_SET_NUM_THREADS is used to change the number of threads, subsequent calls to AVAILABLE_THREADS, whether calling from a serial region or parallel region, will return the new value in TOTAL. Also, in a parallel environment, if available_threads is called from a serial region of the master thread, it returns the number of threads available for execution (determined by function OMP_GET_NUM_THREADS) in argument USING. Else, if it is called from a thread in the team executing the parallel region it returns a 1 in USING. For more information on OMP_GET_MAX_THREADS, OMP_GET_NUM_THREADS, and OMP_SET_NUM_THREADS, see the OpenMP Fortran Application Program Interface document at http://www.openmp.org. ARGUMENTS TOTAL (output) Maximum value that can be returned by calls to USING_THREADS USING (output) If AVAILABLE_THREADS is called from a parallel region, USING = 1. If AVAILABLE_THREADS is called from a serial region, USING contains the number of threads available for execution in parallel. 7 Nov 2015 available_threads(3P)