Mahesh Reddy has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/21601 )

Change subject: KUDU-613: SLRU Cache Benchmark
......................................................................


Patch Set 3:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/21601/1//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/21601/1//COMMIT_MSG@18
PS1, Line 18: Ran benchmarks for RELEASE build locally on macOS.
            : 6 cores and 2.6GHz.
> Thank you for updating the information on the benchmark results.
I changed it to 20/80 since the authors of the SLRU paper suggested that and it 
works well in practice. That being said, the results for a 80/20 split were not 
advantageous for the SLRU workload. How would I test real workloads?


http://gerrit.cloudera.org:8080/#/c/21601/2/src/kudu/util/cache-bench.cc
File src/kudu/util/cache-bench.cc:

http://gerrit.cloudera.org:8080/#/c/21601/2/src/kudu/util/cache-bench.cc@193
PS2, Line 193:
> I'm just curious: why to introduce this extra uncertainty?  Wouldn't it be
The idea was to have each thread either performing one of the two behaviors 
(frequent lookups for small set of keys with small values or random lookups for 
large set of keys with large values). At first, I tried using the index 'i' to 
alternate the behaviors but I ran into asan issues so I resorted to using an 
atomic bool. Alternating this atomic bool does a good job of alternating the 
behaviors. It splits it down the middle by having 8 threads doing one behavior 
and 8 doing the other. Let me know if you have any (atomic safe) ideas to 
alternate the behavior per thread.

I tried removing this parameter and alternating the behavior within DoQueries() 
but I saw a significant performance loss there for both LRU and SLRU. It 
doesn't give us the expected behavior when alternating the behavior each time 
within the function rather than having each thread simultaneously do one of the 
two behaviors. I'm not too sure why but writing the benchmark like this doesn't 
do what we expect it to (based on the results).



--
To view, visit http://gerrit.cloudera.org:8080/21601
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I1c128a9f047497373ce3e740056eaa89a352261b
Gerrit-Change-Number: 21601
Gerrit-PatchSet: 3
Gerrit-Owner: Mahesh Reddy <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Mahesh Reddy <[email protected]>
Gerrit-Comment-Date: Thu, 08 Aug 2024 01:49:42 +0000
Gerrit-HasComments: Yes

Reply via email to