Skip to content

Bitvectors are now base 256 #3206

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed

Bitvectors are now base 256 #3206

wants to merge 1 commit into from

Conversation

kroening
Copy link
Member

  • Each commit message has a non-empty body, explaining why the change was made.
  • n/a Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@kroening
Copy link
Member Author

This is a more radical alternative for #3107.
The key problem is that printing ireps no longer works.

@martin-cs
Copy link
Collaborator

  1. I think this needs a rebase as one of the commits has been merged.

  2. It's not clear how much of the second commit is also in Bitvectors are now hexadecimal #3107 ; they look quite similar. Does it make sense to get that one merged first?

@tautschnig
Copy link
Collaborator

Could the claim "This reduces the memory consumption of bit-vectors by 8x or more." be elaborated upon? We store strings in a lookup table, and thus this claim only applies for each unique entry. Do we have any measurements of the size of the string table at runtime? How many of its entries are bit vectors? I think we need much more data to trade the impossibility to print bitvectors for memory savings.

@tautschnig tautschnig added the Needs data This PR claims improvements that require further data to substantiate the claims. label Oct 20, 2018
@tautschnig tautschnig assigned kroening and unassigned tautschnig Oct 20, 2018
@kroening
Copy link
Member Author

The current view is to go for hexadecimal representation, given that readability is important.

Simultaneously leading zeros are dropped.  This reduces the memory
consumption of bit-vectors by 8x or more.
@TGWDB
Copy link
Contributor

TGWDB commented Jul 8, 2021

Closing as #3107 appears to be chosen over this one. Please reopen if you believe this is erroneous.

@TGWDB TGWDB closed this Jul 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Needs data This PR claims improvements that require further data to substantiate the claims.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants