ஆதாயங்கள்:
- முதலில் ஒரு சுயவிவரத்தை எடுத்து உண்மையான சிக்கலை அளவிடுவதன் மூலம், யூகங்களை விட தரவின் அடிப்படையில் மேம்படுத்தல் செய்வதன் மூலம் மற்றும் செயற்கை நுண்ணறிவு மூலம் சுயவிவர வெளியீட்டை விளக்குவதன் மூலம்
- தொடக்க நேரம், சரளமான தன்மை, நினைவகம் மற்றும் பேட்டரி ஆகியவற்றின் அடிப்படையில் மிகவும் விலையுயர்ந்த செயல்பாட்டை இலக்காகக் கொள்ளும் திறன் மற்றும் பிரதான நூலில் இருந்து அதிக வேலைகளை அகற்றும் திறன்
- மாதிரி மற்றும் தொகுதி செயலாக்கம் மூலம் சாதனத்தில் மாதிரி மற்றும் கிளவுட் அழைப்பு போன்ற AI திறன்களின் பேட்டரி மற்றும் செயலி செலவை நிர்வகிக்கும் திறன்
மொபைல் பயன்படுத்துபவர்கள் பொறுமை காக்கிறார்கள். பயன்பாடு மெதுவாகத் திறந்தால், ஸ்க்ரோலிங் செய்யும் போது தொங்கினால் அல்லது பேட்டரியை விரைவாக வடிகட்டினால், பயனர் அதை நீக்கி, கடையில் நட்சத்திர மதிப்பீட்டை வழங்குகிறார். செயல்திறன் மற்றும் பேட்டரி திறன் ஆகியவை மொபைல் பயன்பாட்டின் உயிர்வாழ்வதற்கான விஷயம்; இது பயனர் திருப்தி மற்றும் ஸ்டோர் தரவரிசை இரண்டையும் நேரடியாகப் பாதிக்கிறது. AI என்பது செயல்திறன் இடையூறுகளைக் கண்டறிவதில் ஒரு சக்திவாய்ந்த உதவியாகும். ஆனால் தங்க விதி உள்ளது: முதலில் அளவிடவும், பின்னர் மேம்படுத்தவும். இந்த யூனிட்டில், செயல்திறன் மற்றும் பேட்டரி பிரச்சனைகளை AI மூலம் தரவு அடிப்படையிலான வழியில் தீர்க்க கற்றுக்கொள்வோம். முந்தைய யூனிட்களில் (சாதனத்தில் மாடல், கிளவுட் காலிங்) நாங்கள் சேர்த்த AI திறன்களின் பேட்டரி மற்றும் செயல்திறனில் ஏற்படும் தாக்கத்தை நிர்வகிப்பது ஒரு முக்கியமான பிரச்சினை.
அளவிடாமல் மேம்படுத்துதல்
ஒரு அனுபவமற்ற டெவலப்பரின் மிகப்பெரிய தவறு, முன்கணிப்பு உகப்பாக்கம்: "இது மெதுவாக இருக்க வேண்டும்" என்று நேரத்தை வீணடிப்பது. உண்மையான இடையூறு எப்போதும் எதிர்பாராத இடத்தில் இருக்கும். எனவே முதலில் சுயவிவரம் எடுக்கப்பட்டது (சுயவிவரமாக்கல் — பயன்பாட்டின் எந்தப் பகுதி எவ்வளவு நேரம்/நினைவகம்/பேட்டரியைப் பயன்படுத்துகிறது என்பதை அளவிடுதல்). இந்த வேலைக்கு ஆண்ட்ராய்டு ஸ்டுடியோ ப்ரொஃபைலர் மற்றும் எக்ஸ்கோட் இன்ஸ்ட்ரூமென்ட்ஸ். AIக்கு அளவீட்டுத் தரவை வழங்குவது விளக்கத்தை விரைவுபடுத்துகிறது; ஆனால் அளவீடு இல்லாமல், AI க்கு "எனது பயன்பாடு மெதுவாக உள்ளது, வேகப்படுத்து" என்று கூறுவது கண்மூடித்தனமாக கணிப்புகளை உருவாக்குவதாகும்.
செயல்திறனின் நான்கு முக்கிய அச்சுகள்:
அச்சு
அறிகுறி
வழக்கமான காரணம்
தொடக்க நேரம்
விண்ணப்பம் தாமதமாக திறக்கப்படுகிறது
முக்கிய நூலில் கடுமையான வேலை
சரளமாக (ஜங்க்)
ஸ்க்ரோல் சிக்கிக் கொள்கிறது
நீண்ட செயலாக்கம், UI நூலில் தேவையற்ற மறு வரைதல்
நினைவகம்
வீக்கம், சரிவு
கசிவு, பெரிய படம், கேச் கட்டுப்பாடற்றது
பேட்டரி/வெப்பம்
விரைவான விந்து வெளியேறுதல்
தொடர்ச்சியான இடம், நெட்வொர்க், சென்சார், பின்னணி வேலை
உதவிக்குறிப்பு: செயல்திறன் சிக்கலைப் பற்றி AIயிடம் கேட்கும்போது, சுயவிவர வெளியீட்டைக் கொடுங்கள் (இந்தச் செயல்பாடு எவ்வளவு நேரம் எடுக்கும், நினைவக வரைபடம்). "அந்தச் செயல்பாடு ஒரு சட்டத்திற்கு 30ms எடுக்கும்" போன்ற கடினமான தரவு, AI ஐ உண்மையான தடையில் கவனம் செலுத்த அனுமதிக்கிறது; "மெதுவாக" போன்ற அகநிலை சொற்றொடர் பொதுவான மற்றும் பயனற்ற பதிலை உருவாக்குகிறது.
AI திறன்களின் பேட்டரி விலை
இந்த தொகுதியில் நாங்கள் சேர்த்த AI அம்சங்கள் சக்திவாய்ந்தவை, ஆனால் அவை இலவசம் அல்ல. சாதனத்தில் உள்ள மாதிரியைப் பிரித்தெடுப்பது செயலி மற்றும் பேட்டரியை சிரமப்படுத்துகிறது; தொடர்ந்து இயங்கும் பட அங்கீகாரம் (எ.கா. கேமரா ஒவ்வொரு பிரேமையும் செயலாக்குவது) ஃபோனை சூடாக்கி, சில நிமிடங்களில் பேட்டரியை வடிகட்டிவிடும். கிளவுட் AI அழைப்புகள், மறுபுறம், நெட்வொர்க் ரேடியோவை (தரவை அனுப்பும் மற்றும் பெறும் ஆண்டெனா) எல்லா நேரத்திலும் வைத்திருப்பதன் மூலம் பேட்டரியைச் சாப்பிடும். தீர்வுகள்: தேவைப்படும் போது மட்டுமே சாதனத்தில் உள்ள மாதிரியை இயக்கவும், ஒவ்வொரு ஃப்ரேமிற்கும் பதிலாக ஒரு வினாடிக்கு சில முறை கேமராவை மாதிரியாக்கவும், கிளவுட் கோரிக்கைகளை அனுப்பவும், சாதனம் சார்ஜ் ஆகும்போது அல்லது செயலற்ற நிலையில் அதிக எடை தூக்கும்.
எச்சரிக்கை: தொடர்ந்து இயங்கும் AI அம்சம் (நேரடி மொழிபெயர்ப்பு, தொடர்ச்சியான பொருள் அங்கீகாரம்) பேட்டரியை மிக விரைவாக வெளியேற்றலாம், சாதனத்தை சூடாக்கலாம் மற்றும் கணினியால் த்ரோட்டில் செய்யப்படலாம். இந்தச் செலவு நீக்கப்பட்டதாக பயனர் உணர வைக்கும் அம்சம். நான் எப்பொழுதும் AIயிடம் "இந்த அம்சத்தை பேட்டரிக்கு ஏற்றதாக மாற்றுவது எப்படி?" என்ற கேள்வியையும் கேளுங்கள்.
தேர்வுமுறையின் படிகள்
- அளவிடவும். சுயவிவரத்துடன் உண்மையான இடையூறைக் கண்டறியவும்; யூகிக்க வேண்டாம்.
- மிகப்பெரிய சிக்கலைத் தேர்வுசெய்க. 1% முன்னேற்றத்தைத் துரத்த வேண்டாம்; மிகவும் விலையுயர்ந்த பரிவர்த்தனைக்கான நோக்கம்.
- தரவுகளுடன் AI ஐக் கேளுங்கள். சுயவிவர வெளியீடு + தொடர்புடைய குறியீட்டுடன் மேம்படுத்தல் பரிந்துரையைக் கோரவும்.
- விண்ணப்பிக்கவும் மற்றும் மீண்டும் அளவிடவும். முன்னேற்றம் உண்மையானதா? எண்ணிக்கை குறைந்துவிட்டதா?
- பின்னடைவு கட்டுப்பாடு. தேர்வுமுறை எதையும் உடைத்ததா? காட்சி மற்றும் செயல்பாட்டு சோதனையை மீண்டும் செய்யவும்.
மூன்று சிறிய வழக்குகள்
வழக்கு 1 - தவறான இடத்தில் தேடுதல். பட்டியல்கள் சிக்கிவிட்டதாக ஒரு குழு நினைத்தது மற்றும் பல வாரங்களுக்கு ஸ்க்ரோலிங் குறியீட்டை மறுவேலை செய்தது. அவர்கள் சுயவிவரத்தை எடுத்து AI க்கு தரவை வழங்கியபோது, ஒவ்வொரு வரிசையிலும் நெட்வொர்க்கில் மீண்டும் ஏற்றப்படும் படங்கள்தான் உண்மையான இடையூறு என்று மாறியது. காட்சி கேச் சேர்க்கப்படும் போது, சரளமானது 42 FPS இலிருந்து 60 FPS ஆக அதிகரித்தது. பாடம்: அளவீடு வாரக்கணக்கான வீண் முயற்சியைத் தவிர்க்கிறது.
வழக்கு 2 - பேட்டரி மான்ஸ்டர் அம்சம். ஒரு மொழிபெயர்ப்பு பயன்பாடு கேமராவுடன் நேரடி உரை மொழிபெயர்ப்பைச் சேர்த்தது; "ஃபோன் 15 நிமிடங்களில் சூடாகி, 30% பேட்டரி போய்விட்டது" என்று பயனர்கள் புகார் தெரிவித்தனர். AI ஐக் கலந்தாலோசித்தபோது, கேமரா வினாடிக்கு 30 பிரேம்களை செயலாக்குவது கண்டறியப்பட்டது; இது 5 பிரேம்களாகக் குறைக்கப்பட்டு, சில பிரேம்கள் இடைவெளியில் முடிவு புதுப்பிக்கப்பட்டபோது, பேட்டரி நுகர்வு மூன்றில் ஒரு பங்காகக் குறைந்தது, மேலும் தரம் கவனிக்கப்படவில்லை. பாடம்: எப்போதும் AI ஐ பேட்டரி கண் மூலம் அமைக்கவும்.
வழக்கு 3 - மெதுவாக ஆரம்பம். ஒரு பயன்பாடு 4.5 வினாடிகளில் திறக்கப்பட்டது; தொடக்கத்தில் 20% பயனர்கள் வெளியேறினர். அனைத்து ஆரம்ப வேலைகளும் (பகுப்பாய்வு, தரவு ஏற்றுதல், மாதிரி தயாரித்தல்) பிரதான நூலில் தொடர்ச்சியாக செய்யப்பட்டதாக சுயவிவரம் காட்டியது. AI முன்மொழிவுடன், இவை ஒத்திவைக்கப்பட்டு, பின் பர்னரில் வைக்கப்பட்டுள்ளன; தொடக்க நேரம் 1.3 வினாடிகளாகக் குறைக்கப்பட்டது, கைவிடப்பட்ட விகிதம் பாதியாகக் குறைக்கப்பட்டது. பாடம்: தொடக்கத்தில் அத்தியாவசிய வேலைகளை மட்டும் செய்யுங்கள்.
பலவீனமான வரியில் / வலுவான வரியில்
பலவீனமான ப்ராம்ட்: "எனது பயன்பாடு மெதுவாக உள்ளது, வேகப்படுத்து."
சக்திவாய்ந்த அறிவுறுத்தல்: "பட்டியல் ஸ்க்ரோலிங் எனது ஆண்ட்ராய்டு பயன்பாட்டில் சிக்கியுள்ளது. சுயவிவர தரவு: bindImageView ஒவ்வொரு ஃப்ரேமிலும் 28ms எடுக்கும், ஒவ்வொரு முறையும் பிணையத்திலிருந்து படங்கள் ஏற்றப்படும், கேச் எதுவும் இல்லை. தொடர்புடைய குறியீடு: [RecyclerView அடாப்டர் குறியீடு]. ஒவ்வொரு வரிசையிலும் மிகவும் பயனுள்ள தாக்கத்தை மேம்படுத்துவதற்கு பரிந்துரைக்கவும். படத்தின் தரத்தை குறைக்காத தீர்வுகள்."
நகலெடுக்கக்கூடிய வார்ப்புருக்கள்
பாட்டில்நெக் பகுப்பாய்வு டெம்ப்ளேட்: "பின்வரும் சுயவிவரத் தரவை விளக்கி, 3 மிகவும் விலையுயர்ந்த செயல்பாடுகளைக் கண்டறியவும்: [புரொஃபைலர் வெளியீடு]. சாத்தியமான காரணத்தையும் ஒவ்வொன்றிற்கும் உறுதியான தேர்வுமுறையை பரிந்துரைக்கவும். அதிக தாக்கத்தை முதலில் கொடுங்கள்."
பேட்டரி ஆப்டிமைசேஷன் டெம்ப்ளேட்:"இந்த அம்சம் பேட்டரியை விரைவாக வடிகட்டுகிறது: [அம்சம், எ.கா. நிரந்தர இருப்பிடம்]. பேட்டரிக்கு உகந்ததாக மாற்றவும்:- மாதிரி அதிர்வெண்ணைக் குறைக்கவும்- பின்னணியில் கட்டுப்பாடு- தொகுதி செயலாக்கம்- தேவைப்படும் போது மட்டும் இயக்கவும். பயனர் அனுபவத்திற்கு இடையூறு இல்லாமல் தீர்வுகளை வரிசைப்படுத்தவும். [குறியீடு]"
தொடக்க விரைவு டெம்ப்ளேட்: "பயன்பாட்டு தொடக்கத்தை விரைவுபடுத்துங்கள். தொடக்கத்தில் தற்போது செய்யப்படும் விஷயங்கள்: [பட்டியல்]. எது ஒத்திவைக்கப்படலாம், பின்னணியில் அல்லது சோம்பேறியாக ஏற்றப்படலாம்? அத்தியாவசியமானவற்றைப் பிரிக்கவும். [குறியீடு]"
AI அம்ச செலவு டெம்ப்ளேட்: "நான் சேர்த்த [சாதனத்தில் மாடல் / கிளவுட் அழைப்பு] அம்சத்தின் செயல்திறன் மற்றும் பேட்டரி விலையை மதிப்பிடவும். நான் அளவிட வேண்டிய அளவீடுகள் மற்றும் செலவைக் குறைப்பதற்கான உத்திகளைப் பட்டியலிடுங்கள். [குறியீடு]"
பொதுவான தவறுகள்
- அளவிடாமல் மேம்படுத்துதல். உண்மையான இடையூறு பெரும்பாலும் கணிக்கப்பட்டதை விட வேறு இடத்தில் உள்ளது.
- சிறிய லாபங்களைத் துரத்துகிறது. 1% முன்னேற்றத்தை விட மிகவும் விலையுயர்ந்த செயலை இலக்காகக் கொள்ளுங்கள்.
- AI அம்சங்களின் பேட்டரி விலையைப் புறக்கணித்தல். தொடர்ந்து இயங்கும் மாடல்/கேமரா/நெட்வொர்க் பேட்டரியைத் தின்றுவிடும்.
- முக்கிய நூலை சோர்வடையச் செய்கிறது. தொடங்குதல் மற்றும் ஸ்க்ரோலிங் செய்தல் ஆகியவை UI தொடரிழையில் இருக்கக்கூடாது.
- தேர்வுமுறைக்குப் பிறகு மீண்டும் அளவிடவில்லை. முன்னேற்றம் உண்மையானது மற்றும் எதையும் உடைக்கவில்லை என்பதை சரிபார்க்கவும்.
- முன்மாதிரியில் செயல்திறனை அளவிடுதல். சாதனத்தின் உண்மையான வேகம், வெப்பநிலை மற்றும் பேட்டரி முற்றிலும் வேறுபட்டவை.
சுருக்கமாக
செயல்திறன் மற்றும் பேட்டரி ஆகியவை மொபைல் பயன்பாட்டின் உயிர்வாழ்வதற்கான விஷயம். தங்க விதி: முதலில் அளவிடவும், பின்னர் மேம்படுத்தவும். AI க்கு சுயவிவரத் தரவை வழங்குவது விளக்கத்தை விரைவுபடுத்துகிறது; "வேகப்படுத்த" அளவிட முடியாத ஆசை குருட்டு யூகங்களுக்கு வழிவகுக்கிறது. மிகவும் விலையுயர்ந்த பரிவர்த்தனைக்கான நோக்கம், சிறிய லாபத்தைத் துரத்த வேண்டாம். இந்த தொகுதியில் சேர்க்கப்பட்ட AI திறன்கள் சக்திவாய்ந்தவை ஆனால் பேட்டரி மற்றும் செயலி செலவுகளை சுமந்து செல்கின்றன; மாதிரி அதிர்வெண்ணைக் குறைத்து, பேட்ச் செய்தல் மற்றும் தேவைப்படும்போது மட்டும் இயங்குவதன் மூலம் இந்த செலவை நிர்வகிக்கவும். ஒவ்வொரு தேர்வுமுறைக்குப் பிறகும் உண்மையான சாதனத்தில் மீண்டும் அளவிடவும்.
விண்ணப்ப பணி
பயன்பாட்டில் ஒரு சுயவிவரத்தை இறக்குமதி செய்யவும் (உங்கள் சொந்த திட்டம் அல்லது உதாரணம்) அல்லது மாதிரி சுயவிவர வெளியீட்டை உருவாக்கவும் மற்றும் அதை AI ஆல் "Botttleneck analysis டெம்ப்ளேட்" மூலம் விளக்கவும். அதிக தாக்கத்தை மேம்படுத்தி, மீண்டும் அளவிடவும்: எண் உண்மையில் குறைந்ததா? மேலும், இந்த மாட்யூலில் (சாதனத்தில் மாடல் அல்லது கிளவுட் கால்) நீங்கள் சேர்த்த AI அம்சத்தை பேட்டரியின் அடிப்படையில் "AI அம்ச விலை டெம்ப்ளேட்" மூலம் மதிப்பீடு செய்து குறைந்தபட்சம் ஒரு பேட்டரிக்கு ஏற்ற அமைப்பையாவது தீர்மானிக்கவும்.
சரிபார்ப்பு பட்டியல்
- [ ] தேர்வுமுறைக்கு முன் எனக்கு சுயவிவரம் கிடைத்தது, நான் யூகிக்கவில்லை
- [ ] நான் மிகவும் விலையுயர்ந்த வர்த்தகத்தை இலக்காகக் கொண்டேன், சிறிய லாபத்தில் நான் சிதறவில்லை
- [ ] நான் AI சுயவிவரத் தரவை உறுதியான எண்களில் கொடுத்துள்ளேன்
- [ ] AI அம்சங்களின் பேட்டரி/செயலி விலையை மதிப்பீடு செய்தேன்
- [ ] நான் பிரதான நூலில் இருந்து கனமான தூக்குதலை அகற்றினேன்
- [ ] தேர்வுமுறைக்குப் பிறகு, உண்மையான சாதனத்தில் மீண்டும் அளந்து, பின்னடைவைச் சரிபார்த்தேன்