Skip to content
This repository was archived by the owner on Jun 24, 2026. It is now read-only.

Specialized iterative serialization for Array#1756

Merged
feliam merged 2 commits into
masterfrom
dev-iterative-array-serialization
Jun 30, 2020
Merged

Specialized iterative serialization for Array#1756
feliam merged 2 commits into
masterfrom
dev-iterative-array-serialization

Conversation

@feliam

@feliam feliam commented Jun 25, 2020

Copy link
Copy Markdown
Contributor

This PR improves performance on serializing large ArrayStores. Pickling large ArrayStores would previously result in very deep recursion, which sometimes hit the python stack limit and caused a crash. Now, ArrayStores will iterate over their contents so that we instead pickle a flattened version.

@ehennenfent ehennenfent left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Should be well-covered by the existing tests.

@feliam
feliam merged commit e265bce into master Jun 30, 2020
@feliam
feliam deleted the dev-iterative-array-serialization branch June 30, 2020 18:15
ekilmer added a commit that referenced this pull request Jul 17, 2020
* master:
  Create a model for strncpy (#1770)
  Add doc, fix output bugs (#1769)
  Update EVM usage example (#1772)
  New working model of strlen (#1725)
  Typo (#1768)
  Specialized iterative serialization for Array (#1756)
  Enable nightly uploads to PyPI (#1757)
  Manticore 0.3.4 (#1720)
  Manticore verifier (#1717)
  Nightly MacOS Tests (#1614)
  Remove/procrastinate solver query in ether leak detector (#1727)
  Fix constant folding & constraint set slicing (#1706)
@ehennenfent ehennenfent added this to the Manticore 0.3.5 milestone Sep 3, 2020
@ehennenfent ehennenfent mentioned this pull request Oct 6, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants