Python

Как да използвам PyCharm Memory Profiler

Как да използвам PyCharm Memory Profiler
В професионален и индустриален мащаб, докато пишете код за приложение, едно от основните неща, които програмистът трябва да вземе предвид, е оптимизацията на кода. Писането на оптимизиран код е изкуство, което изисква много знания и опит. Оптимизацията на кода е писане на чист, правилен и ефективен код, който използва минимални хардуерни ресурси, за да изпълни програмата.

Дори и да не сте програмист, можете да се обърнете към важността на оптимизираното кодиране. Да предположим, че използвате софтуер и отнема много време за зареждане. След известно време става много забавено и бавно. Тези проблеми могат да възникнат поради няколко различни причини, но почти в 90% от случаите причината за това е, че софтуерният код не е оптимизиран, като по този начин се използват много ресурси на вашата система, което води до изоставане.

В програмирането има много начини за решаване на необходимия проблем, изкуството на програмирането е да се знае кой метод ще бъде най-ефективен, кога да се използва какъв алгоритъм за минимизиране на времето и паметта, необходими за стартиране на програмата.

Профилатор на паметта PyCharm

Оптимизирането на код може да отнема много време и е трудна задача, но вече не. Не би ли било страхотно, ако вашата IDE (интегрирана среда за разработка) имаше опция, от която можете да видите колко памет изисква всяка отделна част от кода ви? Е, PyCharm има точно това, от което се нуждаете. Ето профила на паметта на PyCharm. Можете да оптимизирате вашите python скриптове, както и Node.js приложения в PyCharm.

Приставки

Преди да започнем, уверете се, че всички необходими плъгини са инсталирани и активирани. Уверете се, че UML и NodeJS плъгините са инсталирани и изпълнени за профилиране на Python и Node.js, съответно. За да инсталирате споменатите приставки, следвайте инструкциите, дадени по-долу.

Отворете PyCharm и отидете в настройките, като натиснете Ctrl + Alt + S

Отидете на приставки и напишете NodeJS и щракнете върху инсталиране.

Сега превключете разделите от Marketplace към Installed и в лентата за търсене въведете „UML.”Щракнете върху активиране. Щракнете върху Приложи. След това щракнете върху бутона за рестартиране сега.

Профили

PyCharm ви позволява да използвате базиран на проби профил на V8 за профилиране както на процесора, така и на паметта на NodeJS файлове. За python използва yappi, ако е инсталиран; в противен случай използва стандартния cProfile. За профилиране на паметта можете да използвате профилиране на памет за Python.

Профилиране на Python:

PyCharm ви позволява безпроблемно да профилирате вашия Python скрипт. След като приключите с кодирането на вашия скрипт, щракнете върху иконата за щракване в основната лента с инструменти, разположена в горния десен ъгъл под бутона за минимизиране. Или можете да отидете на бягай тогава профил .

Тук PyCharm записва резултата от вашия профил в a .pstat и го показва в новия раздел, наречен .pstat.  

Обратно към изходния код:

Можете да се върнете към изходния код, като щракнете с десния бутон върху името на функцията и след това щракнете Отворете изходния код в под-раздела с име Статистика. По този начин ще се върнете към изходния код на тази конкретна функция.

Графичен изглед:

По същия начин можете да видите кода си в графична форма в Графика на обажданията раздел.

V8-Профилиране на паметта:

За профилиране на уеб трябва да разрешите профилиране на V8. За това отидете на Конфигурации за изпълнение / отстраняване на грешки. Превключете на V8 Профилиране раздел. Проверете и двете Записвайте информация за профилиране на процесора и Позволете да правите куп снимки квадратче за отметка. В Дневник на записите, можете да посочите папката, в която да се съхраняват всичките ви данни от дневника за профилиране.

Щракнете Приложи тогава Добре.

Изпълнете кода си. И по време на изпълнение, щракнете върху раздела run-tool.

Посочете името и местоположението за моментната снимка и изберете Отворете Snapshot ако искате да започнете да оценявате моменталната снимка, направена незабавно.

За да оцените снимки на снимки, направени по различно време, отидете на инструменти тогава v8 профилиране тогава  Анализирайте V8 Heap Snapshots. Прегледайте файла с изстрел, който искате да анализирате. Създава се отделен раздел с неговото име, същото като името на избрания изстрел.  Ограничение раздел показва вашите обекти на приложения, групирани в Корените на събирача на боклук, обекти на браузъра и обекти на DOM Windows. Най-големият обект ви показва обекта, който консумира най-много памет. Тук може да се диагностицира изтичане на памет поради съхранение на данни в глобални обекти. The Обобщение раздел, както подсказва името, показва общото резюме на анализа. Той дава преглед на обекти във вашето приложение. Тук е показан общият брой обекти от всеки тип заедно с информацията за техните размери и паметта, която те консумират (в проценти).

Да се ​​прави разлика между обекти и движения без загуба на контекст. Задайте етикета на който и да е обект, като го изберете и щракнете върху иконата на отметка в горния десен ъгъл. Посочете етикета в изскачащия диалогов прозорец.

Програмен код:

За да видите изходния код на определен обект, изберете този обект и кликнете върху иконата на молив в лентата с инструменти. Или изберете Редактиране на източника. В случай че опциите в менюто са сиви, означава, че не е намерена функция, съответстваща на избрания обект. В случай, че бъдат намерени множество функции, те се показват под формата на списък с предложения.

Търсене на снимки:

Можете да извършвате търсения на моментни снимки, като щракнете върху иконата за търсене в Ограничение раздел.  За търсене могат да бъдат посочени различни обхвати. За .д.ж. ако Навсякъде отметка в квадратчето, тя ще търси във всички области. Имена на класове търси сред конструктора на функции. Текстови низове търси в текста на дефинираните функции. Марки квадратчето е отметнато, когато искате да търсите сред етикетите си, които сте задали на обекти, като щракнете върху иконата на отметка в контейнер раздел. Накратко, PyCHarm ви дава много опции за навигация през изстрелите.

Заключение:

Pycharm има много различни функции, за които повечето начинаещи програмисти не са наясно и тези функции могат да ви помогнат да кодирате много по-добре. И това не е така само за PyCharm. Почти всяка IDE предлага някои удобни функции, които не се използват от голяма част от потребителите. Затова трябва да търсим тези малки функции, които могат да окажат значително влияние върху нашето кодиране и в положителен смисъл.

Най-добрите дистрибуции на Linux за игри през 2021 г
Операционната система Linux е изминала дълъг път от първоначалния си, прост, базиран на сървъра външен вид. Тази операционна система се подобри неимов...
Как да заснемете и поточно предадете игралната си сесия на Linux
В миналото играта на игри се смяташе само за хоби, но с течение на времето игралната индустрия отбеляза огромен ръст по отношение на технологиите и бр...
Най-добрите игри за игра с ръчно проследяване
Oculus Quest наскоро представи страхотната идея за ръчно проследяване без контролери. С непрекъснато нарастващия брой игри и дейности, които изпълнява...