Dear users,

We're happy to announce the public release of Extrae 3.8.0 with new
features and bug fixes. Please, check the ChangeLog at the end of this post
for more details.

As always, it can be found installed in BSC's machines under /apps/BSCTOOLS/extrae
and can be loaded through the modules command.
It is also available to download from our webpage and from GitHub.

We hope you like the new additions and kindly request your feedback on the use
of the new version.

Happy tracing!

ChangeLog
---------------
* Fixes wrong JAVAH definition and conditional check (fixes #37)
* Fixes for dyninst make check tests and configure checks for libsynapse (closes #20 #23)
* Forces exit on second termination signal (resolves #19)
* Changes to use new binutils >= 2.34 API (closes #42 #43)
* Changes merger block distribution to avoid processes with 0 traces (closes #31)
* Fixes checks for `javah` to compile Extrae with JDK > 9 (closes #37)
* Updates common.h to meet C++11 syntax (closes #32)
* Solves duplicate capture of C and Fortran MPI calls when using Intel implementations
* Fixes finalization issues when Extrae is initialized by API and another runtime
+ Adds option to instrument I/O internals
+ Fixes race condition in pthread instrumentation and adds wrappers for pthread_cond_signal, pthread_cond_broadcast, pthread_cond_wait, pthread_cond_timedwait (closes #8)
* Fixes division by 0
* Fixes local to world rank translations for comms going thru an intercommunicator created with MPI_Intercomm_create
+ Adds environment variable EXTRAE_ENFORCE_FS_SYNC to ensure file system synchronization after creating trace files and folders
* Changes for Workflows and Distributed Computing group
+ Added instrumentation for MPI_Comm_dup_with_info
+ Adds events ADD_RESERVED_MEM_EV and SUB_RESERVED_MEM_EV to track dynamic memory usage
* Fixes race condition in flushing/closing buffers between Backend_Finalize and Backend_Flush_pThread
* Fixes circular buffering to dump remaining data at the end of the run outside online mode
+ Adds instrumentation wrappers for MPI_Comm_split_type
+ Adds environment variable EXTRAE_UNSET_PRELOAD to clear the LD_PRELOAD once the tracing is loaded
* Fixes double emission of python events call and c_call
* Fixes configure check for MPI_Comm_spawn
+ Adds Python bindings for Extrae_shutdown and _restart
* Fixes correlation of PEBS samples with reallocated objects
* Fixes online install-data-hook directory creation, others substitution, & mispellings (closes #33 #34 #36)
+ Adds wrappers for MPI split collective data access routines