ruby: Added bcast msg profiling to hammer and token
authorBrad Beckmann <Brad.Beckmann@amd.com>
Fri, 20 Aug 2010 18:46:12 +0000 (11:46 -0700)
committerBrad Beckmann <Brad.Beckmann@amd.com>
Fri, 20 Aug 2010 18:46:12 +0000 (11:46 -0700)
src/mem/protocol/MOESI_CMP_token-L1cache.sm
src/mem/protocol/MOESI_CMP_token-L2cache.sm
src/mem/protocol/MOESI_CMP_token-dir.sm
src/mem/protocol/MOESI_hammer-dir.sm
src/mem/protocol/RubySlicc_Exports.sm
src/mem/ruby/network/Network.cc

index fa32b94aba9a6f200ff7166cdeccc30f0153573b..381debce51fba7e31744220319291ed46f432855 100644 (file)
@@ -730,9 +730,9 @@ machine(L1Cache, "Token protocol")
           out_msg.RetryNum := L1_TBEs[address].IssueCount;
           out_msg.isLocal := true;
           if (L1_TBEs[address].IssueCount == 0) {
-            out_msg.MessageSize := MessageSizeType:Request_Control;
+            out_msg.MessageSize := MessageSizeType:Broadcast_Control;
           } else {
-            out_msg.MessageSize := MessageSizeType:Reissue_Control;
+            out_msg.MessageSize := MessageSizeType:Broadcast_Control;
           }
           out_msg.Prefetch := L1_TBEs[address].Prefetch;
           out_msg.AccessMode := L1_TBEs[address].AccessMode;
@@ -854,9 +854,9 @@ machine(L1Cache, "Token protocol")
 
           out_msg.RetryNum := L1_TBEs[address].IssueCount;
           if (L1_TBEs[address].IssueCount == 0) {
-            out_msg.MessageSize := MessageSizeType:Request_Control;
+            out_msg.MessageSize := MessageSizeType:Broadcast_Control;
           } else {
-            out_msg.MessageSize := MessageSizeType:Reissue_Control;
+            out_msg.MessageSize := MessageSizeType:Broadcast_Control;
           }
           out_msg.Prefetch := L1_TBEs[address].Prefetch;
           out_msg.AccessMode := L1_TBEs[address].AccessMode;
index 789a2b5cd0142aadf35262debfe933123e8026bd..706b286fa907876e55444a26190a0acd52aeb9a5 100644 (file)
@@ -748,7 +748,7 @@ machine(L2Cache, "Token protocol")
 
            out_msg.Type := in_msg.Type;
            out_msg.isLocal := false;
-           out_msg.MessageSize := MessageSizeType:Request_Control;
+           out_msg.MessageSize := MessageSizeType:Broadcast_Control;
            out_msg.AccessMode := in_msg.AccessMode;
            out_msg.Prefetch := in_msg.Prefetch;
         }
index fce030d9848adb48cb5f1df2205158ea7289093a..5122e30d3f473fdbed7e39f952fb3f32a1a65485 100644 (file)
@@ -434,7 +434,7 @@ machine(Directory, "Token protocol")
                                                   l2_select_num_bits));
 
         out_msg.RetryNum := 0;
-        out_msg.MessageSize := MessageSizeType:Request_Control;
+        out_msg.MessageSize := MessageSizeType:Broadcast_Control;
         out_msg.Prefetch := PrefetchBit:No;
         out_msg.AccessMode := AccessModeType:SupervisorMode;
       }
@@ -500,7 +500,7 @@ machine(Directory, "Token protocol")
                                                   l2_select_num_bits));
 
         out_msg.RetryNum := 0;
-        out_msg.MessageSize := MessageSizeType:Request_Control;
+        out_msg.MessageSize := MessageSizeType:Broadcast_Control;
         out_msg.Prefetch := PrefetchBit:No;
         out_msg.AccessMode := AccessModeType:SupervisorMode;
       }
index 7938505d9137e84edbd399b43e583c03b59b8992..b2fec17f53e827b92c7f50911b5296e73c8a777d 100644 (file)
@@ -477,7 +477,7 @@ machine(Directory, "AMD Hammer-like protocol")
           out_msg.Requestor := in_msg.Requestor;
           out_msg.Destination.broadcast(MachineType:L1Cache); // Send to all L1 caches
           out_msg.Destination.remove(in_msg.Requestor); // Don't include the original requestor
-          out_msg.MessageSize := MessageSizeType:Forwarded_Control;
+          out_msg.MessageSize := MessageSizeType:Broadcast_Control;
         }
       }
     }
@@ -494,7 +494,7 @@ machine(Directory, "AMD Hammer-like protocol")
         //
         out_msg.Requestor := machineID;
         out_msg.Destination.broadcast(MachineType:L1Cache); 
-        out_msg.MessageSize := MessageSizeType:Forwarded_Control;
+        out_msg.MessageSize := MessageSizeType:Broadcast_Control;
       }
     }
   }
@@ -510,7 +510,7 @@ machine(Directory, "AMD Hammer-like protocol")
         //
         out_msg.Requestor := machineID;
         out_msg.Destination.broadcast(MachineType:L1Cache); 
-        out_msg.MessageSize := MessageSizeType:Forwarded_Control;
+        out_msg.MessageSize := MessageSizeType:Broadcast_Control;
       }
     }
   }
index 599e895dbcab321a59c87ddf0c17506c363d2790..d29620d16163b373ac26e59e4b9a7524b59e7bd9 100644 (file)
@@ -200,6 +200,7 @@ enumeration(MessageSizeType, default="MessageSizeType_Undefined", desc="...") {
   Response_Control, desc="non-data response";
   Writeback_Data, desc="Writeback data";
   Writeback_Control, desc="Writeback control";
+  Broadcast_Control, desc="Broadcast control";
   Forwarded_Control, desc="Forwarded control";
   Invalidate_Control, desc="Invalidate control";
   Unblock_Control, desc="Unblock control";
index f2e056f756a2bd2b02effb78babc399b6fa74d44..91800d5bb91e374d2816e27d3598f78780ee55dd 100644 (file)
@@ -71,6 +71,7 @@ Network::MessageSizeType_to_int(MessageSizeType size_type)
       case MessageSizeType_Reissue_Control:
       case MessageSizeType_Response_Control:
       case MessageSizeType_Writeback_Control:
+      case MessageSizeType_Broadcast_Control:
       case MessageSizeType_Forwarded_Control:
       case MessageSizeType_Invalidate_Control:
       case MessageSizeType_Unblock_Control: