-
Notifications
You must be signed in to change notification settings - Fork 173
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
Optimize EDEngineer #715
base: master
Are you sure you want to change the base?
Optimize EDEngineer #715
Conversation
@msarilar There are some benchmarks: Tried to apply a shopping list with every blueprint included 10 times with commit f1ec43c -- after 30 minutes application freezes (no GC happens, I heavily suspect OutOfMemoryException) Given my optimizations, import took ~20 seconds if you had almost empty shopping list before and choose to clean it. |
Nice thank you will try and review soonOn 12 Dec 2022, at 11:56, Mc-Pain ***@***.***> wrote:
@msarilar There are some benchmarks:
Tried to apply a shopping list with every blueprint included 10 times with commit f1ec43c -- after 30 minutes application freezes (no GC happens, I heavily suspect OutOfMemoryException)
Given my optimizations, import took ~20 seconds if you had almost empty shopping list before and choose to clean it.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: ***@***.***>
|
This should be resolved ASAP - that's why I took the attempt to optimize. |
ping? |
7cdb398
to
68e7b82
Compare
68e7b82
to
781e656
Compare
781e656
to
b9b2316
Compare
@msarilar maybe your help is needed to optimize increment/decrement shopping list. What happens exactly when user/EDEvent changes shopping list? |
ED Engineer operates very slow, especially on large shopping lists.
There are some bottlenecks and excessive operations when updating UI or importing/clearing shopping lists.
For example:
Multiple calling this.ToList(), which calculates a new object while we can store it somewhere if it's unchanged.
Updating UI or saving settings when importing or clearing shopping list (both are time expensive)
[source branch was renamed]