Skip to content
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

Improved numbits #9

Merged
merged 6 commits into from
Apr 9, 2024
Merged

Improved numbits #9

merged 6 commits into from
Apr 9, 2024

Conversation

pravirkr
Copy link
Collaborator

@pravirkr pravirkr commented Apr 9, 2024

Hi @telegraphic, I was comparing and testing pack/unpack utilities in sigpyproc and made some changes in numbits.
I am creating this PR, in case you find this useful.

Changes

  • Added keyword bitorder to support both "big" and "little" endian packing/unpacking. This is related to unpack() function deals 1-bit data differently with ewanbarr/sigpyproc FRBs/sigpyproc3#26. I think sigproc uses different conventions for 1-bit and 2,4-bit unpacking.
  • parallel to use OpenMP.
  • unpack_buffered and pack_buffered to support packing/unpacking using a pre-allocated buffer.
  • unpack_lookup to use a lookup table for unpacking bits. No significant performance gain.
  • Benchmark plots comparing with numpy.

@pravirkr pravirkr marked this pull request as ready for review April 9, 2024 23:38
@telegraphic
Copy link
Owner

Hey @pravirkr, LGTM (I only skimmed the cpp, but trust you've done a good job!). I haven't been active on this, and you have, so I've added you as a collaborator to give you access for future changes too.

@telegraphic telegraphic merged commit 4b1d5aa into telegraphic:master Apr 9, 2024
4 checks passed
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.

2 participants