Đo điểm chuẩn của ứng dụng

Đo điểm chuẩn là một cách để kiểm tra hiệu suất của ứng dụng. Bạn có thể thường xuyên chạy điểm chuẩn để giúp phân tích và gỡ lỗi các vấn đề về hiệu suất và đảm bảo rằng bạn không đưa lần hồi quy nào các thay đổi gần đây.

Android cung cấp 2 thư viện điểm chuẩn và phương pháp phân tích và thử nghiệm các loại tình huống khác nhau trong ứng dụng của bạn: Điểm chuẩn vi mô và Điểm chuẩn vĩ mô.

Điểm chuẩn vi mô

Thư viện Điểm chuẩn vi mô cho phép bạn đo điểm chuẩn cho mã ứng dụng ngay trong một vòng giữ cố định. Thư viện này được thiết kế để đo lường hoạt động của CPU nhằm đánh giá hiệu suất trong trường hợp tốt nhất (tăng lên Trong khi chạy (JIT), quyền truy cập vào ổ đĩa được lưu vào bộ nhớ đệm), mà bạn có thể thấy với vòng giữ cố định bên trong hoặc một hàm nóng cụ thể. ​​Thư viện chỉ có thể đo lường riêng trực tiếp mã mà bạn có thể gọi.

Nếu ứng dụng của bạn cần phải xử lý một cấu trúc dữ liệu phức tạp hoặc có một số thuật toán nặng cụ thể được gọi nhiều lần trong khi chạy ứng dụng, thì đây có thể là những ví dụ tiêu biểu về đo điểm chuẩn. Bạn cũng có thể đo lường các phần trên giao diện người dùng. Ví dụ: bạn có thể đo lường chi phí của việc liên kết mục RecyclerView, thời gian cần để tăng cường một bố cục hoặc việc truyền bố cục và đo lường của lớp View tốn nhiều thời gian và công sức như thế nào từ góc độ hiệu suất.

Tuy nhiên, bạn sẽ không thể đo lường mức độ đóng góp của các trường hợp được đo điểm chuẩn vào trải nghiệm tổng thể của người dùng. Trong một số trường hợp, tính năng đo điểm chuẩn sẽ không cho bạn biết liệu bạn có đang cải thiện nút thắt cổ chai như thời gian khởi động ứng dụng hoặc thời gian bị giật hay không. Vì lý do đó, trước tiên bạn cần phải xác định các nút thắt cổ chai đó bằng Trình phân tích tài nguyên Android. Sau khi tìm thấy mã mà bạn muốn điều tra và tối ưu hoá, vòng giữ cố định được đo điểm chuẩn có thể chạy nhiều lần một cách nhanh chóng và dễ dàng để tạo ra kết quả ít giao động hơn. Điều này giúp bạn tập trung vào một điểm cần cải thiện.

Thư viện Điểm chuẩn vi mô chỉ báo cáo thông tin về ứng dụng của bạn, chứ không phải thông tin chung về hệ thống. Do đó, tốt nhất bạn nên phân tích hiệu suất của các tình huống cụ thể cho ứng dụng, chứ không phải những tình huống có thể liên quan đến các vấn đề chung về hệ thống.

Điểm chuẩn vĩ mô

Thư viện Điểm chuẩn vĩ mô đo lường các hoạt động tương tác lớn hơn của người dùng cuối, chẳng hạn như khởi động, tương tác với giao diện người dùng và các ảnh động. Không giống như thư viện Điểm chuẩn vi mô, Điểm chuẩn vĩ mô cung cấp quyền kiểm soát trực tiếp đối với môi trường hiệu suất bạn đang thử nghiệm. Điểm chuẩn vĩ mô cho phép bạn kiểm soát quá trình biên dịch, khởi động và dừng ứng dụng của bạn để đo lường trực tiếp quá trình khởi động hoặc cuộn ứng dụng thực tế, thay vì chỉ các chức năng cụ thể, mới nhất, với tất cả quyền truy cập vào ổ đĩa trong bộ nhớ đệm.

Thư viện sẽ chèn các sự kiện và theo dõi kết quả bên ngoài từ một ứng dụng thử nghiệm được tạo bằng các thử nghiệm của bạn. Do đó, khi viết các điểm chuẩn, bạn không gọi trực tiếp mã ứng dụng của mình và chuyển vào trong ứng dụng như người dùng sẽ làm.

So sánh thư viện đo điểm chuẩn

Điểm chuẩn vi mô Điểm chuẩn vĩ mô
Chức năng Đo các chức năng riêng lẻ Đo lường các điểm truy cập hoặc tương tác cấp cao (ví dụ: chạy hoạt động hoặc cuộn danh sách)
Phạm vi Thử nghiệm trong quá trình xử lý của CPU Thử nghiệm ngoài quá trình xử lý toàn bộ ứng dụng
Tốc độ Tốc độ lặp lại nhanh (thường dưới 10 giây) Tốc độ lặp lại trung bình (có thể vượt quá một phút)
Theo dõi Phương pháp lấy mẫu và truy vết phương thức không bắt buộc Kết quả đi kèm với phân tích dấu vết
Phiên bản API tối thiểu 14 23