activity.cc (2689:dbf969c18a65) activity.cc (3918:1f9a98d198e8)
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
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;

--- 14 unchanged lines hidden (view full) ---

23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 * Authors: Kevin Lim
29 */
30
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
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;

--- 14 unchanged lines hidden (view full) ---

23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 * Authors: Kevin Lim
29 */
30
31#include <cstring>
32
31#include "base/timebuf.hh"
32#include "cpu/activity.hh"
33
34ActivityRecorder::ActivityRecorder(int num_stages, int longest_latency,
35 int activity)
36 : activityBuffer(longest_latency, 0), longestLatency(longest_latency),
37 activityCount(activity), numStages(num_stages)
38{
39 stageActive = new bool[numStages];
33#include "base/timebuf.hh"
34#include "cpu/activity.hh"
35
36ActivityRecorder::ActivityRecorder(int num_stages, int longest_latency,
37 int activity)
38 : activityBuffer(longest_latency, 0), longestLatency(longest_latency),
39 activityCount(activity), numStages(num_stages)
40{
41 stageActive = new bool[numStages];
40 memset(stageActive, 0, numStages);
42 std::memset(stageActive, 0, numStages);
41}
42
43void
44ActivityRecorder::activity()
45{
46 // If we've already recorded activity for this cycle, we don't
47 // want to increment the count any more.
48 if (activityBuffer[0]) {

--- 60 unchanged lines hidden (view full) ---

109
110 assert(activityCount >= 0);
111}
112
113void
114ActivityRecorder::reset()
115{
116 activityCount = 0;
43}
44
45void
46ActivityRecorder::activity()
47{
48 // If we've already recorded activity for this cycle, we don't
49 // want to increment the count any more.
50 if (activityBuffer[0]) {

--- 60 unchanged lines hidden (view full) ---

111
112 assert(activityCount >= 0);
113}
114
115void
116ActivityRecorder::reset()
117{
118 activityCount = 0;
117 memset(stageActive, 0, numStages);
119 std::memset(stageActive, 0, numStages);
118 for (int i = 0; i < longestLatency + 1; ++i)
119 activityBuffer.advance();
120}
121
122void
123ActivityRecorder::dump()
124{
125 for (int i = 0; i <= longestLatency; ++i) {

--- 32 unchanged lines hidden ---
120 for (int i = 0; i < longestLatency + 1; ++i)
121 activityBuffer.advance();
122}
123
124void
125ActivityRecorder::dump()
126{
127 for (int i = 0; i <= longestLatency; ++i) {

--- 32 unchanged lines hidden ---