NVlabs/timeloop

Timeloop Attribbutes latency and num-thread

Omar-Abdul-Aziz opened this issue · 2 comments

Hello,

I'm working on a timeloop project, and I have a clarification:
2. Normally, latency in microelectronics if is the time or number of cycles needed to achieve an operation. However, in timeloop architecture, I'm varying the latency of the MAC and I doubt it mean the same after some tests. Does someone have any idea about it?
3. About the number of threads, in timeloop explication:
"num-threads: All search heuristics are multi-threaded. The mapper module instantiates the given number of threads and divvies up the IndexFactorization mapspace across them. Each thread independently follows the specified heuristic, periodically exchanging data with other threads. If left unspecified, the mapper queries the underlying host platform for the available hardware concurrency and instantiates that many threads."
I don't understand the relation between the number of threads in the mapper and the number of threads of the host PC.

Regards,
Omar

  1. What happened to question 1?
  2. Which parameter (i.e. YAML key) are you changing? Key name aside, Timeloop's model assumes 1-cycle initiation interval for each arithmetic unit (we do have plans to support II > 1 but it's not implemented yet). The total performance simulation is a throughput-based calculation and does not include any pipeline fill latency.
  3. If you don't specify num-threads the mapper will query the host PC's available hardware threads and spawn that many parallel mapper threads. If you specify num-threads the mapper will ignore the host PC's hardware threads and spawn the user-specified number of parallel mapper threads.

Sorry for the late reply, I'm getting back to the project now.

  1. I'm changing the latency attribute of the MAC in the architecture YAML file. But I'm not understanding the effect of this attribute.
  2. Got it

Thank you