Skip to content

Selective parsing of AIRD files#217

Draft
Wuestengecko wants to merge 1 commit into
masterfrom
aird-memory
Draft

Selective parsing of AIRD files#217
Wuestengecko wants to merge 1 commit into
masterfrom
aird-memory

Conversation

@Wuestengecko
Copy link
Copy Markdown
Member

@Wuestengecko Wuestengecko commented Dec 16, 2022

This PR aims to reduce the memory usage of various capellambse objects during different stages of their life cycle. As a positive side effect, this also greatly reduces the load times for models in the presence of visual representations.

Here are some preliminary measurements made with our production model:

master aird-memory
Time to prompt ~18s 1.4s
RSS in prompt 1480MB 167MB
RSS peak 1537MB 400MB

The biggest hurdle is going to be the AIRD parser, which is currently entirely dysfunctional due to not being able to find its elements. It needs to be adjusted to work with selectively parsed AIRD files.

@Wuestengecko Wuestengecko self-assigned this Dec 16, 2022
@Wuestengecko Wuestengecko linked an issue Jan 3, 2023 that may be closed by this pull request
@Wuestengecko

This comment was marked as outdated.

@Wuestengecko Wuestengecko deleted the aird-memory branch June 15, 2023 10:25
@Wuestengecko Wuestengecko restored the aird-memory branch June 25, 2025 11:47
@Wuestengecko Wuestengecko reopened this Jun 25, 2025
@Wuestengecko Wuestengecko force-pushed the aird-memory branch 2 times, most recently from 5791a68 to 340b149 Compare June 30, 2025 11:28
@Wuestengecko Wuestengecko force-pushed the aird-memory branch 4 times, most recently from c119e37 to e463a28 Compare July 15, 2025 17:20
@Wuestengecko Wuestengecko force-pushed the aird-memory branch 3 times, most recently from 3fd8bde to 195050f Compare July 22, 2025 15:58
@Wuestengecko Wuestengecko force-pushed the aird-memory branch 2 times, most recently from fb5812d to ec5ebf0 Compare September 9, 2025 09:10
This commit changes the MelodyLoader to selectively parse only the
metadata section of AIRD files, and not keep the representation data in
memory all the time. This dramatically reduces the runtime memory
footprint and loading times for Capella models, especially when there
are lots of representations in a given model.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Problems loading a huge model

1 participant