A Complete Guide to Analyzing Variable Refresh Rates and Stuttering in iOS Games with Keymob
1. Core Concepts
1.1 Variable Refresh Rate (ProMotion)
iOS devices (such as iPad Pro, iPhone 13 Pro, and newer models) support adaptive refresh rates between 10Hz and 120Hz. The screen dynamically adjusts its refresh rate based on the content to balance smoothness and power consumption.
1.2 Stuttering Detection (Frame Pacing Analysis)
Apple introduced frame stability analysis in iOS 15+, which tracks frame submission times to determine smoothness. The difference between FPS and stuttering detection:
Metric | FPS (Frame Rate) | Stuttering Detection |
---|---|---|
Focus | Total frames rendered per second | Stability of frame submission times |
Scene Sensitivity | May drop to 0 during idle times | Always reflects real user interaction |
Common Issues | High average FPS with stuttering | Accurately captures dropped frames and rendering delays |
2. Step-by-Step Process
2.1 Entering the Monitoring Interface
- Connect the iOS device to the Keymob tool
- Click the “Performance Charts” option on the left sidebar → Select the “Show Performance” submenu
2.2 Enable Monitoring Metrics
- In the top-right corner, check the following metrics:
- “Variable Refresh Rate”: Displays the real-time refresh rate of the screen (in Hz)
- “Stuttering Detection”: Records frame submission delays and stuttering occurrences
2.3 Start Monitoring
- Click the “Start” button, and the tool will automatically capture global display data (no need to select a specific app as this involves system-level parameters)
- Perform game actions on the device (such as combat scenes, map loading, etc.)
2.4 Data Analysis
- Variable Refresh Rate Curve:
- Normal range: 10Hz (static interface) - 120Hz (high-speed motion)
- Abnormal case: Constantly locked at 60Hz (may not support ProMotion)
3. Key Considerations
-
Device Requirements
- Variable refresh rate monitoring is only supported on iPhone 13 Pro and newer models
- “Developer Mode” must be enabled (Settings → Privacy & Security → Developer Mode)
-
Key Points for Data Interpretation
- A brief drop to 24Hz may be normal for video playback adaptation
- Games should prioritize frame stability rather than blindly chasing 120Hz
-
Performance Optimization Tips
- Use
CAShapeLayer
instead ofUIBezierPath
for high-frequency UI updates - Set
layer.shouldRasterize = true
for static elements
- Use
4. FAQ
Q1: The refresh rate on the monitor always shows 60Hz?
- Check if the game declares support for ProMotion:
1<key>CADisableMinimumFrameDurationOnPhone</key> 2<true/>
- Verify if Low Power Mode is enabled (forces a 60Hz lock)
Q2: Stuttering occurs frequently but FPS appears normal?
- Typical multithreading issue:
- Background threads occupying GPU resources (e.g., asynchronous drawing not synchronized)
- Use
MTLSharedEvent
to coordinate rendering timing
Q3: How to distinguish between system stuttering and app stuttering?
- System-level stuttering characteristics:
- Multiple apps experience stuttering peaks simultaneously
- Accompanied by memory pressure warnings (verify through Keymob’s memory monitoring)
- iOS Crash Log Analysis
- iPhone & iPad File Management Without Jailbreak
- Copy Photos and Videos from iPhone to Computer
- Export, Backup, and Migrate iPhone Contacts
- Viewing Usage Records on iPhone and iPad
- Install and Sign Up
- Device Information for Ios
- View Real-Time Logs of iOS Apps
- OS App Management with KeyMob
- Configuration & Profile Management
- How to View Saved Performance Data
- Monitoring CPU Usage of iOS Apps
- Monitoring iOS App Memory
- Start with KeyMob
- Monitoring Network Usage on iOS Devices
- Monitoring Disk I/O of iOS Applications
- Monitoring iOS Game FPS
- Monitoring iOS Device GPU Usage
- Analyzing iOS App Power Consumption
- Managing iPhone/iPad Files
- Exporting iOS App Files
- System File Directory of iOS
- iOS Device Logs and Crash Reports
- iOS Device Battery History
- iOS App Usage and Energy Consumption History
- Hardware Component Usage and Energy History
- iOS App Background Running and Energy History
- 系统文件
- 安装与注册
- 苹果设备信息查看
- 实时日志
- 奔溃日志分析
- 苹果手机文件管理
- 保存苹果手机相册到电脑
- 苹果手机通讯录迁移
- 手机应用管理
- 性能记录存储
- 苹果手机使用记录查看
- 配置描述文件管理
- 用户文件
- 应用文件
- 克魔简介
- 日志文件
- cpu监控
- 内存监控
- 卡顿监控
- 网络监控
- 磁盘监控
- fps监控
- gpu监控
- app能耗
- 电池电量历史
- 应用耗能记录
- 硬件耗能记录
- 软件后台运行记录