Ignore:
Timestamp:
Dec 4, 2012, 1:31:51 PM (12 years ago)
Author:
bouyer
Message:

The ring is cpu-ungry, so give one thread per ring when running under
systemcass-openmp.
While there, decrease the max frosen cycle for CPUs to 50000

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/platforms/platform_fpga_de2-115/top.cpp

    r275 r278  
    5151#ifdef _OPENMP
    5252        omp_set_dynamic(false);
    53         omp_set_num_threads(3);
     53        omp_set_num_threads(5);
    5454        //omp_set_num_threads(1);
    5555        std::cerr << "Built with openmp version " << _OPENMP << std::endl;
     
    232232        proc0 = new soclib::caba::VciCcVCacheWrapperV4<vci_param, proc_iss >
    233233          ("proc0", 0, maptabp, maptabc, IntTab(0),IntTab(0),IntTab(0),
    234             8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 1000000, DEBUG_CYCLE, true);
     234            8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 50000, DEBUG_CYCLE, true);
    235235        signal_proc0_it0 = new sc_signal<bool>("mips0_it0");
    236236        signal_proc0_it1 = new sc_signal<bool>("mips0_it1");
     
    243243        proc1 = new soclib::caba::VciCcVCacheWrapperV4<vci_param, proc_iss >
    244244          ("proc1", 1, maptabp, maptabc, IntTab(1),IntTab(1),IntTab(1),
    245             8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 1000000, DEBUG_CYCLE, true);
     245            8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 50000, DEBUG_CYCLE, true);
    246246        signal_proc1_it0 = new sc_signal<bool>("mips1_it0");
    247247        signal_proc1_it1 = new sc_signal<bool>("mips1_it1");
     
    270270        proc2 = new soclib::caba::VciCcVCacheWrapperV4<vci_param, proc_iss >
    271271          ("proc2", 2, maptabp, maptabc, IntTab(2),IntTab(2),IntTab(2),
    272             8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 1000000, DEBUG_CYCLE, true);
     272            8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 50000, DEBUG_CYCLE, true);
    273273        signal_proc2_it0 = new sc_signal<bool>("mips2_it0");
    274274        signal_proc2_it1 = new sc_signal<bool>("mips2_it1");
     
    277277        signal_proc2_it4 = new sc_signal<bool>("mips2_it4");
    278278        signal_proc2_it5 = new sc_signal<bool>("mips2_it5");
    279         ringp = new soclib::caba::VciSimpleRingFast<vci_param, 40, 33>
    280           ("ringp",maptabp, IntTab(), 4, 5, 7);
    281279        vcixicu = new soclib::caba::VciXicu<vci_param>
    282280          ("vcixicu", maptabp, IntTab(4), 4 /* npti */, 2 /* nhwi */, 4 /* nwti */, 12 /* nirq */);
     
    291289      {
    292290#endif
     291        ringc = new soclib::caba::VciSimpleRingFast<vci_param, 40, 33>
     292          ("ringc",maptabc, IntTab(), 4, 5, 5);
     293#if 1
     294      }
     295    }
     296#pragma omp section
     297    {
     298#pragma omp critical
     299      {
     300#endif
     301        ringp = new soclib::caba::VciSimpleRingFast<vci_param, 40, 33>
     302          ("ringp",maptabp, IntTab(), 4, 5, 7);
     303#if 1
     304      }
     305    }
     306#pragma omp section
     307    {
     308#pragma omp critical
     309      {
     310#endif
    293311        proc3 = new soclib::caba::VciCcVCacheWrapperV4<vci_param, proc_iss >
    294312          ("proc3", 3, maptabp, maptabc, IntTab(3),IntTab(3),IntTab(3),
    295             8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 1000000, DEBUG_CYCLE, true);
     313            8,8,8,8,4,64,16,4,64,16,4, 4, 0, 0, 4, 50000, DEBUG_CYCLE, true);
    296314        signal_proc3_it0 = new sc_signal<bool>("mips3_it0");
    297315        signal_proc3_it1 = new sc_signal<bool>("mips3_it1");
     
    305323          ("memc",maptabp,maptabc,maptabx,IntTab(0),IntTab(4),IntTab(0), IntTab(4),16,256,16, 1024, 4, 4, DEBUG_CYCLE, true);
    306324        signal_vci_ixr_memc = new soclib::caba::VciSignals<vci_param>("vci_ixr_memc");
    307         ringc = new soclib::caba::VciSimpleRingFast<vci_param, 40, 33>
    308           ("ringc",maptabc, IntTab(), 4, 5, 5);
    309325#ifdef VCI_LOGGER_ON_L1
    310326        soclib::caba::VciLogger<vci_param> vci_logger0("vci_logger0",maptabp);
Note: See TracChangeset for help on using the changeset viewer.