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

  1. 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.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.