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

Add proper implementation of next_clear_bit for Bitset and update int_al... #35

Merged
merged 1 commit into from Nov 21, 2013

Conversation

Projects
None yet
3 participants
@pairing
Contributor

pairing commented Nov 21, 2013

...locator to use it, and fix issues with Bitset creating large fixnums.

  • Fix lots of left-shift related bugs in Bitset (as we were creating a large number of BigNum's with potentially thousands of binary digits to hold our "words" due to left-shift converting FixNums to BigNums. It's still going to happen from 61-64 bits, but way better than 2048-bit fixnums being used).
  • Added benchmark for IntAllocator. It used to take up to a minute to allocate 10,000 integers on a 2.7 GHz Intel Core i5, now takes 4 seconds for 65,536 (which we killed after waiting for 6 minutes using the old allocator).
Add proper implementation of next_clear_bit for Bitset and update int…
…_allocator to use it, and fix issues with Bitset creating large fixnums.

- Fix lots of left-shift related bugs in Bitset (as we were creating a large number of BigNum's with potentially thousands of binary digits to hold our "words" due to left-shift converting FixNums to BigNums. It's still going to happen from 61-64 bits, but way better than 2048-bit fixnums being used).
- Added benchmark for IntAllocator. It used to take up to a minute to allocate 10,000 integers on a 2.7 GHz Intel Core i5, now takes 4 seconds for 65,536 (which we killed after waiting for 6 minutes using the old allocator).

michaelklishin added a commit that referenced this pull request Nov 21, 2013

Merge pull request #35 from neo/master
Add proper implementation of next_clear_bit for Bitset and update int_al...

@michaelklishin michaelklishin merged commit df8af9a into ruby-amqp:master Nov 21, 2013

1 check failed

default The Travis CI build could not complete due to an error
Details
@michaelklishin

This comment has been minimized.

Member

michaelklishin commented Nov 21, 2013

👍

Don't mind the CI failure, Travis has changed names of Rubinius instances as of this week.

@michaelklishin

This comment has been minimized.

Member

michaelklishin commented Nov 21, 2013

New releases of amq-protocol and amqp gem are out.

Thank you for contributing!

@JeetKunDoug

This comment has been minimized.

JeetKunDoug commented Nov 21, 2013

You're welcome - glad to be of service :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment