About Interpreted Expressions
Interpreted expressions are interpreted by TotalView. Interpreted expressions run slower, possibly much slower, than compiled expressions. With multi-process programs, interpreted expressions run even more slowly because processes may need to wait for TotalView to execute the expression.
When you debug remote programs, interpreted expressions always run slower because the TotalView process on the host, not the TotalView server (tvdsvr) on the client, interprets the expression. For example, an interpreted expression could require that 100 remote processes wait for the TotalView process on the host machine to evaluate one interpreted expression. In contrast, if TotalView compiles the expression, it evaluates them on each remote process.
Whenever a thread hits an interpreted eval point, TotalView stops execution. This means that TotalView creates a new set of
lockstep groups. Consequently, if goal threads contain interpreted patches, the results are unpredictable.