parsec
parsec copied to clipboard
enable tracing local parameters on task stack for preserving m, n, and k data
Description
My project for the past few months has been to get an idea of GEMM algorithms through ParSEC. The DTD interface has been helpful with this endeavor, but the addition of a few more features would be the most efficient way to practically extend the interface while also giving the needed control to my code to better utilize ParSEC.
Describe the solution you'd like
The DTD interface suffers from a few missing features when combined with the task_pins tracer. In particular, the m
, n
, and k
data is missing with each task. This results in a O(n^2) workaround on the parsing front to determine which task belonged to which core and which data it was using. If it became possible to include this data in the trace (perhaps by enabling it to be present in a 'task stack' as mentioned in the Monday meeting on August 1st, 2022), then the tracing utility could lose its current workaround for dtd and become simpler, more readable, and faster at execution time.