Repository navigation
introduce GenericByteDictionaryBuilder::append_array() - #10765
Conversation
|
run benchmark cast_kernels env: |
14e35c9 to
33cded2
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
run benchmark cast_kernels env: |
|
Hi @Rich-T-kid, your benchmark configuration could not be parsed (#10765 (comment)). Error: Usage: Any benchmark name is accepted: Per-side configuration ( env:
# shared env is inherited by BOTH the build and the run, so build
# flags go here. Builds default to no debuginfo for speed; opt back
# in for hung-job gdb dumps and cap jobs to stay within memory:
CARGO_PROFILE_RELEASE_DEBUG: "1"
CARGO_BUILD_JOBS: "1"
baseline:
ref: v45.0.0
env:
# per-side env only reaches the benchmark run, not the build
DATAFUSION_RUNTIME_MEMORY_LIMIT: 1G
changed:
ref: v46.0.0
env:
DATAFUSION_RUNTIME_MEMORY_LIMIT: 2GFile an issue against this benchmark runner |
|
run benchmark cast_kernels |
|
Hi @Rich-T-kid, your benchmark configuration could not be parsed (#10765 (comment)). Error: Usage: Any benchmark name is accepted: Per-side configuration ( env:
# shared env is inherited by BOTH the build and the run, so build
# flags go here. Builds default to no debuginfo for speed; opt back
# in for hung-job gdb dumps and cap jobs to stay within memory:
CARGO_PROFILE_RELEASE_DEBUG: "1"
CARGO_BUILD_JOBS: "1"
baseline:
ref: v45.0.0
env:
# per-side env only reaches the benchmark run, not the build
DATAFUSION_RUNTIME_MEMORY_LIMIT: 1G
changed:
ref: v46.0.0
env:
DATAFUSION_RUNTIME_MEMORY_LIMIT: 2GFile an issue against this benchmark runner |
|
run benchmark cast_kernels env: |
This comment was marked as duplicate.
This comment was marked as duplicate.
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
show benchmark queue |
|
Hi @Rich-T-kid, you asked to view the benchmark queue (#10765 (comment)).
File an issue against this benchmark runner |
|
run benchmark cast_kernels |
This comment was marked as duplicate.
This comment was marked as duplicate.
|
🤖 Arrow criterion benchmark completed (GKE) | trigger Instance: Comparing rich-T-kid/bench-dict-append-array-impl (33cded2) to 7ec3f5a (merge-base) diff Run configurationrun benchmark cast_kernelsCPU Details (lscpu)Details
Resource Usagebase (merge-base)
branch
File an issue against this benchmark runner |
|
run benchmark cast_kernels env: |
This comment was marked as outdated.
This comment was marked as outdated.
|
run benchmark cast_kernels |
This comment was marked as duplicate.
This comment was marked as duplicate.
|
show benchmark queue |
|
Hi @Rich-T-kid, you asked to view the benchmark queue (#10765 (comment)).
File an issue against this benchmark runner |
|
🤖 Arrow criterion benchmark completed (GKE) | trigger Instance: Comparing rich-T-kid/bench-dict-append-array-impl (d6a16fb) to 6bb5e2b (merge-base) diff Run configurationrun benchmark cast_kernelsCPU Details (lscpu)Details
Resource Usagebase (merge-base)
branch
File an issue against this benchmark runner |
🚀 |
d6a16fb to
faca997
Compare
|
run benchmark cast_kernels |
|
🤖 Arrow criterion benchmark running (GKE) | trigger CPU Details (lscpu)Comparing rich-T-kid/bench-dict-append-array-impl (a717d1d) to 7ec3f5a (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench cast_kernels File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
run benchmark cast_kernels |
|
🤖 Arrow criterion benchmark running (GKE) | trigger CPU Details (lscpu)Comparing rich-T-kid/bench-dict-append-array-impl (a717d1d) to 7ec3f5a (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench cast_kernels File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
run benchmark cast_kernels |
|
🤖 Arrow criterion benchmark running (GKE) | trigger CPU Details (lscpu)Comparing rich-T-kid/bench-dict-append-array-impl (a717d1d) to 7ec3f5a (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench cast_kernels File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
bot seems to be working again, atleast on other PRs 😄 |
|
run benchmark cast_kernels |
|
🤖 Arrow criterion benchmark running (GKE) | trigger CPU Details (lscpu)Comparing rich-T-kid/bench-dict-append-array-impl (a717d1d) to 7ec3f5a (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench cast_kernels File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Kubernetes messageFile an issue against this benchmark runner |
|
run benchmark cast_kernels |
|
🤖 Arrow criterion benchmark running (GKE) | trigger CPU Details (lscpu)Comparing rich-T-kid/bench-dict-append-array-impl (f22a006) to cd7c6b8 (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"BENCH_COMMAND=cargo bench --features=arrow,async,test_common,experimental,object_store --bench cast_kernels File an issue against this benchmark runner |
|
🤖 Arrow criterion benchmark completed (GKE) | trigger Instance: Comparing rich-T-kid/bench-dict-append-array-impl (f22a006) to cd7c6b8 (merge-base) diff Run configurationrun benchmark cast_kernels
env:
BENCH_FILTER: "cast binary to dict"CPU Details (lscpu)Details
Resource Usagebase (merge-base)
branch
File an issue against this benchmark runner |
nice! @Jefffrey numbers look decent again |
GenericByteDictionaryBuilder::append_array()
|
thanks @Rich-T-kid |
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
# Which issue does this PR close? <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#10762. # Rationale for this change the utf8/binary -> dict<_,utf8/binary> currently calls `append_value()` in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls. <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> # What changes are included in this PR? new `append_array()` method on the byteDictionaryBuilder. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> # Are these changes tested? yes & benchmarked <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? If this PR claims a performance improvement, please include evidence such as benchmark results. --> # Are there any user-facing changes? yes, new `append_array()` method on the byteDictionaryBuilder. <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. -->
Which issue does this PR close?
Rationale for this change
the utf8/binary -> dict<_,utf8/binary> currently calls
append_value()in a loop even when it has the entire array ahead of time. this PR avoids that by working with th entire array at once as well as branching on weather or not the array contains nulls.What changes are included in this PR?
new
append_array()method on the byteDictionaryBuilder.Are these changes tested?
yes & benchmarked
Are there any user-facing changes?
yes, new
append_array()method on the byteDictionaryBuilder.