Qligħ:
- Billi l-ewwel tieħu profil u tkejjel il-konġestjoni reali, tagħmel ottimizzazzjoni bbażata fuq data aktar milli suppożizzjonijiet u jkollok l-output tal-profil interpretat minn intelliġenza artifiċjali
- Kapaċità li timmira l-aktar operazzjoni għalja f'termini ta 'ħin tal-istartjar, ħeffa, memorja u batterija u tneħħi x-xogħol tqil mill-ħajt prinċipali
- Kapaċità li timmaniġġja l-ispiża tal-batterija u l-proċessur tal-kapaċitajiet tal-AI bħal mudell fuq l-apparat u sejħa fuq il-cloud permezz ta’ kampjunar u proċessar tal-lott
L-utenti tal-mowbajl huma paċenzja. Jekk l-app tiftaħ bil-mod, tistrieħ waqt li tiskrollja, jew tbattal il-batterija malajr, l-utent iħassarha u jagħtiha klassifikazzjoni ta 'stilla fil-maħżen. Il-prestazzjoni u l-effiċjenza tal-batterija huma kwistjoni ta 'sopravivenza ta' app mobbli; Taffettwa direttament kemm is-sodisfazzjon tal-utent kif ukoll il-klassifikazzjoni tal-maħżen. L-AI hija għajnuna qawwija fl-iskoperta ta 'konġestjonijiet fil-prestazzjoni (konġestjonijiet), tinterpreta r-riżultati tal-kejl, u tirrakkomanda ottimizzazzjonijiet. Iżda r-regola tad-deheb tibqa ': l-ewwel kejjel, ottimizza aktar tard. F'din l-unità, se nitgħallmu nsolvu l-problemi tal-prestazzjoni u tal-batterija b'mod ibbażat fuq id-dejta bl-AI. Kwistjoni partikolarment importanti hija l-ġestjoni tal-impatt fuq il-batterija u l-prestazzjoni tal-kapaċitajiet tal-AI li żidna f'unitajiet preċedenti (mudell fuq l-apparat, sejħa cloud).
Ottimizzazzjoni mingħajr kejl
L-akbar żball ta 'żviluppatur mingħajr esperjenza huwa l-ottimizzazzjoni tat-tbassir: ħela ta' ħin tgħid "dan għandu jkun bil-mod". Il-konġestjoni vera hija kważi dejjem f'post mhux mistenni. Allura l-ewwel jittieħed il-profil (profiling — kejl liema parti tal-applikazzjoni tikkonsma kemm ħin/memorja/batterija). Android Studio Profiler u Xcode Instruments huma għal dan ix-xogħol. L-għoti tad-dejta tal-kejl lill-AI tħaffef l-interpretazzjoni; Iżda mingħajr kejl, li tgħid lill-AI "l-applikazzjoni tiegħi bil-mod, tħaffefha" tfisser li tagħmel tbassir bl-addoċċ.
L-erba’ assi ewlenin tal-prestazzjoni huma:
assi
sintomu
kawża tipika
Ħin tal-bidu
L-applikazzjoni tiftaħ tard
Xogħol tqil fuq il-ħajt prinċipali
Ħeffa (jank)
Scroll jeħel
Ipproċessar twil, tfassil mill-ġdid mhux meħtieġ fil-ħajt tal-UI
memorja
nefħa, kollass
Tnixxija, immaġni kbira, cache mhux ikkontrollat
batterija/sħana
eġakulazzjoni mgħaġġla
Post kontinwu, netwerk, sensur, xogħol fl-isfond
Tip: Meta tistaqsi lill-AI dwar kwistjoni ta 'prestazzjoni, agħti l-output tal-profil (liema funzjoni tieħu kemm żmien, graff tal-memorja). Dejta iebsa bħal "Dik il-funzjoni tieħu 30ms għal kull qafas" tippermetti lill-AI tiffoka fuq il-konġestjoni reali; Frażi suġġettiva bħal "bil-mod" tipproduċi tweġiba ġenerika u inutli.
Spiża tal-batterija tal-abbiltajiet tal-AI
Il-karatteristiċi AI li żidna f'dan il-modulu huma b'saħħithom, iżda mhumiex ħielsa. L-estrazzjoni ta' mudell fuq l-apparat tisforza l-proċessur u l-batterija; Rikonoxximent tal-immaġini li jaħdem kontinwament (eż. kamera li tipproċessa kull frejm) issaħħan it-telefon u tixxotta l-batterija fi ftit minuti. Sejħiet Cloud AI, min-naħa l-oħra, jieklu l-batterija billi jżommu r-radju tan-netwerk (l-antenna li tibgħat u tirċievi d-data) il-ħin kollu. Soluzzjonijiet: mexxi l-mudell fuq l-apparat biss meta jkun meħtieġ, kampjun tal-kamera ftit drabi kull sekonda minflok kull frejm, lott ibgħat talbiet ta 'sħab, agħmel l-irfigħ tqil waqt li l-apparat ikun qed jiċċarġja jew idle.
Attenzjoni: Karatteristika AI li taħdem b'mod kostanti (traduzzjoni diretta, rikonoxximent kontinwu ta 'oġġett) tista' tixxotta l-batterija malajr ħafna, issaħħan l-apparat, u tista 'tiġi throttled mis-sistema. Karatteristika li tagħmel lill-utent iħoss li din l-ispiża hija mħassra. Jien dejjem nistaqsi lill-AI "kif nagħmel din il-karatteristika faċli għall-batterija?" Staqsi wkoll il-mistoqsija.
Passi ta 'ottimizzazzjoni
- Miżura. Sib il-konġestjoni reali ma Profiler; taqtax.
- Agħżel l-akbar problema. M'għandekx chase titjib ta '1%; Immira għat-tranżazzjoni l-aktar għalja.
- Staqsi lill-AI bid-dejta. Itlob suġġeriment ta 'ottimizzazzjoni b'output tal-profil + kodiċi rilevanti.
- Applika u erġa' kejjel. It-titjib huwa reali? In-numru niżel?
- Kontroll tar-rigressjoni. L-ottimizzazzjoni kisret xi ħaġa? Irrepeti l-ittestjar viżwali u funzjonali.
tliet każijiet żgħar
Każ 1 — Tiftix fil-post ħażin. Tim wieħed ħaseb li l-listi kienu mwaħħla u ħadmu mill-ġdid il-kodiċi ta 'scrolling għal ġimgħat għalxejn. Meta ħadu l-profiler u taw id-dejta lill-AI, irriżulta li l-konġestjoni vera kienet l-immaġini li qed jerġgħu jitgħabbew fuq in-netwerk ma 'kull ringiela. Meta ġiet miżjuda l-cache viżwali, il-ħeffa żdiedet minn 42 FPS għal 60 FPS. Lezzjoni: il-kejl jevita ġimgħat ta 'sforz għalxejn.
Każ 2 — Karatteristika tal-mostru tal-batterija. App ta' traduzzjoni żiedet traduzzjoni ta' test dirett bil-kamera; L-utenti lmentaw li "it-telefon jissaħħan fi 15-il minuta u 30% tal-batterija kienet marret." Meta ġiet ikkonsultata l-AI, instab li l-kamera kienet qed tipproċessa 30 frejm kull sekonda; Meta dan tnaqqas għal 5 frejms u r-riżultat ġie aġġornat ftit frames 'l bogħod minn xulxin, il-konsum tal-batterija naqas għal terz, u l-kwalità ma kinitx notevoli. Lezzjoni: Dejjem issettja l-AI bl-għajn tal-batterija.
Każ 3 — Bidu bil-mod. App kienet qed tiftaħ f'4.5 sekondi; 20% tal-utenti kienu qed joħorġu fl-istartjar. Il-profil wera li x-xogħol inizjali kollu (analiżi, tagħbija tad-dejta, preparazzjoni tal-mudell) sar b'mod sekwenzjali fuq il-ħajt prinċipali. Bil-proposta AI, dawn ġew posposti u mqiegħda fuq il-back burner; Il-ħin tal-ftuħ tnaqqas għal 1.3 sekondi, u r-rata ta 'abbandun naqset bin-nofs. Lezzjoni: agħmel biss xogħol essenzjali fil-bidu.
Pront dgħajjef / Pront qawwi
Dgħajjef fil-pront: "L-app tiegħi hija bil-mod, tħaffef."
Prompt qawwi: "L-iscrolling tal-lista jeħel (jank) fl-applikazzjoni Android tiegħi. Dejta tal-profiler: bindImageView tieħu 28ms fuq kull qafas, l-immaġini huma mgħobbija min-netwerk kull darba, m'hemm l-ebda cache. Kodiċi relatat: [Kodiċi tal-adapter RecyclerView]. Irrakkomanda t-3 ottimizzazzjonijiet l-aktar effettivi f'ordni ta 'impatt. Iddikjara l-gwadann mistenni u ma jnaqqsux l-effetti sekondarji possibbli għal kull immaġni ta' kwalità.
Mudelli kopjabbli
Mudell ta 'analiżi tal-konġestjoni: "Interpreta d-dejta tal-profil li ġejja u sib it-3 operazzjonijiet l-aktar għaljin: [output tal-profiler]. Issuġġerixxi kawża possibbli u ottimizzazzjoni konkreta għal kull wieħed. Agħti l-ogħla impatt l-ewwel."
Mudell ta' ottimizzazzjoni tal-batterija: "Din il-karatteristika tbattal il-batterija malajr: [karatteristika, eż. post permanenti]. Agħmilha faċli għall-batterija:- Naqqas il-frekwenza tat-teħid ta' kampjuni- Restrizzjoni fl-isfond- Ipproċessar tal-lott- Mexxi biss meta meħtieġ Issortja s-soluzzjonijiet mingħajr ma tfixkel l-esperjenza tal-utent. [kodiċi]"
Mudell ta' tħaffef tal-istartjar: "Tħaffef l-istartjar tal-applikazzjoni. Affarijiet li qed isiru bħalissa fl-istartjar: [lista]. Liema jistgħu jiġu posposti, bi sfond, jew għażżien? Issepara dawk essenzjali. [kodiċi]"
Mudell tal-ispiża tal-karatteristika tal-AI: "Evalwa l-prestazzjoni u l-ispiża tal-batterija tal-karatteristika [mudell fuq l-apparat / sejħa sħaba] li żidt. Elenka l-metriċi li għandi nkejjel u strateġiji biex inaqqas l-ispiża. [kodiċi]"
Żbalji komuni
- Ottimizzazzjoni mingħajr kejl. Il-konġestjoni reali ħafna drabi tkun f'post differenti minn dak previst.
- Tiġi wara qligħ żgħir. Immira għall-azzjoni l-aktar għalja aktar milli t-titjib ta' 1%.
- Injora l-ispiża tal-batterija tal-karatteristiċi tal-AI. Mudell/kamera/netwerk li jaħdem b'mod kostanti jiekol il-batterija.
- Għajjien il-ħajt prinċipali. L-irfigħ tqil tal-bidu u l-iskrolljar m'għandux ikun fuq il-ħajt tal-UI.
- Mhux kejl mill-ġdid wara l-ottimizzazzjoni. Ivverifika li t-titjib huwa reali u ma jkisser xejn.
- Kejl tal-prestazzjoni fl-emulator. Il-veloċità attwali tal-apparat, it-temperatura u l-batterija huma kompletament differenti.
Fil-qosor
Il-prestazzjoni u l-batterija huma kwistjoni ta 'sopravivenza tal-app mobbli. Ir-regola tad-deheb: kejjel l-ewwel, ottimizza aktar tard. L-għoti tad-dejta tal-profil lill-AI tħaffef l-interpretazzjoni; Ix-xewqa bla kejl li "tħaffef" twassal għal suppożizzjonijiet għomja. Immira għat-tranżazzjoni l-aktar għalja, ma tiġrix profitti żgħar. Il-kapaċitajiet AI miżjuda f'dan il-modulu huma b'saħħithom iżda jġorru l-ispejjeż tal-batterija u l-proċessur; Immaniġġja din l-ispiża billi tnaqqas il-frekwenza tat-teħid tal-kampjuni, il-lottijiet, u tħaddem biss meta jkun meħtieġ. Kejjel mill-ġdid fuq l-apparat reali wara kull ottimizzazzjoni.
Kompitu ta' applikazzjoni
Importa profil f'applikazzjoni (il-proġett jew l-eżempju tiegħek stess) jew oħloq output tal-profil tal-kampjun u agħmel li dan jiġi interpretat mill-AI bil-"Mudell ta' analiżi ta' konġestjoni". Applika l-ogħla ottimizzazzjoni tal-impatt u erġa' kejjel: in-numru fil-fatt niżel? Ukoll, evalwa karatteristika AI li żidt f'dan il-modulu (mudell fuq l-apparat jew sejħa sħaba) f'termini ta 'batterija bil-"mudell tal-ispiża tal-karatteristika AI" u ddetermina mill-inqas setting wieħed li jiffavorixxi l-batterija.
lista ta' kontroll
- [ ] Sibt il-profil qabel l-ottimizzazzjoni, ma kontx raden
- [ ] Immirat għall-kummerċ l-aktar għali, ma xerredx fuq profitti żgħar
- [ ] Jien tajt id-dejta tal-profil tal-AI f'numri konkreti
- [ ] Evalwajt l-ispiża tal-batterija/proċessur tal-karatteristiċi tal-AI
- [ ] Neħħejt l-irfigħ tqil mill-ħajt prinċipali
- [ ] Wara l-ottimizzazzjoni, erġajt imkejjel fuq l-apparat reali u ċċekkja r-rigressjoni