Disable memcpy by default and improve stress workload test - #577
Merged
Conversation
- Set MC_STORE_MEMCPY default to false for more stable RDMA performance - Rewrite stress_workload_test.cpp as standalone benchmark with separate PUT/GET throughput calculations - Add comprehensive performance metrics including latency percentiles and operation-specific throughput - Replace gtest dependency with gflags for better configuration flexibility
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR disables memcpy by default to stabilize RDMA performance and transforms the stress workload test into a standalone, configurable benchmark with detailed metrics.
- Disable
MC_STORE_MEMCPYdefault tofalsein transfer logic. - Rewrite
stress_workload_test.cppas a benchmark with separate PUT/GET throughput, latency percentiles, and configurable parameters. - Update test CMake configuration to remove GTest and link GFlags.
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| tests/stress_workload_test.cpp | Converted from gtest to standalone benchmark; added flags and metrics |
| tests/CMakeLists.txt | Removed gtest deps and added gflags linkage |
| src/transfer_task.cpp | Changed default MC_STORE_MEMCPY setting to disabled |
Comments suppressed due to low confidence (1)
mooncake-store/tests/stress_workload_test.cpp:24
- [nitpick] The flag name
test_operation_numsis a bit ambiguous; consider renaming it tonum_operations_per_threadoroperations_per_threadfor clearer intent.
DEFINE_int32(test_operation_nums, 100, "Number of operations per thread");
Collaborator
This is rather counter-intuitive. I wonder why RDMA has better performance than local memcpy? |
Collaborator
Author
|
ykwd
approved these changes
Jul 2, 2025
201341
pushed a commit
to 201341/Mooncake
that referenced
this pull request
Jul 22, 2025
…est (kvcache-ai#577) * Disable memcpy by default and improve stress workload test - Set MC_STORE_MEMCPY default to false for more stable RDMA performance - Rewrite stress_workload_test.cpp as standalone benchmark with separate PUT/GET throughput calculations - Add comprehensive performance metrics including latency percentiles and operation-specific throughput - Replace gtest dependency with gflags for better configuration flexibility * fix comments
wanyue-wy
pushed a commit
to wanyue-wy/Mooncake
that referenced
this pull request
Dec 14, 2025
…est (kvcache-ai#577) * Disable memcpy by default and improve stress workload test - Set MC_STORE_MEMCPY default to false for more stable RDMA performance - Rewrite stress_workload_test.cpp as standalone benchmark with separate PUT/GET throughput calculations - Add comprehensive performance metrics including latency percentiles and operation-specific throughput - Replace gtest dependency with gflags for better configuration flexibility * fix comments
JasonZhang517
pushed a commit
to JasonZhang517/Mooncake
that referenced
this pull request
Feb 9, 2026
…est (kvcache-ai#577) * Disable memcpy by default and improve stress workload test - Set MC_STORE_MEMCPY default to false for more stable RDMA performance - Rewrite stress_workload_test.cpp as standalone benchmark with separate PUT/GET throughput calculations - Add comprehensive performance metrics including latency percentiles and operation-specific throughput - Replace gtest dependency with gflags for better configuration flexibility * fix comments
21 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
1. Disable memcpy by default for better RDMA performance
MC_STORE_MEMCPYdefault tofalseintransfer_task.cpp2. Improve stress workload test
stress_workload_test.cppas standalone benchmark