Ejemplo n.º 1
0
VOID Fini(int, VOID * v)
{   
    ComputeGlobalStats();

    *out <<
        "#\n"
        "#pattern-type count percent\n"
        "#\n";
    
    *out << "All Threads" << endl;
    COUNTER total = 0;
    for (int i = PATTERN_INVALID+1; i < PATTERN_LAST; i++)
        total += GlobalStats.pattern[i];

    *out << std::setprecision(4) << showpoint;
    for (int i = PATTERN_INVALID+1; i < PATTERN_LAST; i++)
        *out << ljstr(pattern_t2str(static_cast<pattern_t>(i)),15) 
             << decstr( GlobalStats.pattern[i],12)
             << "\t"
             << std::setw(10)
             << 100.0*GlobalStats.pattern[i]/total
             << std::endl;

    *out<< endl;

    EmitPerThreadStats(out);

    *out << "# eof" << endl;
    
    out->close();
}
Ejemplo n.º 2
0
VOID Fini(int, VOID * v)
{   


    DumpStats(*out, GlobalStatsStatic, "static counts");
    
    *out << endl;

    ComputeGlobalStats();
    
    DumpStats(*out, GlobalStatsDynamic, "dynamic counts");

    *out << "# eof" <<  endl;

    out->close();
}
Ejemplo n.º 3
0
VOID Fini(int, VOID * v)
{   
    ComputeGlobalStats();


    *out <<
        "#\n"
        "#num reg  count-read  count-written\n"
        "#\n";

    
    for ( UINT32 i = 0; i < MAX_REG; i++)
    {
        if( GlobalStats.reg_w[i] == 0 && GlobalStats.reg_r[i] == 0 ) continue;
        
        *out << decstr(i,3) << " " <<  ljstr(REG_StringShort(REG(i)),15) <<
            decstr( GlobalStats.reg_r[i],12) <<
            decstr( GlobalStats.reg_w[i],12) << endl;
    }

    *out << "# eof" << endl;
    
    out->close();
}