Hi,

it's been a while since I had a serious look into libgomp...

On Fri, Feb 25 2022, Mohamed Atef via Gcc wrote:
> Hello everyone,
>   From OpenMP specs.
> "The OpenMP implementation must execute ompd_bp_thread_begin at every
> native-thread-begin and initial-thread-begin event. This execution occurs
> before the thread starts
> the execution of any OpenMP region"
>
> "When terminating an OpenMP thread, the implementation executes
> ompd_bp_thread_end."
>
> are these team_start and team_end in team.c file?

...but - based on a rather quick look - while I think you correctly
tracked down that gomp_team_start is the place actually creating the
threads, I think that the OMPD implementation wants to execute the
ompd_bp_thread_begin function for each thread and by the native
(pthread) thread.  And, as far as I can tell, that seems to be the
function gomp_thread_start.  At the moment I cannot quite tell if the
end of the function would be a good place for the thread termination
event - or rather if it is sufficient and there may be others, I would
need to dig deeper.  But perhaps this already help?

Martin

Reply via email to