Thanks to visit codestin.com
Credit goes to github.com

Skip to content

perf(size): Reduce Apple symbol analysis memory - #679

Draft
jamieQ wants to merge 2 commits into
mainfrom
perf/reduce-symbol-object-overhead
Draft

perf(size): Reduce Apple symbol analysis memory#679
jamieQ wants to merge 2 commits into
mainfrom
perf/reduce-symbol-object-overhead

Conversation

@jamieQ

@jamieQ jamieQ commented Sep 13, 2026

Copy link
Copy Markdown
Member

Reduce memory used by Apple binary symbol analysis by adding slots to high-cardinality symbol records and reusing repeated section, segment, mangled-name, and module strings. Module reuse is thread-local, preserving parallel demangling without shared mutable state.

Production-shaped benchmarks reduced peak memory by 149–445 MB and process RSS by 226–785 MB across representative workloads.

Use slotted dataclasses for the retained symbol, demangle result, and symbol group objects to avoid allocating an instance dictionary for each object.
Share decoded section and module names across results and retain original mangled-name objects instead of duplicate JSON-decoded strings.
@sentry

sentry Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Size Analysis

1 component analyzed, 1 component processing

iOS Builds

Name Configuration Version Download Size Install Size
HackerNews (iOS)
com.emergetools.hackernews
Release 3.8 (1) 6.5 MB (0 B) 9.7 MB (0 B)

Android Builds

Name Configuration Version Download Size Uncompressed Size
Hacker News (Android)
com.emergetools.hackernews
Release 1.0.2 (13) Processing... (-) Processing... (-)

Configure launchpad-test-ios status check rules

@sentry

sentry Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

πŸ“² Install Builds

iOS

πŸ”— App Name App ID Version Configuration
HackerNews com.emergetools.hackernews 3.8 (1) Release

Android

πŸ”— App Name App ID Version Configuration
Hacker News com.emergetools.hackernews 1.0.2 (13) Release

βš™οΈ launchpad-test-android Build Distribution Settings

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.

1 participant