Changeset 60 for sources/src/sc_port.cc


Ignore:
Timestamp:
Feb 14, 2017, 11:30:19 AM (7 years ago)
Author:
meunier
Message:
  • Intégration des modifications de Clément, qui a intégré la version parallélisée de systemcass faite par Manuel.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • sources/src/sc_port.cc

    r59 r60  
    5353    extern char unstable;
    5454    char unstable = 0; // not in sc_core namespace because dynamic link support C linkage only
    55     int32 pending_write_vector_nb = 0;
     55    int32 * pending_write_vector_nb = 0;
     56    unsigned long long int total_assig = 0;
     57#pragma omp threadprivate (pending_write_vector_nb, total_assig)
    5658}
    5759
     
    6567unsigned int pending_write_vector_capacity = 512;
    6668pending_write_vector_t pending_write_vector = NULL;
     69#pragma omp threadprivate (pending_write_vector)
    6770extern equi_list_t equi_list;
    6871
     
    218221            // signal table sorting doesn't give any better performance
    219222#if defined(DUMP_STAGE)
    220             cerr << "(" << pending_write_vector_nb
     223            cerr << "(" << *pending_write_vector_nb
    221224                << " internal pending writings) ";
    222225#endif
    223226            unsigned int i;
    224             for (i = 0; i < pending_write_vector_nb; ++i) {
     227            for (i = 0; i < *pending_write_vector_nb; ++i) {
    225228#define iter (sc_core::pending_write_vector[i])
    226229#ifdef CONFIG_DEBUG
     
    240243            }
    241244#ifdef DUMP_SIGNAL_STATS
    242             total_assig += pending_write_vector_nb;
    243 #endif
    244             pending_write_vector_nb = 0;
     245            total_assig += *pending_write_vector_nb;
     246#endif
     247            total_assig += *pending_write_vector_nb;
     248            *pending_write_vector_nb = 0;
    245249
    246250#if defined(DUMP_STAGE)
Note: See TracChangeset for help on using the changeset viewer.