The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Раздел полезных советов: Эксперименты по борьбе с утечками памяти Telegram Desktop, auto_tips, 14-Май-21, 00:16  [смотреть все]
Известны жалобы о больших утечках памяти в Telegram Desktop на Linux, не наблюдаемых в таких же объемах на других ОС, в частности Windows и FreeBSD. В рамках проверки гипотезы о том, что дело в реализации системного аллокатора и настройках автопроигрывания медиа, помогающие автору TDesktop [[https://t.me/kepka_support/42874 энтузиасты]] создали канал https://t.me/tdesktop_crash, продолжительная прокрутка которого должна приводить к утечкам памяти. При этом при нормальном поведении закрытие этого окна (переключение на другой чат) должна освобождать память.

Выяснилось, что на Windows при переключении чата память освобождается, на обычном Linux glibc - не освобождаются несколько Гб, но происходит почти полное освобождение через некоторое время, если запустить Telegram Desktop с аллокатором jemalloc из FreeBSD (пример для Debian, подробности
см. в [[https://github.com/jemalloc/jemalloc/wiki/Getting-Started документации jemalloc]]):

  LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2 telegram-desktop

Аналогичные (или даже лучше) результаты были получены на дистрибутивах без glibc, например [[https://alpinelinux.org/ Alpine]], где применяется musl.

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

URL: https://t.me/tdesktop_crash
Обсуждается: https://www.opennet.ru/tips/info/3184.shtml




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру