Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Times of processing bigger files resS (tested on 1.5Gb) depends on DeltaApplier buffer size #76

Open
olehgavrilyuk opened this issue Jul 9, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@olehgavrilyuk
Copy link

When processing update for a large file of resS, times of updating are big (more then 2 minutes).
This is due to DeltaApplier creating blocks of memory of size 4mb, for streams application.
If we reduce the memory size of the buffer to just 1kb, we get progressively better processing times (up to 10-15 seconds).
Why initial memory sizer of 4Mb was selected? Were other values tested as well?
Will it be ok to decrease it to 1kb as it gives a substantial boost to update of the big files.

@MeishinTale
Copy link

MeishinTale commented Jul 13, 2024

Concurred, did some testing varying DeltaApplier Buffer Size, here are the results ;

Times obtained from log traces for the update only (download not included) ;
Original Build Size : 15.6 Go
Patch Size : 51.7 mb
1kb 2min21
4kb 2min21
8kb 2min02
16kb 2min20
Original 4Mb 45min

Did some additional testing with a bigger patch to check patch size link to perf ;
Original Build Size : 15.7 Go
Patch Size : 1.4 Go
16kb 2min27
Original 4Mb 50min

Context : 9 Shared Assets files, resS sizes ranging from 2kb to 5.4 Go (3 are more than 2 Go)
All updating processes ran successfully, updated builds were launchable and appeared to work normally
Using Launcher Plus

@emanzione emanzione self-assigned this Jul 13, 2024
@emanzione emanzione added the enhancement New feature or request label Jul 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants