chrishkchris commented on pull request #716:
URL: https://github.com/apache/singa/pull/716#issuecomment-640070499


   > @chrishkchris In the communicator.cc, we split the original operation into 
multiple. Is this to facilitate recording the time?
   
   Yes, in order to record the time, those operations that are used for waiting 
should not be included.  Otherwise the recorded time will include the waiting 
time.
   
   For example, if I do not split the operator, a filling buffer operation will 
have the time profiled as the sum of :
   1. waiting for the NULL stream before start filling buffer 2. filling buffer
   If there is no need to wait, then the time spent for 1 will be zero, but 
some it still need to wait. 
   
   The aims of the time profiling design is to figure out how much time actual 
time (excluding waiting time) we need for each operators, so in the future we 
may be able to do better scheduling.
   
   Therefore, all the "waiting" operation should be excluded from time 
profiling of operators.
   
   Also, since there is no need to record the waiting time, I renamed all the 
waiting operators as "waiting" so that we don't time profiling for them
   
https://github.com/chrishkchris/singa/blob/SINGA-510_2/src/core/scheduler/scheduler.cc#L292


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to