Changeset 13543


Ignore:
Timestamp:
10/04/12 18:13:39 (13 years ago)
Author:
Eric.Larour
Message:

CHG: moved tape statistics printing for AD mode to ad_core from issm.cpp

Location:
issm/trunk-jpl/src/c/solutions
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/solutions/ad_core.cpp

    r13540 r13543  
    3333        int         num_independents;
    3434        char*       driver=NULL;
     35        size_t   tape_stats[11];
    3536
    3637        /*state variables: */
     
    288289                        xDelete(anEDF_for_solverx_p->dp_Z);
    289290                        xDelete(anEDF_for_solverx_p->dpp_Z);
    290 
     291       
     292                        /*Print statistics: {{{*/
     293                        tapestats(1,tape_stats); //reading of tape statistics
     294                        if(VerboseAutodiff()){
     295                                _pprintLine_("   ADOLC statistics: ");
     296                                _pprintLine_("   "<<setw(45)<<left<<"Number of independents: " <<tape_stats[0]);
     297                                _pprintLine_("   "<<setw(45)<<left<<"Number of dependents: " <<tape_stats[1]);
     298                                _pprintLine_("   "<<setw(45)<<left<<"Maximal number of live active variables: " <<tape_stats[2]);
     299                                _pprintLine_("   "<<setw(45)<<left<<"Size of value stack (number of overwrites): " <<tape_stats[3]);
     300                                _pprintLine_("   "<<setw(45)<<left<<"Buffer size (a multiple of eight): " <<tape_stats[4]);
     301                                _pprintLine_("   "<<setw(45)<<left<<"Total number of operations recorded: " <<tape_stats[5]);
     302                        }
     303                        if(VerboseAutodiff())_pprintLine_("   end AD core");
     304                       
    291305                        /*Free resources: */
    292306                        xDelete(xp);
    293307                        xDelete(axp);
    294                        
    295                         if(VerboseAutodiff())_pprintLine_("   end AD core");
    296 
    297308                #else
    298309                        _error_("Should not be requesting AD drivers when an AD library is not available!");
  • issm/trunk-jpl/src/c/solutions/issm.cpp

    r13542 r13543  
    1515        FILE *petscoptionsfid  = NULL;
    1616        bool  waitonlock       = false;
    17 
    18         /*AD: */
    19         bool autodiff=false;
    20         size_t   tape_stats[11];
    2117
    2218        /*FemModel: */
     
    7571        pfclose(petscoptionsfid,petscfilename);
    7672
    77         /*get parameters: */
    78         femmodel->parameters->FindParam(&waitonlock,SettingsWaitonlockEnum);
    79         femmodel->parameters->FindParam(&autodiff,AutodiffIsautodiffEnum);
    80 
    81         /*Profiling: */
    8273        profiler->Tag(FinishInit);
    8374       
     75        /*call cores: */
    8476        _pprintLine_("call computational core:");
    8577        profiler->Tag(StartCore); solutioncore(femmodel); profiler->Tag(FinishCore);
     
    9183        OutputResultsx(femmodel->elements, femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,femmodel->results);
    9284       
    93         /*If running AD, close our tape, print statistics: {{{*/
    94         #ifdef _HAVE_ADOLC_
    95         if(autodiff){
    96                 tapestats(1,tape_stats); //reading of tape statistics
    97                 if(VerboseAutodiff()){
    98                         _pprintLine_("   ADOLC statistics: ");
    99                         _pprintLine_("   "<<setw(45)<<left<<"Number of independents: " <<tape_stats[0]);
    100                         _pprintLine_("   "<<setw(45)<<left<<"Number of dependents: " <<tape_stats[1]);
    101                         _pprintLine_("   "<<setw(45)<<left<<"Maximal number of live active variables: " <<tape_stats[2]);
    102                         _pprintLine_("   "<<setw(45)<<left<<"Size of value stack (number of overwrites): " <<tape_stats[3]);
    103                         _pprintLine_("   "<<setw(45)<<left<<"Buffer size (a multiple of eight): " <<tape_stats[4]);
    104                         _pprintLine_("   "<<setw(45)<<left<<"Total number of operations recorded: " <<tape_stats[5]);
    105                 }
    106         }
    107         #endif  /*}}}*/
    108 
    10985        /*Close output and petsc options file and write lock file if requested*/
    11086        pfclose(output_fid,lockfilename);
     87        femmodel->parameters->FindParam(&waitonlock,SettingsWaitonlockEnum);
    11188        if (waitonlock>0){
    11289                _pprintLine_("write lock file:");
Note: See TracChangeset for help on using the changeset viewer.