Skip to content

codeintel: Additional worker memory improvements

Warren Gifford requested to merge ef/experiments2 into main

Created by: efritz

This PR reorganizes some data structures to be a bit more memory-efficient. Most of these changes are mechanical.

  • Collapse document data (which was a struct containing single field) into a string
  • Collapse diagnostic result (which was a struct containing single field) into a list of diagnostics
  • Move contains, moniker, and diagnostic relations out of documents/ranges and into a global map in the correlation state
  • Create a more memory-efficient version of DefaultIDSetMap that optimizes singleton sets (of which there are multiple orders of magnitude more in proportion to other sized maps)
  • Change the order in which result chunk are populated (by result chunk, not by random ordering of result identifiers)
  • Change the order in which moniker locations are pouplated (remove need for string-hashing for uniqueness)

Merge request reports

Loading