diff --git a/src/testCHAMELEON.c b/src/testCHAMELEON.c
index 82b2971b4b19f27b6b58fb182640747f9d4dbf42..6314823cbf17811a5494ada5ab3f42bbac67990e 100644
--- a/src/testCHAMELEON.c
+++ b/src/testCHAMELEON.c
@@ -79,7 +79,13 @@ int testCHAMELEON(void) {
                                     nbPts, nbRHS, 1, np ); CHKERRQ(ierr);
 
       /* Compute the mat.vec product A.rhs -> solCHAM */
+      if ( generate_traces ) {
+        CHAMELEON_Enable( CHAMELEON_PROFILING_MODE );
+      }
       CHAMELEON_gemm_Tile( descA, descX, descY );
+      if ( generate_traces ) {
+        CHAMELEON_Disable( CHAMELEON_PROFILING_MODE );
+      }
 
       temps_final = getTime ();
       temps_cpu = temps_final - temps_initial ;
@@ -117,6 +123,9 @@ int testCHAMELEON(void) {
       /* Factorize the CHAMELEON Matrix */
       /* ===================================================================================== */
       Mpf_printf(MPI_COMM_WORLD, "\n\n**** Factorizing CHAMELEON Mat...\n") ;
+      if ( generate_traces ) {
+        CHAMELEON_Enable( CHAMELEON_PROFILING_MODE );
+      }
       temps_initial = getTime ();
       if (symMatSolver) {
         ierr = CHAMELEON_sytrf_Tile (ChamLower, descA); CHKERRQ(ierr);
@@ -125,6 +134,9 @@ int testCHAMELEON(void) {
       }
       temps_final = getTime ();
       temps_cpu = temps_final - temps_initial ;
+      if ( generate_traces ) {
+        CHAMELEON_Disable( CHAMELEON_PROFILING_MODE );
+      }
       if ( verboseTest ) {
         void *lapackA = (void*)MpfCalloc( nbPts * nbPts, sizeof(D_type) ) ; CHKPTRQ(lapackA);
 
diff --git a/src/testHCHAMELEON.c b/src/testHCHAMELEON.c
index 86b925eeb7e9a6e9c9dc64b0cbee2cdc095f75d3..89c85ecd28481e8762a9ea1d79484cd575c78f26 100644
--- a/src/testHCHAMELEON.c
+++ b/src/testHCHAMELEON.c
@@ -150,7 +150,13 @@ int testHCHAMELEON(void) {
                                     nbPts, nbRHS, dims[0], dims[1] ); CHKERRQ(ierr);
 
       /* Compute the mat.vec product A.rhs -> solCHAM */
+      if ( generate_traces ) {
+        CHAMELEON_Enable( CHAMELEON_PROFILING_MODE );
+      }
       CHAMELEON_gemm_Tile( hdescA.super, descX, descY );
+      if ( generate_traces ) {
+        CHAMELEON_Disable( CHAMELEON_PROFILING_MODE );
+      }
 
       /* convert back to lapack format */
       ierr = CHAMELEON_Desc2Lap( ChamUpperLower, descY, solCHAM, nbPts ); CHKERRQ(ierr);
@@ -197,7 +203,7 @@ int testHCHAMELEON(void) {
       /* ===================================================================================== */
       Mpf_printf(MPI_COMM_WORLD, "\n\n**** Factorizing H-CHAMELEON...\n") ;
       if ( generate_traces ) {
-        CHAMELEON_Enable(CHAMELEON_PROFILING_MODE);
+        CHAMELEON_Enable( CHAMELEON_PROFILING_MODE );
       }
       temps_initial = getTime ();
       if ( symMatSolver ) {
@@ -208,7 +214,7 @@ int testHCHAMELEON(void) {
       temps_final = getTime ();
       temps_cpu = temps_final - temps_initial ;
       if ( generate_traces ) {
-        CHAMELEON_Disable(CHAMELEON_PROFILING_MODE);
+        CHAMELEON_Disable( CHAMELEON_PROFILING_MODE );
       }
       Mpf_printf(MPI_COMM_WORLD,"<PERFTESTS> TpsCpuFacto = %f \n", temps_cpu) ;