ಲಾಭಗಳು:
- ಮೊದಲು ಪ್ರೊಫೈಲ್ ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮೂಲಕ ಮತ್ತು ನೈಜ ಅಡಚಣೆಯನ್ನು ಅಳೆಯುವ ಮೂಲಕ, ಊಹೆಯ ಬದಲಿಗೆ ಡೇಟಾವನ್ನು ಆಧರಿಸಿ ಆಪ್ಟಿಮೈಸೇಶನ್ ಮಾಡುವ ಮೂಲಕ ಮತ್ತು ಕೃತಕ ಬುದ್ಧಿಮತ್ತೆಯಿಂದ ಪ್ರೊಫೈಲ್ ಔಟ್ಪುಟ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವ ಮೂಲಕ
- ಆರಂಭಿಕ ಸಮಯ, ನಿರರ್ಗಳತೆ, ಮೆಮೊರಿ ಮತ್ತು ಬ್ಯಾಟರಿಯ ವಿಷಯದಲ್ಲಿ ಅತ್ಯಂತ ದುಬಾರಿ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಗುರಿಯಾಗಿಸುವ ಸಾಮರ್ಥ್ಯ ಮತ್ತು ಮುಖ್ಯ ಥ್ರೆಡ್ನಿಂದ ಭಾರವಾದ ಕೆಲಸವನ್ನು ತೆಗೆದುಹಾಕುವುದು
- ಮಾದರಿ ಮತ್ತು ಬ್ಯಾಚ್ ಪ್ರಕ್ರಿಯೆಯ ಮೂಲಕ ಸಾಧನದ ಮಾದರಿ ಮತ್ತು ಕ್ಲೌಡ್ ಕರೆಗಳಂತಹ 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 ಸೆಕೆಂಡ್ಗಳಿಗೆ ಇಳಿಸಲಾಯಿತು ಮತ್ತು ತ್ಯಜಿಸುವ ದರವನ್ನು ಅರ್ಧಕ್ಕೆ ಇಳಿಸಲಾಯಿತು. ಪಾಠ: ಪ್ರಾರಂಭದಲ್ಲಿ ಅಗತ್ಯ ಕೆಲಸಗಳನ್ನು ಮಾತ್ರ ಮಾಡಿ.
ದುರ್ಬಲ ಪ್ರಾಂಪ್ಟ್ / ಬಲವಾದ ಪ್ರಾಂಪ್ಟ್
ದುರ್ಬಲ ಪ್ರಾಂಪ್ಟ್: "ನನ್ನ ಅಪ್ಲಿಕೇಶನ್ ನಿಧಾನವಾಗಿದೆ, ಅದನ್ನು ವೇಗಗೊಳಿಸಿ."
ಶಕ್ತಿಯುತ ಪ್ರಾಂಪ್ಟ್: "ಪಟ್ಟಿ ಸ್ಕ್ರೋಲಿಂಗ್ ನನ್ನ Android ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಸಿಲುಕಿಕೊಂಡಿದೆ (ಜಂಕ್). ಪ್ರೊಫೈಲರ್ ಡೇಟಾ: bindImageView ಪ್ರತಿ ಫ್ರೇಮ್ನಲ್ಲಿ 28ms ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಪ್ರತಿ ಬಾರಿಯೂ ನೆಟ್ವರ್ಕ್ನಿಂದ ಚಿತ್ರಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ, ಯಾವುದೇ ಸಂಗ್ರಹವಿಲ್ಲ. ಸಂಬಂಧಿತ ಕೋಡ್: [RecyclerView ಅಡಾಪ್ಟರ್ ಕೋಡ್]. ಪ್ರತಿ ನಿರೀಕ್ಷಿತ ಪರಿಣಾಮದ ಪರಿಣಾಮಗಳ 3 ಅನ್ನು ಶಿಫಾರಸು ಮಾಡಿ. ಚಿತ್ರದ ಗುಣಮಟ್ಟವನ್ನು ಕಡಿಮೆ ಮಾಡದಿರುವ ಪರಿಹಾರಗಳು."
ನಕಲು ಮಾಡಬಹುದಾದ ಟೆಂಪ್ಲೇಟ್ಗಳು
ಅಡಚಣೆಯ ವಿಶ್ಲೇಷಣೆ ಟೆಂಪ್ಲೇಟ್: "ಕೆಳಗಿನ ಪ್ರೊಫೈಲ್ ಡೇಟಾವನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ ಮತ್ತು 3 ಅತ್ಯಂತ ದುಬಾರಿ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಹುಡುಕಿ: [ಪ್ರೊಫೈಲರ್ ಔಟ್ಪುಟ್]. ಪ್ರತಿಯೊಂದಕ್ಕೂ ಸಂಭವನೀಯ ಕಾರಣ ಮತ್ತು ಕಾಂಕ್ರೀಟ್ ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಸೂಚಿಸಿ. ಮೊದಲು ಹೆಚ್ಚಿನ ಪರಿಣಾಮವನ್ನು ನೀಡಿ."
ಬ್ಯಾಟರಿ ಆಪ್ಟಿಮೈಸೇಶನ್ ಟೆಂಪ್ಲೇಟ್:"ಈ ವೈಶಿಷ್ಟ್ಯವು ಬ್ಯಾಟರಿಯನ್ನು ತ್ವರಿತವಾಗಿ ಖಾಲಿ ಮಾಡುತ್ತದೆ: [ವೈಶಿಷ್ಟ್ಯ, ಉದಾ. ಶಾಶ್ವತ ಸ್ಥಳ]. ಬ್ಯಾಟರಿ ಸ್ನೇಹಿಯಾಗಿ ಮಾಡಿ:- ಮಾದರಿ ಆವರ್ತನವನ್ನು ಕಡಿಮೆ ಮಾಡಿ- ಹಿನ್ನೆಲೆಯಲ್ಲಿ ನಿರ್ಬಂಧ- ಬ್ಯಾಚ್ ಪ್ರಕ್ರಿಯೆ- ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ರನ್ ಮಾಡಿ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕೆ ಅಡ್ಡಿಯಾಗದಂತೆ ಪರಿಹಾರಗಳನ್ನು ವಿಂಗಡಿಸಿ. [ಕೋಡ್]"
ಸ್ಟಾರ್ಟ್ಅಪ್ ಸ್ಪೀಡ್-ಅಪ್ ಟೆಂಪ್ಲೇಟ್: "ಅಪ್ಲಿಕೇಶನ್ ಸ್ಟಾರ್ಟ್ಅಪ್ ಅನ್ನು ವೇಗಗೊಳಿಸಿ. ಪ್ರಾರಂಭದಲ್ಲಿ ಪ್ರಸ್ತುತ ಮಾಡಲಾಗುತ್ತಿರುವ ಕೆಲಸಗಳು: [ಪಟ್ಟಿ]. ಯಾವುದನ್ನು ಮುಂದೂಡಬಹುದು, ಹಿನ್ನಲೆಯಲ್ಲಿ ಅಥವಾ ಲೇಜಿ-ಲೋಡ್ ಮಾಡಬಹುದು? ಅಗತ್ಯವನ್ನು ಪ್ರತ್ಯೇಕಿಸಿ. [ಕೋಡ್]"
AI ವೈಶಿಷ್ಟ್ಯದ ವೆಚ್ಚದ ಟೆಂಪ್ಲೇಟ್: "ನಾನು ಸೇರಿಸಿದ [ಆನ್-ಡಿವೈಸ್ ಮಾಡೆಲ್ / ಕ್ಲೌಡ್ ಕಾಲ್] ವೈಶಿಷ್ಟ್ಯದ ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಬ್ಯಾಟರಿ ವೆಚ್ಚವನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡಿ. ನಾನು ಅಳತೆ ಮಾಡಬೇಕಾದ ಮೆಟ್ರಿಕ್ಗಳು ಮತ್ತು ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡಲು ತಂತ್ರಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡಿ. [ಕೋಡ್]"
ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳು
- ಅಳತೆ ಇಲ್ಲದೆ ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು. ನಿಜವಾದ ಅಡಚಣೆಯು ಸಾಮಾನ್ಯವಾಗಿ ಊಹಿಸಿದ್ದಕ್ಕಿಂತ ವಿಭಿನ್ನ ಸ್ಥಳದಲ್ಲಿದೆ.
- ಸಣ್ಣ ಲಾಭಗಳನ್ನು ಬೆನ್ನಟ್ಟುವುದು. 1% ಸುಧಾರಣೆಗಿಂತ ಹೆಚ್ಚು ದುಬಾರಿ ಕ್ರಮವನ್ನು ಗುರಿಪಡಿಸಿ.
- AI ವೈಶಿಷ್ಟ್ಯಗಳ ಬ್ಯಾಟರಿ ವೆಚ್ಚವನ್ನು ನಿರ್ಲಕ್ಷಿಸಲಾಗುತ್ತಿದೆ. ನಿರಂತರವಾಗಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಮಾಡೆಲ್/ಕ್ಯಾಮೆರಾ/ನೆಟ್ವರ್ಕ್ ಬ್ಯಾಟರಿಯನ್ನು ತಿನ್ನುತ್ತದೆ.
- ಮುಖ್ಯ ಥ್ರೆಡ್ ಅನ್ನು ಆಯಾಸಗೊಳಿಸುವುದು. ಪ್ರಾರಂಭ ಮತ್ತು ಸ್ಕ್ರೋಲಿಂಗ್ನ ಭಾರ ಎತ್ತುವಿಕೆಯು UI ಥ್ರೆಡ್ನಲ್ಲಿ ಇರಬಾರದು.
- ಆಪ್ಟಿಮೈಸೇಶನ್ ನಂತರ ಮರು-ಅಳತೆ ಇಲ್ಲ. ಸುಧಾರಣೆಯು ನಿಜವಾಗಿದೆ ಮತ್ತು ಯಾವುದನ್ನೂ ಮುರಿಯುವುದಿಲ್ಲ ಎಂದು ಪರಿಶೀಲಿಸಿ.
- ಎಮ್ಯುಲೇಟರ್ನಲ್ಲಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅಳೆಯುವುದು. ನಿಜವಾದ ಸಾಧನದ ವೇಗ, ತಾಪಮಾನ ಮತ್ತು ಬ್ಯಾಟರಿ ಸಂಪೂರ್ಣವಾಗಿ ವಿಭಿನ್ನವಾಗಿದೆ.
ಸಾರಾಂಶದಲ್ಲಿ
ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಬ್ಯಾಟರಿಯು ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್ ಬದುಕುಳಿಯುವಿಕೆಯ ವಿಷಯವಾಗಿದೆ. ಸುವರ್ಣ ನಿಯಮ: ಮೊದಲು ಅಳೆಯಿರಿ, ನಂತರ ಉತ್ತಮಗೊಳಿಸಿ. AI ಗೆ ಪ್ರೊಫೈಲ್ ಡೇಟಾವನ್ನು ನೀಡುವುದು ವ್ಯಾಖ್ಯಾನವನ್ನು ವೇಗಗೊಳಿಸುತ್ತದೆ; "ವೇಗವನ್ನು ಹೆಚ್ಚಿಸುವ" ಅಳೆಯಲಾಗದ ಬಯಕೆಯು ಕುರುಡು ಊಹೆಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ. ಅತ್ಯಂತ ದುಬಾರಿ ವಹಿವಾಟಿನ ಗುರಿ, ಸಣ್ಣ ಲಾಭವನ್ನು ಬೆನ್ನಟ್ಟಬೇಡಿ. ಈ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ಸೇರಿಸಲಾದ AI ಸಾಮರ್ಥ್ಯಗಳು ಶಕ್ತಿಯುತವಾಗಿವೆ ಆದರೆ ಬ್ಯಾಟರಿ ಮತ್ತು ಪ್ರೊಸೆಸರ್ ವೆಚ್ಚಗಳನ್ನು ಸಾಗಿಸುತ್ತವೆ; ಮಾದರಿ ಆವರ್ತನ, ಬ್ಯಾಚಿಂಗ್ ಮತ್ತು ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ಚಾಲನೆ ಮಾಡುವ ಮೂಲಕ ಈ ವೆಚ್ಚವನ್ನು ನಿರ್ವಹಿಸಿ. ಪ್ರತಿ ಆಪ್ಟಿಮೈಸೇಶನ್ ನಂತರ ನಿಜವಾದ ಸಾಧನದಲ್ಲಿ ಮತ್ತೊಮ್ಮೆ ಅಳತೆ ಮಾಡಿ.
ಅಪ್ಲಿಕೇಶನ್ ಕಾರ್ಯ
ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಪ್ರೊಫೈಲ್ ಅನ್ನು ಆಮದು ಮಾಡಿ (ನಿಮ್ಮ ಸ್ವಂತ ಯೋಜನೆ ಅಥವಾ ಉದಾಹರಣೆ) ಅಥವಾ ಮಾದರಿ ಪ್ರೊಫೈಲ್ ಔಟ್ಪುಟ್ ಅನ್ನು ರಚಿಸಿ ಮತ್ತು ಅದನ್ನು "ಬಾಟಲ್ನೆಕ್ ವಿಶ್ಲೇಷಣೆ ಟೆಂಪ್ಲೇಟ್" ನೊಂದಿಗೆ AI ನಿಂದ ಅರ್ಥೈಸಿಕೊಳ್ಳಿ. ಹೆಚ್ಚಿನ ಪರಿಣಾಮದ ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಅನ್ವಯಿಸಿ ಮತ್ತು ಮತ್ತೆ ಅಳೆಯಿರಿ: ಸಂಖ್ಯೆಯು ನಿಜವಾಗಿಯೂ ಕಡಿಮೆಯಾಗಿದೆಯೇ? ಅಲ್ಲದೆ, ಈ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ನೀವು ಸೇರಿಸಿದ AI ವೈಶಿಷ್ಟ್ಯವನ್ನು (ಆನ್-ಡಿವೈಸ್ ಮಾಡೆಲ್ ಅಥವಾ ಕ್ಲೌಡ್ ಕಾಲ್) ಬ್ಯಾಟರಿಯ ವಿಷಯದಲ್ಲಿ "AI ವೈಶಿಷ್ಟ್ಯದ ವೆಚ್ಚದ ಟೆಂಪ್ಲೇಟ್" ಮೂಲಕ ಮೌಲ್ಯಮಾಪನ ಮಾಡಿ ಮತ್ತು ಕನಿಷ್ಠ ಒಂದು ಬ್ಯಾಟರಿ ಸ್ನೇಹಿ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ನಿರ್ಧರಿಸಿ.
ಪರಿಶೀಲನಾಪಟ್ಟಿ
- [ ] ಆಪ್ಟಿಮೈಸೇಶನ್ ಮೊದಲು ನಾನು ಪ್ರೊಫೈಲ್ ಅನ್ನು ಪಡೆದುಕೊಂಡಿದ್ದೇನೆ, ನಾನು ಊಹಿಸಲಿಲ್ಲ
- [ ] ನಾನು ಅತ್ಯಂತ ದುಬಾರಿ ವ್ಯಾಪಾರದ ಗುರಿಯನ್ನು ಹೊಂದಿದ್ದೇನೆ, ನಾನು ಸಣ್ಣ ಲಾಭದ ಮೇಲೆ ಚದುರಿಹೋಗಲಿಲ್ಲ
- [ ] ನಾನು AI ಪ್ರೊಫೈಲ್ ಡೇಟಾವನ್ನು ಕಾಂಕ್ರೀಟ್ ಸಂಖ್ಯೆಗಳಲ್ಲಿ ನೀಡಿದ್ದೇನೆ
- [ ] ನಾನು AI ವೈಶಿಷ್ಟ್ಯಗಳ ಬ್ಯಾಟರಿ/ಪ್ರೊಸೆಸರ್ ವೆಚ್ಚವನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡಿದ್ದೇನೆ
- [ ] ನಾನು ಮುಖ್ಯ ಥ್ರೆಡ್ನಿಂದ ಭಾರವಾದ ಎತ್ತುವಿಕೆಯನ್ನು ತೆಗೆದುಹಾಕಿದೆ
- [ ] ಆಪ್ಟಿಮೈಸೇಶನ್ ನಂತರ, ನಾನು ನೈಜ ಸಾಧನದಲ್ಲಿ ಮತ್ತೊಮ್ಮೆ ಅಳತೆ ಮಾಡಿದ್ದೇನೆ ಮತ್ತು ಹಿಂಜರಿತವನ್ನು ಪರಿಶೀಲಿಸಿದ್ದೇನೆ