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

feat(array): improve 15x performance #554

Merged
merged 10 commits into from
Mar 9, 2022

Conversation

sundy-li
Copy link
Contributor

@sundy-li sundy-li commented Mar 8, 2022

In my M1 Max env:
Before:

array mul/65536         time:   [279.79 us 280.60 us 281.55 us]
array mul simd/65536    time:   [161.39 us 162.02 us 162.78 us]
array mul native/65536  time:   [8.0262 us 8.1871 us 8.3324 us] 

After:

Gnuplot not found, using plotters backend
array mul/65536         time:   [18.516 us 18.715 us 18.902 us]
                        change: [-92.021% -91.962% -91.899%] (p = 0.00 < 0.05)
                        Performance has improved.

Related: #534

In datebend:

databend_mul            time:   [8.4797 us 8.4950 us 8.5111 us] 

It can reach native mul performance (with auto vectorized)

Because we keep Option<Bitmap> rather than Bit<Vec> for Non null arrays.

@sundy-li sundy-li changed the title An example to improve mul performance An example to improve mul performance[15x] Mar 8, 2022
sundy-li and others added 4 commits March 8, 2022 09:10
Signed-off-by: sundyli <543950155@qq.com>
Signed-off-by: sundyli <543950155@qq.com>
* feat: map inputref in filter

Signed-off-by: xiejiann <jianxie0@gmail.com>

* fix: fix project input ref error

Signed-off-by: xiejiann <jianxie0@gmail.com>
Signed-off-by: sundyli <543950155@qq.com>
Signed-off-by: sundyli <543950155@qq.com>
@skyzh skyzh requested review from skyzh and wangrunji0408 March 8, 2022 01:12
@skyzh skyzh changed the title An example to improve mul performance[15x] feat(array): improve 15x performance Mar 8, 2022
@TennyZhuang
Copy link
Collaborator

Looks too successful to me!

@wangrunji0408 wangrunji0408 added the good first issue Good for newcomers label Mar 9, 2022
Copy link
Member

@wangrunji0408 wangrunji0408 left a comment

Choose a reason for hiding this comment

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

LGTM!
This work is a good example of improving our evaluation framework. Thanks!

@wangrunji0408 wangrunji0408 enabled auto-merge (squash) March 9, 2022 03:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants