Skip to content

Conversation

@wesm
Copy link
Member

@wesm wesm commented Jun 23, 2020

Since hashing doesn't know the difference between int64, uint64, float64, or timestamp when it comes to performing its work, there's no need to generate identical compiled code for each of these logical types with the same underlying physical representation (64-bit values). 400KB is cut out of libarrow.so on Linux

I also trimmed vector_sort.cc a bit by using a simpler generator-dispatcher to use the same kernel Binary/String and LargeBinary/LargeString

@wesm wesm changed the title ARROW-8933: [C++] Trim redundant generated code form vector_hash.cc ARROW-8933: [C++] Trim redundant generated code from compute/kernels/vector_hash.cc Jun 23, 2020
@github-actions
Copy link

@wesm
Copy link
Member Author

wesm commented Jun 24, 2020

+1

@wesm wesm closed this in 3260130 Jun 24, 2020
@wesm wesm deleted the ARROW-8933 branch June 24, 2020 03:29
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.

1 participant