diff TaskManager/Cell/spe/CellDmaManager.cc @ 999:451ddde9a16d

Measurement of mainMem_alloc at waiting time. not done.
author tkaito
date Fri, 22 Oct 2010 20:11:41 +0900
parents 33630c6ff445
children 61f33945f85d
line wrap: on
line diff
--- a/TaskManager/Cell/spe/CellDmaManager.cc	Mon Oct 11 19:42:28 2010 +0900
+++ b/TaskManager/Cell/spe/CellDmaManager.cc	Fri Oct 22 20:11:41 2010 +0900
@@ -141,6 +141,9 @@
     wait_time = spu_readch(SPU_RdDec); 
     global_busy_time += busy_time - wait_time;
     spu_writech(SPU_WrDec, 0xffffffff);
+
+    // Measurement of mainMem_alloc
+    mainMemalloc_time += (alloc_busy_time - wait_time)*alloc_flag;
 }
 
 
@@ -151,6 +154,8 @@
     *counter += 0xffffffff - wait_time;
     busy_time = wait_time;
 
+    // Measurement of mainMem_alloc
+    alloc_busy_time = wait_time;
 }
 
 void CellDmaManager::null_start_dmawait_profile() {}
@@ -177,15 +182,18 @@
   " mail_time = %lld(%.3g%%), " 
   " busy_ratio = %.3g%%"
   " array_load_time = %lld\n"
+  " mainMem_alloc_time = %lld\n"
     ,cpu, global_busy_time,
     global_wait_time, d, global_mail_time, m, r,
-    task_array_load_time);
+    task_array_load_time,
+    mainMemalloc_time);
 
     global_busy_time = 0;
     global_mail_time = 0;
     global_wait_time = 0;
     task_array_load_time = 0;
-
+    mainMemalloc_time = 0;
+    alloc_flag = 0;
 }