To see if the environment is correct at the beginning of each process:
     strace -f -o strace.out -e trace=execve -v -s 500 my_executable my_args...

You might also look at "ltrace" and filter to select only getenv() and putenv().
     https://en.wikipedia.org/wiki/Ltrace

To provide some additional protection to environment variable OMP_NUM_THREADS,
then move its definition to somewhere else.  Something like [not tested]:
     static char my_num_threads[50];
     char const *old_def = getenv("OMP_NUM_THREADS");
     if (old_def) {
         snprintf(my_num_threads, sizeof(my_num_threads), "OMP_NUM_THREADS=%s", 
old_def);
         fprintf(stderr, "Setting %s\n", my_num_threads);
         putenv(my_num_threads);
     }
     else {
         fprintf(stderr, "Could not find OMP_NUM_THREADS\n");
     }


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to