ucb-bar/onnxruntime-riscv

Don't require full rebuild when doing --for_firesim

Offen

#30 geöffnet am 21.03.2021

 (2 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C++ (37 Forks)auto 404
good first issue

Repository-Metriken

Stars
 (93 Sterne)
PR-Merge-Metriken
 (Keine gemergten PRs in 30 T)

Beschreibung

Whenever we add on --for_firesim this forces a full rebuild. It's very annoying and slows down development speed. This should not be required because all for_firesim on the ORT binary does is basically flush gemmini at process start (the flag for the runner does mlockall, but since runner builds in 1 min anyway that's not an issue).

I propose instead of controller whether flush happens via an ifdef, we just always flush on the first call to gemmini if the execution mode is WS. Basically have a global variable that stores whether flush has happened, and then on the very first call to one of the gemmini functions (conv/matmul) we flush if mode is WS. The get_matmul_type function is a good place for this because all calls go through that.

Contributor Guide