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

Большое потребление памяти #149

Open
MonkAlex opened this issue Nov 27, 2019 · 6 comments
Open

Большое потребление памяти #149

MonkAlex opened this issue Nov 27, 2019 · 6 comments
Labels
avalonia any issue with avalonia interface enhancement
Milestone

Comments

@MonkAlex
Copy link
Owner

На базе размером в 100-150мб приложение может потреблять порядка 1гб памяти.
При этом, если походить по вкладкам настроек или поиска, библиотека может сломаться (пока подозрение на GC).

По памяти - надо понять, куда столько уходит, пооптимизировать.
По визуальной части библиотеки - надо найти причину и починить.

@MonkAlex MonkAlex added bug avalonia any issue with avalonia interface labels Nov 27, 2019
@MonkAlex MonkAlex added this to the 1.50 milestone Nov 27, 2019
@MonkAlex
Copy link
Owner Author

MonkAlex commented Jan 7, 2020

Память уходит на картинки.
GC их выгружает (т.к. они созданы исключительно для отображения, их действительно можно выгрузить).

При работе под dotMemory библиотека не ломается, картинки загружаются обратно корректно.

@MonkAlex
Copy link
Owner Author

MonkAlex commented Jan 8, 2020

Рендер всё ещё ломается, но непонятно - на чём. Пока есть подозрение, что дело в параллельным обращениям к разным моделькам (поиска и библиотеки например), но подтвердить не удалось.

Для оптимизации стоит посмотреть в сторону виртуализации, но тут непонятно что делать с разметкой - сейчас используется wrappanel (для библиотеки и поиска), а виртуализации готовые только для stackpanel.

@MonkAlex
Copy link
Owner Author

Вчера было почти стабильное проявление на открытии свойств разной манги подряд.

@MonkAlex
Copy link
Owner Author

Стабильное проявление:

  1. Открыть библиотеку.
  2. Клацнуть диалог удаления истории
  3. Отменить
  4. Открыть свойства

В фоне упадёт IPNC, см AvaloniaUI/Avalonia#3468 (comment)

Есть и другие проявления, но их стабильно не удалось достать.

@MonkAlex
Copy link
Owner Author

MonkAlex commented Apr 5, 2020

Баг с пропаданием контента исправлен.

Проблема с пожиранием памяти осталась, как выше и написано - требуется виртуализация, а её никак просто не включить.

@MonkAlex MonkAlex modified the milestones: 1.50, Deffered Apr 5, 2020
@MonkAlex
Copy link
Owner Author

Доходит до 2гб, выглядит на самом деле близко к критичному.
Посмотреть на авалонию в 0.10, возможно получится сделать всё таки библиотеку с виртуализацией.

@MonkAlex MonkAlex changed the title Большое потребление памяти и убийца GC Большое потребление памяти Mar 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
avalonia any issue with avalonia interface enhancement
Projects
None yet
Development

No branches or pull requests

1 participant