diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index 1240908dae172..fe43adc60bb0c 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -7689,6 +7689,11 @@ menu: parent: rum_mobile_ios identifier: rum_mobile_ios_supported_versions weight: 110 + - name: SDK Performance Impact + url: real_user_monitoring/application_monitoring/ios/sdk_performance_impact + parent: rum_mobile_ios + identifier: rum_mobile_ios_performance_overhead + weight: 111 - name: Flutter url: real_user_monitoring/application_monitoring/flutter parent: application_monitoring diff --git a/content/en/real_user_monitoring/application_monitoring/android/sdk_performance_impact.md b/content/en/real_user_monitoring/application_monitoring/android/sdk_performance_impact.md index 395a2bb9a32aa..f14ce94be5b6b 100644 --- a/content/en/real_user_monitoring/application_monitoring/android/sdk_performance_impact.md +++ b/content/en/real_user_monitoring/application_monitoring/android/sdk_performance_impact.md @@ -18,9 +18,7 @@ When integrating any SDK into your Android application, understanding its perfor ## Performance impact benchmarks -### Android SDK - -To simulate the typical usage of the Datadog SDK, it was integrated into the [Docile-Alligator/Infinity-For-Reddit][5] application and typical user behavior (in other words, scrolling the feed, browsing subreddits) was simulated. +To simulate the typical usage of the Datadog SDK, it was integrated into the [Docile-Alligator/Infinity-For-Reddit][3] application and typical user behavior (in other words, scrolling the feed, browsing subreddits) was simulated. The following SDK modules were added to the application: @@ -44,40 +42,16 @@ Below are the results of the measurements. You can read the following [page][1] for more details about these benchmarks. -### iOS SDK - -To simulate the typical usage of Datadog SDK, it was integrated into the [Beam][6] application and typical user behavior (scrolling the feed, browsing reddits) was simulated. - -The SDK features that were used: -1. Basic RUM instrumentation for tracking views, actions, and resources -2. Logging -3. Tracing - -Below are the results of the measurements. - -| Measurement | with SDK | without SDK | -|-------------------|---------------------------------|-------------| -| Peak CPU Usage | 44% | 40% | -| Peak Memory Usage | 72.4 MB | 67.96 MB | -| App startup time | 0.894 ms | 0.649 ms | -| Bundle size | 23.6 MB | 22.2 MB | -| Network usage | 21.88 KB sent, 1.68 KB received | n/a | - -You can read the following [page][2] for more details about these benchmarks. - ## Continuous benchmarks Datadog has an internal infrastructure of continuous benchmarking. There is an internal set of UI tests that run on a special benchmark application for every change made to the SDK. This way Datadog is able to detect performance regression early to ensure that they are prevented from reaching production releases. -You can find the source code of the benchmark app here: [Android][3], [iOS][4]. +See the [benchmark app source code][2]. ## Further Reading {{< partial name="whats-next/whats-next.html" >}} [1]: https://github.com/DataDog/dd-sdk-android/blob/develop/docs/sdk_performance.md -[2]: https://github.com/DataDog/dd-sdk-ios/blob/develop/docs/sdk_performance.md -[3]: https://github.com/DataDog/dd-sdk-android/tree/develop/sample/benchmark -[4]: https://github.com/DataDog/dd-sdk-ios/tree/develop/BenchmarkTests -[5]: https://github.com/Docile-Alligator/Infinity-For-Reddit -[6]: https://github.com/awkward/beam +[2]: https://github.com/DataDog/dd-sdk-android/tree/develop/sample/benchmark +[3]: https://github.com/Docile-Alligator/Infinity-For-Reddit diff --git a/content/en/real_user_monitoring/application_monitoring/ios/sdk_performance_impact.md b/content/en/real_user_monitoring/application_monitoring/ios/sdk_performance_impact.md new file mode 100644 index 0000000000000..e91f7837f5d0f --- /dev/null +++ b/content/en/real_user_monitoring/application_monitoring/ios/sdk_performance_impact.md @@ -0,0 +1,52 @@ +--- +title: SDK Performance Impact +description: Learn about how the SDK impacts performance of your application. +aliases: + - /real_user_monitoring/mobile_and_tv_monitoring/ios/sdk_performance_impact +further_reading: +- link: https://github.com/DataDog/dd-sdk-ios + tag: "Source Code" + text: dd-sdk-ios Source code +- link: /real_user_monitoring + tag: Documentation + text: Explore Real User Monitoring +--- + +## Overview + +When integrating any SDK into your iOS application, understanding its performance impact is crucial for maintaining a smooth user experience. The Datadog RUM SDK is designed with minimal performance overhead. Use these benchmarks to evaluate whether the SDK fits your app's performance budget and plan your integration accordingly. + +## Performance impact benchmarks + +To simulate the typical usage of Datadog SDK, it was integrated into the [Beam][1] application and typical user behavior (scrolling the feed, browsing subreddits) was simulated. + +The SDK features used: +1. Basic RUM instrumentation for tracking views, actions, and resources +2. Logging +3. Tracing + +Below are the results of the measurements. + +| Measurement | with SDK | without SDK | +|-------------------|---------------------------------|-------------| +| Peak CPU Usage | 44% | 40% | +| Peak Memory Usage | 72.4 MB | 67.96 MB | +| App startup time | 0.894 ms | 0.649 ms | +| Bundle size | 23.6 MB | 22.2 MB | +| Network usage | 21.88 KB sent, 1.68 KB received | n/a | + +See the [SDK performance details on GitHub][2] for more information. + +## Continuous benchmarks + +Datadog has an internal infrastructure of continuous benchmarking. UI tests run automatically on a benchmark application for every SDK change. This enables Datadog to detect performance regressions early to ensure that they are prevented from reaching production releases. + +See the [benchmark app's source code on GitHub][3]. + +## Further Reading + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: https://github.com/awkward/beam +[2]: https://github.com/DataDog/dd-sdk-ios/blob/develop/docs/sdk_performance.md +[3]: https://github.com/DataDog/dd-sdk-ios/tree/develop/BenchmarkTests