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

ISSUE-4374: Simd selected for BooleanColumn #4484

Merged
merged 3 commits into from
Mar 20, 2022

Conversation

LiuYuHui
Copy link
Contributor

I hereby agree to the terms of the CLA available at: https://databend.rs/dev/policies/cla/

Summary

Summary about this PR

Changelog

  • New Feature
  • Performance Improvement

Related Issues

Fixes #4374

Test Plan

Unit Tests

@vercel
Copy link

vercel bot commented Mar 17, 2022

This pull request is being automatically deployed with Vercel (learn more).
To see the status of your deployment, click below or on the icon next to each commit.

🔍 Inspect: https://vercel.com/databend/databend/F6N77mNbxgEW4g7ia7biy3yNeDGx
✅ Preview: Canceled

[Deployment for 545fffb canceled]

@mergify
Copy link
Contributor

mergify bot commented Mar 17, 2022

Thanks for the contribution!
I have applied any labels matching special text in your PR Changelog.

Please review the labels and make any necessary changes.

@mergify mergify bot added pr-feature this PR introduces a new feature to the codebase pr-performance labels Mar 17, 2022
.filter(|(_, b)| *b)
.map(|(a, _)| a);
let mut bitmap = MutableBitmap::with_capacity(selected);
let mut chunks = self.values().chunks::<u64>();
Copy link
Member

Choose a reason for hiding this comment

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

I think we should follow the way of primitive::filter.

Iterator of filter.values().chunks::<u64> may cause too much u64 merges.

@BohuTANG
Copy link
Member

error: this if-then-else expression returns a bool literal
  --> common/datavalues/tests/it/columns/boolean.rs:80:26
   |
80 |                 .map(|e| if e % 2 == 0 { true } else { false })
   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `e % 2 == 0`
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool

error: could not compile `common-datavalues` due to 3 previous errors
warning: build failed, waiting for other jobs to finish...

@LiuYuHui LiuYuHui requested a review from sundy-li March 20, 2022 09:47
@BohuTANG BohuTANG merged commit be97814 into databendlabs:main Mar 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
need-review pr-feature this PR introduces a new feature to the codebase
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature: Simd selection in BooleanColumn && StringColumn
4 participants