intel / intel/dml-language-server

In-memory sizes of symbol semantic results are too large

Open
#147 3 comments 0 reactions 1 assignee Claimed by @JonatanWaern View on GitHub
bug Medium Priority
Dominant language
Rust
Stars
9
Forks
9
PR merge metrics
No merged PRs in 30d

Description

This is mostly caused by ubiquitous and/or automatically set parameters (name, qname, etc.). In testing I have observed _one_ of these having 4.5~gb of reference information associated with it, which is not tenable. For certain devices, this will crash the analysis outright depending on the running environment.

However, optimizing this is non-trivial, currently the information stored is a vector of heap-references to mutex-d symbols. So I think optimization on the size of each element is unlikely, instead we simply must store fewer elements somehow.

A side-effect of solving this is that (depending on the solution) we will also see analysis speed-ups, as currently much of the time is spent on moving these _very_ large reference lists around.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.