belliottsmith commented on PR #6:
URL: https://github.com/apache/cassandra-accord/pull/6#issuecomment-1212592507

   I've pushed (a very in progress) update to my branch of your review branch, 
and I'm seeing the following:
   
   ```
   00:29:49.463 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=7, 
keys=257, total=3400)] avg 134.95ms, allocated 1907 MiB
   00:30:07.839 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=7, keys=257, total=3400)] avg 427.51ms, allocated 13019 MiB
   00:30:46.528 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=20, 
keys=344, total=11182)] avg 857.73ms, allocated 20997 MiB
   00:31:43.433 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=20, keys=344, total=11182)] avg 1,344.11ms, allocated 37105 MiB
   00:32:02.101 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=12, 
keys=326, total=6410)] avg 404.94ms, allocated 5409 MiB
   00:32:35.870 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=12, keys=326, total=6410)] avg 795.45ms, allocated 24247 MiB
   00:32:54.877 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=12, 
keys=355, total=7099)] avg 410.93ms, allocated 5316 MiB
   00:33:31.908 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=12, keys=355, total=7099)] avg 870.99ms, allocated 25560 MiB
   00:33:38.520 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=8, 
keys=256, total=2991)] avg 134.86ms, allocated 2062 MiB
   00:33:55.547 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=8, keys=256, total=2991)] avg 395.47ms, allocated 12105 MiB
   00:33:56.510 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=2, 
keys=90, total=1536)] avg 9.84ms, allocated 516 MiB
   00:34:03.143 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=2, keys=90, total=1536)] avg 149.17ms, allocated 5743 MiB
   00:34:35.287 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=20, 
keys=337, total=7961)] avg 711.37ms, allocated 10672 MiB
   00:35:20.816 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=20, keys=337, total=7961)] avg 1,073.09ms, allocated 28380 MiB
   00:35:28.808 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=8, 
keys=308, total=3777)] avg 164.52ms, allocated 2421 MiB
   00:35:50.105 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=8, keys=308, total=3777)] avg 496.92ms, allocated 14291 MiB
   00:35:50.682 [main] INFO accord.txn.DepsTest - Benchmark[name=merge(size=2, 
keys=185, total=614)] avg 3.62ms, allocated 236 MiB
   00:35:52.802 [main] INFO accord.txn.DepsTest - Benchmark[name=builder 
forEach(size=2, keys=185, total=614)] avg 42.05ms, allocated 1829 MiB
   ```
   
   This is algorithmically much simpler than the priority heap merge, but it 
has involved quite a bit of ugliness with factories for managing memory 
allocation while still using the general purpose `SortedArrays` implementations 
of the core procedures. I'll continue to see if there's a little more that can 
be done to reduce garbage, but this is probably close to good enough now.
   
   It's also still not testing the situation it should perform best for (i.e. 
merging lots of very similar dips)
   
   We do have to decide if we simply discard the algorithmically "better" 
approach, or perhaps include it with a note that it has not been reviewed, as 
it might be useful in future and it would be a shame to have to start from 
scratch. I'm not sure of a better way to park this kind of code. A branch will 
get lost, but perhaps that's fine.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to