GitHub user viirya opened a pull request:
https://github.com/apache/spark/pull/11759
[SPARK-13930][SQL] Apply fast serialization on collect limit operator
## What changes were proposed in this pull request?
JIRA: https://issues.apache.org/jira/browse/SPARK-13930
Recently the fast serialization has been introduced to collecting
DataFrame/Dataset (#11664). The same technology can be used on collect limit
operator too.
## How was this patch tested?
Add a benchmark for collect limit to `BenchmarkWholeStageCodegen`.
Without this patch:
model name : Westmere E56xx/L56xx/X56xx (Nehalem-C)
collect limit: Best/Avg Time(ms) Rate(M/s)
Per Row(ns) Relative
-------------------------------------------------------------------------------------------
collect limit 1 million 3413 / 3768 0.3
3255.0 1.0X
collect limit 2 millions 9728 / 10440 0.1
9277.3 0.4X
With this patch:
model name : Westmere E56xx/L56xx/X56xx (Nehalem-C)
collect limit: Best/Avg Time(ms) Rate(M/s)
Per Row(ns) Relative
-------------------------------------------------------------------------------------------
collect limit 1 million 833 / 1284 1.3
794.4 1.0X
collect limit 2 millions 3348 / 4005 0.3
3193.3 0.2X
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/viirya/spark-1 execute-take
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/11759.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #11759
----
commit 16ac5fe6325c2cf7638faab854c09dc50de94f18
Author: Liang-Chi Hsieh <[email protected]>
Date: 2016-03-16T08:41:36Z
init import.
commit d1306ade2efa407ce0785650d08aef4129aab2c3
Author: Liang-Chi Hsieh <[email protected]>
Date: 2016-03-16T09:06:35Z
Use fast serialization on collect limit too.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]