coldata: change Batch interface to operate with int length#45534
coldata: change Batch interface to operate with int length#45534craig[bot] merged 1 commit intocockroachdb:masterfrom
Conversation
fa7f1c3 to
200340b
Compare
|
Is this RFAL? |
a6d3205 to
dab5c35
Compare
dab5c35 to
4baa0d2
Compare
|
RFAL. |
abd9434 to
ee985b1
Compare
|
Ran some benchmarks, and it seems like This uint16 vs int (with nulls assertion) are the benchmarks of master vs only the first commit in this PR. This uint16 vs int (without nulls assertion) are the benchmarks of master vs both commits in this PR (the motivation was that it seemed like nulls cases became slower, I did change the arguments from |
ee985b1 to
4f8a577
Compare
|
Ran some more benchmarks. Rerunning on gceworker uint16 vs uint64. And actually comparing the two choices to each other uint64 vs int (without nulls assertion). Seems like |
|
I think part of the problem with nulls is that we simplified the |
329c5f4 to
9fc4806
Compare
|
I think you're right about nulls. I switched division by 8 and modulo by 8 to explicit bit operations. I also removed some of the unnecessary Here are the new benchmarks: Seems like we can proceed with |
|
One of the nice things about using |
0a7de14 to
6a42708
Compare
|
By accident, when updating |
|
Awesome, will take a look today. |
asubiotto
left a comment
There was a problem hiding this comment.
just to double check, you disabled batch size randomization in the benchmarks, right?
Reviewed 5 of 120 files at r1.
Reviewable status:complete! 1 of 0 LGTMs obtained (waiting on @asubiotto and @yuzefovich)
pkg/col/coldata/nulls_test.go, line 162 at r1 (raw file):
for _, i := range swapPos { for _, j := range swapPos { n.swap(uint64(i), uint64(j))
Can we change swap to take in int arguments as well?
This commit changes Batch interface to operate with int length because it unifies the way we store batches - now we will have a single implementation MemBatch (with an exception for coldata.ZeroBatch). This allows us to remove bufferedBatch. Release note: None
yuzefovich
left a comment
There was a problem hiding this comment.
Yes, batch size randomization was disabled on both gceworker and MBP.
Reviewable status:
complete! 0 of 0 LGTMs obtained (and 1 stale) (waiting on @asubiotto)
pkg/col/coldata/nulls_test.go, line 162 at r1 (raw file):
Previously, asubiotto (Alfonso Subiotto Marqués) wrote…
Can we change swap to take in
intarguments as well?
Done.
|
|
|
TFTR! bors r+ |
Build succeeded |
This commit changes Batch interface to operate with
intlengthbecause it unifies the way we store batches - now we will have a single
implementation
MemBatch(with an exception forcoldata.ZeroBatch). Thisallows us to remove
bufferedBatch.Release note: None