1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 84 unchanged lines hidden (view full) --- 93 } 94*/ 95 m_conflicting_map_ptr = new Map<Address, Time>; 96 97 m_real_time_start_time = time(NULL); // Not reset in clearStats() 98 m_stats_period = 1000000; // Default 99 m_periodic_output_file_ptr = &cerr; 100 |
101} 102 103Profiler::~Profiler() 104{ 105 if (m_periodic_output_file_ptr != &cerr) { 106 delete m_periodic_output_file_ptr; 107 } 108 delete m_address_profiler_ptr; --- 731 unchanged lines hidden (view full) --- 840 841void Profiler::addAddressTraceSample(const CacheMsg& msg, NodeID id) 842{ 843 if (msg.getType() != CacheRequestType_IFETCH) { 844 845 // Note: The following line should be commented out if you want to 846 // use the special profiling that is part of the GS320 protocol 847 |
848 // NOTE: Unless PROFILE_HOT_LINES is enabled, nothing will be profiled by the AddressProfiler |
849 m_address_profiler_ptr->addTraceSample(msg.getLineAddress(), msg.getProgramCounter(), msg.getType(), msg.getAccessMode(), id, false); 850 } 851} 852 853void Profiler::profileSharing(const Address& addr, AccessType type, NodeID requestor, const Set& sharers, const Set& owner) 854{ 855 Set set_contacted(owner); 856 if (type == AccessType_Write) { --- 273 unchanged lines hidden --- |