Search Issue Tracker
Won't Fix
Votes
0
Found in
2020.3.42f1
2021.3.15f1
2022.1.24f1
2022.2.1f1
2023.1.0a22
Issue ID
UUM-20629
Regression
Yes
[iOS] Concurrent downloads have become slower when using UnityWebRequest
How to reproduce:
1. Open the attached project "BundleDownload.zip" on 2019.2.7f2 or lower
2. Build and Run the Scene "bundledownload" for iOS
3. In the build, change the number in the Text field to a value between 2 and 20
4. Press the "DL Many" button
5. Once the downloads finish, observe the time it took, shown in the bottom left
6. Upgrade a project to a version from the list of reproducible versions
7. Repeat steps 1-5
8. Compare the time values
Expected result: On newer versions, it takes the same amount of time, or less to complete the download
Actual result: There is a noticeable increase in download time
Reproducible with: 2019.2.8f1, 2020.3.42f1, 2021.3.15f1, 2022.1.24f1, 2022.2.1f1, 2023.1.0a22
Not reproducible with: 2019.2.7f2
Reproduced with:
- iPhone 13 (iOS 15.0), using Wifi connection
- iPhone 12 mini (iOS 14.1), using Wifi connection
Notes:
- See comments for some additional information
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Mono Windows Builds don't produce full log callstacks when generating logs
- AssetBundles fail to load when running in Built Players for Mobile Devices
- UI elements with text gets bigger and grey when Player window is moved to another screen with different resolution
- System name accepts multiline text but crops it on confirmation, duplicates input, and shrinks the field when empty
- UI element scale and position are wrong in project build when DRS is changed with HDR and Software Dynamic Resolution enabled
Resolution Note:
The change that happened in 2019.2.8 was a switch to using single NSURLSession for all downloads. The reason for change was to reduce memory usage, as separate session per request meant not only more memory used, but there were also issues related to how iOS handles secure connections under the hood, keeping some resources for a while in use even after request is complete, resulting in memory usage increase with each request in a memory-leak like fashion.
Also, on mobile platforms network speed usually plays a more significant role, speed tests using great wi-fi connection are a bit synthetic.
We believe that lower footprint for handling requests is more valuable here and it's a worthy tradeoff to have slightly slower individual downloads.