Skip to content

perf: Key the interpreter symbol cache by Name rather than FastString

Matthew Pickering requested to merge wip/symbol-cache-perf into master

Profiles showed that about 0.2s was being spend constructing the keys before looking up values in the old symbol cache.

The performance of this codepath is critical as it translates directly to a delay when a user evaluates a function like main in the interpreter.

Therefore we implement a solution which keys the cache(s) by Name rather than the symbol directly, so the cache can be consulted before the symbol is constructed.

Fixes #25731 (closed)

Merge request reports

Loading