Memory Profiler er nýr pakki fyrir Unity 2018.3 eða hærri sem gerir þér kleift að greina minnisnotkun verkefnis til að finna minnisleka og sundrungu. Minni leki getur átt sér stað þegar minni er úthlutað en er aldrei sent til endurnotkunar eftir að minni er ekki lengur þörf. Í þessari kennslu muntu læra hvernig á að nota Memory Profiler til að athuga hvort minni leki sé.
Minnisprófíllinn
Með minni sniðmáti geturðu greint minnisnotkun verkefnis til að finna leka og sundrungu. Minnisleka getur átt sér stað þegar minni er úthlutað en ekki sleppt eftir að ekki er þörf á því lengur. Frammistaða forritsins rýrnar þegar minnið klárast, sem að lokum leiðir til þess að forritið (og hugsanlega jafnvel hýsingartækið) hrynur. Þegar minni er úthlutað í marga litla reiti frekar en í smærri samliggjandi reitum er það kallað minnisbrot. Þar af leiðandi eru litlu, óúthlutuðu minnissvæðin milli úthlutaðra kubba ekki lengur tiltæk til notkunar.
Uppsetning minni sniðmátsins
Memory Profiler vinnur með Unity Editor og þróunaruppbyggingu og er fáanlegur í pakkastjórnuninni sem forskoðunarpakka.
Hvernig á að setja upp Memory Profiler:
1. Í Unity Editor velurðu Package Manager frá glugganum.
2. Smelltu á Advanced og veldu Show Preview Packages.
3. Finndu Memory Profiler og smelltu á Setja upp í neðra hægra horninu á pakkastjórnunarglugganum.
4. Eftir uppsetningu geturðu fengið aðgang að Memory Profiler með því að velja „Analysis“> „Memory Profiler“ í fellilistanum „Window“.
Taktu upp mynd af minni
Geymsluprófíllinn getur annaðhvort miðað á þróun sem er í gangi á staðbundinni tölvu eða úthlutað henni sérstakt IP -tölu fyrir nettengda tölvu.
1. Áður en þú getur tekið sorphaug þarftu að velja áfangastað. Sjálfgefið er að markmiðið sé Unity ritstjórinn.
2. Til að velja nýtt mið, smelltu á fellivalmyndina efst í vinstra horni Memory Profiler.
Smelltu á Capture hnappinn til að fanga núverandi geymsluprófíl valda miðans. Athugið að handtaka sjálft tekur smá minni. Í sumum tilfellum getur þetta valdið því að skotmarkið stöðvast eða hrynur þegar minnið klárast.
Flytja inn skyndimynd af handtaka minni
1. Smelltu á Import hnappinn efst í gluggann Memory Profiler.
2. Notaðu fellivalmyndina File Format í neðra hægra horninu á Import Snapshot File valmyndinni til að velja snið geymslumyndarinnar sem þú vilt flytja inn. Meðal valkosta eru .snap skrár teknar með Memory Profiler og .memsnap * skrár búnar til með Bitbucket Memory Profiler.
3. Farðu í skyndimyndina þína og veldu hana. Smelltu á Opna.
4. Í fyrsta skipti sem þú tekur minnismynd, verður mappa sem heitir MemoryCaptures búin til (á sama stigi og eignamappan, ekki í þessari möppu). Þú getur líka vistað skyndimyndir í þessari möppu til að gera þær aðgengilegar.
5. Skoðaðu minniskastið
Eftir að hafa tekið eða flutt inn (þ.mt að færa skyndimyndina í MemoryCaptures möppuna) birtist myndin í vinstri dálkinum í gluggann Memory Profiler. Smelltu á Opna til að skoða geymsluprófílinn.
Staðlað og innsæi útsýnið er tréuppbyggingin (mynd 06). Þessi skoðun sýnir magn minnis sem hver frumefnisgerð notar í hlutfalli. Í dæminu okkar taka 126 shaders samtals 80 MB vinnsluminni.
Til að skoða flokkinn nánar, smelltu á hann til að skoða öll atriðin og viðkomandi fótspor þeirra. Nánari upplýsingar eru birtar í töflu fyrir neðan tréuppbyggingu. Smelltu á fyrirsagnirnar til að raða töflunni eftir gildi eða hópi.
Taflusýnin, sem er staðsett bæði undir tréuppbyggingu og undir minniuppbyggingu, inniheldur nákvæmari upplýsingar um minni notkun einstakra þátta.
Beinna útsýni, Memory Map, sýnir minnisskipulagið í mismunandi litum sem sýna mismunandi minni gerðir. Þetta getur verið gagnlegt til að finna minnisbrot.
Vinna með Memory Profiler
Finndu minnisleka
Hvernig á að finna minnisleka:
1. Ræstu spilarann, stilltu hann sem vistunarsnið og taktu mynd af tómu atriði.
2. Hladdu senunni sem þú vilt prófa. Spilaðu hluta vettvangsins til að hlaða nauðsynlegum eignum.
3. Losaðu senuna með því að slá inn Resources.UnloadUnusedAssets () eða með því að hlaða / búa til tóma senu tvisvar
4. Taktu aðra skyndimynd og lokaðu spilunarham.
5. Hlaðið fyrsta og seinni skjámyndinni í vinnubekkinn og smelltu á Diff. Eining reiknar út mismuninn á skjámyndunum tveimur. Þetta gæti tekið nokkrar sekúndur eftir stærð myndarinnar.
6. Í töfluskjánum, smelltu á fyrirsögnina Diff dálkinn og veldu Group.
7. Færslur eru flokkaðar: þær sömu, í báðum skyndimyndunum, frá fyrstu eytt skyndimyndinni og nýrri. Nýjar færslur eru möguleg minni leki.
Memory Profiler er frábær leið til að fylgjast með minni notkun verkefnisins.
Þú getur ekki aðeins séð hvað notar mest geymslurými, heldur geturðu líka séð hvernig verkefnið þitt notar eða misnotar geymslurými. Minnisleka og sundrung eru tvö algengustu vandamálin sem hafa áhrif á verkefnið
og Memory Profiler leysir það.
Upphaflega sent 2020-03-16 16:46:00.