Using Real User Monitoring (RUM) SDKs to monitor applications brings a certain amount of performance overheads. To reduce the overheads without compromising application stability, the Application Real-Time Monitoring Service (ARMS) team has optimized the SDKs with various techniques. This test report simulates running RUM SDKs for C and C++ in macOS, and tests the performance overheads. Before you use RUM to monitor your applications, you can refer to this report and evaluate application performance.
Preparations
Device data
Operating system | Device | System | CPU | Memory | Release time |
macOS | MacBook Pro 2023 | Sonoma 14.2 | M3 Pro | 36 GB | 2023 |
Compatibility
Operating systems
RUM SDKs for C and C++ can be used in Windows and macOS. The following Windows and macOS versions are compatible with RUM SDKs for C and C++.
Operating system | Operating system version |
Windows | Win 7 + (x86 and x86_64) |
macOS | 10.12 + (ARM64 and x86_64) |
Device data
Item | SDK version |
Device type | 0.1.0 + |
Device model | 0.1.0 + |
Operating system | 0.1.0 + |
Third-party libraries
You can run the curl command to obtain third-party libraries.
Item | Sub-item | Supported version |
Status | Status code | 7.64 + |
Loading status | 7.64 + | |
Error message | - | |
Resource | Resource size | 7.64 + |
Duration | Total duration | 7.64 + |
Redirection duration | 7.64 + | |
DNS duration | 7.64 + | |
TCP duration | 7.64 + | |
SSL duration | 7.64 + | |
Response duration | 7.64 + | |
Transmission duration | 7.64 + |
Performance details
ARMS has reduced the performance overheads that the RUM SDK brings to a variety of devices. This section lists the performance data obtained through simulation.
Startup duration
The following table lists the time consumed to start RUM SDK for iOS or Android in an application cold start.
Operating system | Duration (milliseconds) |
macOS | 2 - 10 |
Core service performance
Item | Startup performance | Network |
CPU utilization | 0.1% | 0.2% |
Memory usage | 1.12 MB | 92 KB |
SDK size
The following table lists the sizes of dynamic libraries that the RUM SDKs provide.
Operating system | RUM SDK V0.1.0 |
Windows | 297 KB |
macOS | 1.1 MB |