I want to monitor the time spent on AMS building the R&C network, I put the command before and after the initialize() function in systemC sc_simcontext.cpp file:
struct timeval t0;
struct timeval t1;
float elapsed;
gettimeofday(&t0, 0);
initialize( true );
gettimeofday(&t1, 0);
elapsed = (t1.tv_sec - t0.tv_sec) * 1000.0f + (t1.tv_usec - t0.tv_usec) / 1000.0f;
std::cout << "SystemC Initialize Time: "<< elapsed << "ms" << std::endl;
But I think this time is not the time spent on initializing the R&C network... I checked the sca_simcontext.cpp file, I found the class systemc_ams_initializer : sc_core::sc_module, but I didn't find which functions for invoking start to building the R&C network... Or should I monitor the function void sca_synchronization_alg::initialize() in sca_synchronization_alg.cpp file?
Where I can put the gettimeofday command to evaluate the time spent on building(initializing) R&C network? My target is to evaluate the proportion of initialized time on the total simulation time.
Thank you for sharing your idea.