PitchHut logo
Test Redis performance through an engaging Pong-style game.
Pitch

RedisPlay offers a playful and visual method to measure Redis performance by running a minimalist Pong-style game. It constantly updates game state at 60 FPS, using latency as a benchmark for performance. This unique approach engages users while illustrating the impact of infrastructure on real-time systems.

Description

RedisPlay is a minimalist Pong-style game created to evaluate Redis performance in the context of real-time updates, using a frame rate of 60 frames per second (FPS) as a benchmark. This innovative approach serves as a Redis Performance Test Game (PTG), where the entire game state—including score, ball position, and paddle positions—is continuously written to and read from Redis in real-time.

Key Features and Concepts

  • 60FPS Test: RedisPlay operates under the principle of maintaining a stable 60 FPS while performing constant read/write operations, allowing users to assess how latency affects performance. The performance can be qualitatively described as follows:

    • Increased infrastructure complexity and network latency result in reduced FPS.
    • A stable frame rate close to 60 FPS indicates a highly performant Redis system.
  • FPSL (FPS Latency): This concept quantifies latency-induced reductions in frame rate. It is defined as:

    FPSL = 60 - 1/L₁
    

    where L₁ represents system latency in seconds.

Modes of Play

RedisPlay features two main operating modes:

  1. Player Mode: Engage against a simple AI while measuring latency through real-time data updates in Redis.
  2. Viewer Mode (--viewer): Observe the game without interaction, ideal for simultaneous viewing scenarios.

Performance Testing

RedisPlay has been rigorously tested on a machine featuring an Intel Core i5 CPU and 16 GiB of RAM running Ubuntu 24.04.3 LTS. In optimal conditions, the game successfully maintains a stable 60 FPS, allowing for further exploration under various scenarios, such as remote servers and cloud hosting with multiple viewers.

Audio and Usability

The game comes with simple audio files created using Audacity, enhancing the overall user experience. The focus is on maintaining a straightforward and engaging gameplay loop, while offering potential optimizations and configurations that can address performance bottlenecks.

Conclusion

RedisPlay serves as a proof of concept demonstrating how visual, interactive applications can be utilized to explore and understand system performance metrics. It emphasizes the connection between latency and performance in a user-friendly manner, transforming standard benchmarking into an engaging experience. It encourages exploration of distributed system latencies and fosters creative approaches to performance optimization.

0 comments

No comments yet.

Sign in to be the first to comment.