Skip to content

Another 256-bit integers (strict 32 bytes)#14229

Merged
4ertus2 merged 22 commits intoClickHouse:masterfrom
4ertus2:tmp
Sep 4, 2020
Merged

Another 256-bit integers (strict 32 bytes)#14229
4ertus2 merged 22 commits intoClickHouse:masterfrom
4ertus2:tmp

Conversation

@4ertus2
Copy link
Copy Markdown
Contributor

@4ertus2 4ertus2 commented Aug 28, 2020

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Changelog category (leave one):

  • Improvement

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Replace wide integers from boost multiprecision with implementation from https://github.com/cerevra/int

Closes #14141
Closes #14142

Require #14219 applyed for backport

@robot-clickhouse robot-clickhouse added the pr-other Pull request with changes not fitting to other categories label Aug 28, 2020
@4ertus2 4ertus2 marked this pull request as draft August 28, 2020 21:02
@4ertus2 4ertus2 changed the title PoC: another UInt256 PoC: another 256-bit integers (strict 32 bytes) Sep 1, 2020
@4ertus2
Copy link
Copy Markdown
Contributor Author

4ertus2 commented Sep 2, 2020

It's not OK yet: internal buffer is in big-endian logic.

@4ertus2 4ertus2 changed the title PoC: another 256-bit integers (strict 32 bytes) Another 256-bit integers (strict 32 bytes) Sep 2, 2020
@4ertus2 4ertus2 marked this pull request as ready for review September 3, 2020 12:15
@4ertus2 4ertus2 removed the pr-other Pull request with changes not fitting to other categories label Sep 3, 2020
@robot-clickhouse robot-clickhouse added the pr-other Pull request with changes not fitting to other categories label Sep 3, 2020
@robot-clickhouse robot-clickhouse added pr-improvement Pull request with some product improvements and removed pr-other Pull request with changes not fitting to other categories labels Sep 3, 2020
@4ertus2 4ertus2 removed the pr-improvement Pull request with some product improvements label Sep 3, 2020
@robot-clickhouse robot-clickhouse added the pr-improvement Pull request with some product improvements label Sep 3, 2020
@4ertus2 4ertus2 merged commit 7c20aa2 into ClickHouse:master Sep 4, 2020
akuzm added a commit that referenced this pull request Sep 7, 2020
Also add one more timeout to perf test runner.
@bobrik
Copy link
Copy Markdown
Contributor

bobrik commented Sep 13, 2020

This commit balloons compilation times: 7c20aa2. Let's look at DatabaseFactory.cpp specifically.

Before:

10.25user 0.91system 0:11.17elapsed 99%CPU (0avgtext+0avgdata 911068maxresident)k
0inputs+152outputs (0major+235595minor)pagefaults 0swaps

After:

29.71user 1.97system 0:31.69elapsed 99%CPU (0avgtext+0avgdata 2156500maxresident)k
0inputs+136outputs (0major+641234minor)pagefaults 0swaps

Overall compilation too 3x time and 2.4x memory.

@alexey-milovidov
Copy link
Copy Markdown
Member

@4ertus2 is going to remove wide_integer from types.h.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-improvement Pull request with some product improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GROUP BY Nullable(UInt256): wrong result

4 participants