[PR #791] [MERGED] [Store] Update stress_cluster_benchmark.py (Multi-thread mooncake store benchmark) #1825

Closed
opened 2026-10-29 21:30:39 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/kvcache-ai/Mooncake/pull/791
Author: @ChaosD
Created: 8/29/2025
Status: ✅ Merged
Merged: 8/29/2025
Merged by: @stmatengss

Base: main ← Head: new_stress_benchmark-dev


📝 Commits (1)

  • 5a68f51 Update stress_cluster_benchmark

📊 Changes

1 file changed (+13 additions, -15 deletions)

View changed files

📝 mooncake-store/tests/stress_cluster_benchmark.py (+13 -15)

📄 Description

  1. This PR optimizes the Wall Throughput calculation for multi-threaded tests .

The current Wall Throughput is calculated as total data size / memory barrier time. This metric is inaccurate because the barrier time includes:

  • The manually set wait_time.

  • Overhead from the Python GIL during barrier operations.

Update: The new calculation is total data size / max(work time across all threads). This provides a more realistic measure of the system's actual data transfer efficiency.

  1. Issues for Discussion:

Prefill Key Contention: All prefill threads currently operate on the same, non-partitioned key range. This causes frequent operation failures, which severely impacts performance. Suggestion: Should we partition the I/O key range among threads to eliminate this contention?

Throughput Calculation Ambiguity: The current operation throughput is calculated as sum(transfer_size) / sum(latency of all operations). This formula represents the average throughput per thread rather than the system's total aggregate throughput under concurrent load.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/kvcache-ai/Mooncake/pull/791 **Author:** [@ChaosD](https://github.com/ChaosD) **Created:** 8/29/2025 **Status:** ✅ Merged **Merged:** 8/29/2025 **Merged by:** [@stmatengss](https://github.com/stmatengss) **Base:** `main` ← **Head:** `new_stress_benchmark-dev` --- ### 📝 Commits (1) - [`5a68f51`](https://github.com/kvcache-ai/Mooncake/commit/5a68f51d818b1cdf667f3d8fd5887de94261adf4) Update stress_cluster_benchmark ### 📊 Changes **1 file changed** (+13 additions, -15 deletions) <details> <summary>View changed files</summary> 📝 `mooncake-store/tests/stress_cluster_benchmark.py` (+13 -15) </details> ### 📄 Description 1. This PR optimizes the `Wall Throughput` calculation for multi-threaded tests . The current `Wall Throughput` is calculated as **total data size / memory barrier time**. This metric is inaccurate because the barrier time includes: - The manually set wait_time. - Overhead from the Python GIL during barrier operations. Update: The new calculation is **total data size / max(work time across all threads)**. This provides a more realistic measure of the system's actual data transfer efficiency. 2. Issues for Discussion: Prefill Key Contention: All prefill threads currently operate on the same, non-partitioned key range. This causes frequent operation failures, which severely impacts performance. Suggestion: Should we partition the I/O key range among threads to eliminate this contention? Throughput Calculation Ambiguity: The current `operation throughput` is calculated as **sum(transfer_size) / sum(latency of all operations)**. This formula represents the average throughput per thread rather than the system's total aggregate throughput under concurrent load. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-29 21:30:39 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kvcache-ai/Mooncake#1825
No description provided.