Size: a a a

2019 December 04

in

ildar nizamov in rannts
тебе точно ничего :) эта штука нужна разработчикам для поиска ошибок в работе с памятью.
источник

in

ildar nizamov in rannts
для поиска утечек прендазначен LeakSanitizer, но в виндах его нет
источник

in

ildar nizamov in rannts
> LeakSanitizer is not supported on Windows yet. LeakSanitizer requires being able to stop the process at exit or some other point to scan for live pointers. This is called “StopTheWorld”, and the posix implementation uses ptrace, which is not available on Windows.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
💭 Руслан Прохоров
И чё мне с ним делать?
Попробуй для начала muppy - вдруг у тебя питонячие объекты подвисают в памяти. Уж 14Гб точно увидишь.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Вот пример вьюшки, которая выводит CSV со статистикой по занятому в питоне месту. Думаю сам сможешь адаптировать её под, например, сохранение в файл. Натыкай в разных местах своего кода вызов такой функции и сравнивай потом csv-шки - смотри что там растёт.
https://pastebin.com/9nriS8Sy
источник

💭П

💭 Руслан Прохоров in rannts
Kirill (Cykooz) Kuzminykh
Попробуй для начала muppy - вдруг у тебя питонячие объекты подвисают в памяти. Уж 14Гб точно увидишь.
греный NDA.

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

И куда вот эти все "методы" получения состояния памяти воткнуть я не совсем понимаю (
источник

AG

Alexander Gorokhov in rannts
💭 Руслан Прохоров
И чё мне с ним делать?
На пойконе ру в этом году был доклад про профилировщики, глянь там тулы
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
💭 Руслан Прохоров
греный NDA.

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

И куда вот эти все "методы" получения состояния памяти воткнуть я не совсем понимаю (
Ну воткни тогда до запуска, и после запуска
источник

AG

Alexander Gorokhov in rannts
Ещё есть memory_profiler
источник

💭П

💭 Руслан Прохоров in rannts
Alexander Gorokhov
На пойконе ру в этом году был доклад про профилировщики, глянь там тулы
Спасибо.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Хотя может хватит одного вызова после того как тесты отработают - 14Гб это не кот начхал
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Инструменты всякие есть, основная проблема с ними - понять как их использовать и как интерпретировать их результаты для поиска утечек. Один готовый вариант алгоритма для быстрой проверки я привёл. А дальше используй это как уж получится.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Когда поймёшь что утечки именно в питоне, например из-за циклических ссылок в объектах, то дальше могут понадобится другие инструменты, которые покажут как объекты между собой связаны и где у них там циклические ссылки.
источник

in

ildar nizamov in rannts
💭 Руслан Прохоров
греный NDA.

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

И куда вот эти все "методы" получения состояния памяти воткнуть я не совсем понимаю (
воткни первой и последней строчкой главной функции твоего скрипта
источник

💭П

💭 Руслан Прохоров in rannts
Kirill (Cykooz) Kuzminykh
Когда поймёшь что утечки именно в питоне, например из-за циклических ссылок в объектах, то дальше могут понадобится другие инструменты, которые покажут как объекты между собой связаны и где у них там циклические ссылки.
Спасибо
источник

💭П

💭 Руслан Прохоров in rannts
Alexander Gorokhov
Ещё есть memory_profiler
Обломался он (
источник

💭П

💭 Руслан Прохоров in rannts
Из-за сложного импорта можелей, и их подгрузкой в рам тайме, он тупо при чтение файла не видит их и не видит путей к ним (
источник

AM

Artem Malyshev in rannts
🦉 Neil Kulikov
Я вангую, что C++ выдлеляет память, когда передаёт результат, а питон его не удаляет. А вообще попробуй pdb - там вроде есть возможность отследить утечки
Как искать утечки через pdb? Скинь ссылку на почитать плиз.
источник

AB

Andrei Burakov in rannts
toni pirogov
А по джанго какой курс посоветуете, для общего развития
у мозиллы неплохой, вроде
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
источник