Ignore:
Timestamp:
Aug 4, 2010, 10:09:03 PM (14 years ago)
Author:
rosiere
Message:

1) Full parallel compilation
2) Add statistics in ROB : list instruction affinity

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/src/Commit_unit_statistics_deallocation.cpp

    r141 r142  
    88
    99#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Commit_unit/include/Commit_unit.h"
     10#include "Behavioural/include/Allocation.h"
     11#include "Common/include/BitManipulation.h"
    1012
    1113namespace morpheo {
     
    4143    delete [] _stat_nb_inst_retire;
    4244    delete [] _stat_nb_inst_commit;
     45
     46//  uint32_t mask_inst      = gen_mask<uint32_t>(SIZE_INSTRUCTION);
     47    uint32_t mask_type      = gen_mask<uint32_t>(SIZE_TYPE       );
     48    uint32_t mask_operation = gen_mask<uint32_t>(SIZE_OPERATION  );
     49
     50    for (uint32_t i=0; i<_param->_nb_thread; ++i)
     51      for(stat_inst_fusion_t::iterator it = _stat_inst_fusion [i].begin();
     52          it != _stat_inst_fusion [i].end();
     53          ++it)
     54        {
     55          uint32_t value = it->second;
     56
     57          if (value != 0)
     58            {
     59              uint32_t inst = it->first;
     60
     61              type_t   type_0      = static_cast<type_t>((inst>>(SIZE_TYPE+2*SIZE_OPERATION))&mask_type     );
     62              uint32_t operation_0 =                     (inst>>(SIZE_TYPE+  SIZE_OPERATION))&mask_operation ;
     63              type_t   type_1      = static_cast<type_t>((inst>>(            SIZE_OPERATION))&mask_type     );
     64              uint32_t operation_1 =                      inst                               &mask_operation ;
     65
     66              // log_printf(STAT,Commit_unit,FUNCTION,
     67              msgInformation(
     68                           //"  * %s - %s : %d\n"
     69                           //,toString_instruction((inst>>SIZE_INSTRUCTION)&mask_inst).c_str()
     70                           //,toString_instruction( inst                   &mask_inst).c_str(),value
     71                             "  * %s.%s - %s.%s : %d\n"
     72                             ,toString          (type_0            ).c_str()
     73                             ,toString_operation(type_0,operation_0).c_str()
     74                             ,toString          (type_1            ).c_str()
     75                             ,toString_operation(type_1,operation_1).c_str()
     76                             ,value
     77                             );
     78            }
     79        }
     80
     81 // DELETE1(_stat_last_inst          ,_param->_nb_thread);
     82    DELETE1(_stat_last_inst_type     ,_param->_nb_thread);
     83    DELETE1(_stat_last_inst_operation,_param->_nb_thread);
     84    DELETE1(_stat_inst_fusion        ,_param->_nb_thread);
    4385       
    4486    log_end(Commit_unit,FUNCTION);
Note: See TracChangeset for help on using the changeset viewer.