Blame man/man3/PAPI_unregister_thread.3

Packit 577717
.TH "PAPI_unregister_thread" 3 "Mon Dec 18 2017" "Version 5.6.0.0" "PAPI" \" -*- nroff -*-
Packit 577717
.ad l
Packit 577717
.nh
Packit 577717
.SH NAME
Packit 577717
PAPI_unregister_thread \- 
Packit 577717
.PP
Packit 577717
Notify PAPI that a thread has 'disappeared'\&.  
Packit 577717
Packit 577717
.SH SYNOPSIS
Packit 577717
.br
Packit 577717
.PP
Packit 577717
.SH "Detailed Description"
Packit 577717
.PP 
Packit 577717
Packit 577717
.PP
Packit 577717
\fBReturn values:\fP
Packit 577717
.RS 4
Packit 577717
\fIPAPI_ENOMEM\fP Space could not be allocated to store the new thread information\&. 
Packit 577717
.br
Packit 577717
\fIPAPI_ESYS\fP A system or C library call failed inside PAPI, see the errno variable\&. 
Packit 577717
.br
Packit 577717
\fIPAPI_ECMP\fP Hardware counters for this thread could not be initialized\&.
Packit 577717
.RE
Packit 577717
.PP
Packit 577717
\fBPAPI_unregister_thread\fP should be called when the user wants to shutdown a particular thread and free the associated thread ID\&. THIS IS IMPORTANT IF YOUR THREAD LIBRARY REUSES THE SAME THREAD ID FOR A NEW KERNEL LWP\&. OpenMP does this\&. OpenMP parallel regions, if separated by a call to omp_set_num_threads() will often kill off the underlying kernel LWPs and then start new ones for the next region\&. However, omp_get_thread_id() does not reflect this, as the thread IDs for the new LWPs will be the same as the old LWPs\&. PAPI needs to know that the underlying LWP has changed so it can set up the counters for that new thread\&. This is accomplished by calling this function\&. 
Packit 577717
Packit 577717
.SH "Author"
Packit 577717
.PP 
Packit 577717
Generated automatically by Doxygen for PAPI from the source code\&.