diff --git a/manuscrit/20_foundations/30_sota.tex b/manuscrit/20_foundations/30_sota.tex index aaf80b9..7fa930e 100644 --- a/manuscrit/20_foundations/30_sota.tex +++ b/manuscrit/20_foundations/30_sota.tex @@ -160,4 +160,15 @@ few thousands of x86-64 instructions would be extremely time-consuming with this approach, the authors limit the evaluation of their tool to around 300 most common instructions. -\todo{uiCA} +\medskip{} + +Abel and Reineke, the authors of \uopsinfo{}, recently released +\uica{}~\cite{uica}, a code analyzer for Intel microarchitectures based on +\uopsinfo{} tables on one hand as a port model, and on manual +reverse-engineering through the use of hardware counters to model the frontend +and pipelines. We found this tool to be very accurate (see experiments later in +this manuscript), with results comparable with \llvmmca{}. Its source code +--~under free software license~-- is self-contained and reasonably concise +(about 2,000 lines of Python for the main part), making it a good basis and +baseline for experiments. It is, however, closely tied by design to Intel +microarchitectures, or microarchitectures very alike to Intel's ones.