Mục lục bài viết
Bật chế độ tiết kiệm pin thường khiến người dùng lo lắng ứng dụng đang mở sẽ bị giật, phản hồi chậm. Thực tế, tác động của chế độ này không đồng đều: một ứng dụng đang hiển thị trực tiếp trên màn hình và một ứng dụng đang chạy ngầm phía sau chịu mức giới hạn tài nguyên rất khác nhau.
Cơ chế chung của chế độ tiết kiệm pin
Chế độ tiết kiệm pin can thiệp vào bộ lập lịch (scheduler) của hệ điều hành theo hai hướng: giảm tần số xung nhịp tối đa mà CPU và GPU được phép đạt tới, đồng thời siết quyền hạn của các tiến trình không nằm ở lớp tương tác trực tiếp với người dùng. Mức độ can thiệp khác nhau giữa các nền tảng, nhưng nguyên tắc phân biệt ưu tiên theo trạng thái hiển thị là nhất quán.
Ứng dụng đang mở trực tiếp được ưu tiên giữ trải nghiệm
Ứng dụng hiển thị ở foreground, tức đang chiếm toàn bộ hoặc một phần màn hình và nhận thao tác chạm trực tiếp, vẫn được hệ điều hành xếp vào nhóm ưu tiên xử lý cao để duy trì độ mượt của giao diện. Chế độ tiết kiệm pin có thể hạ trần xung nhịp CPU và GPU khiến các tác vụ nặng như xử lý ảnh, dựng đồ hoạ game phức tạp chạy chậm hơn đôi chút, nhưng hiếm khi làm ứng dụng đơ hẳn, vì hệ thống hiểu đây là tiến trình người dùng đang tương tác trực tiếp.
Ứng dụng chạy nền bị siết mạnh tay hơn nhiều
Với tiến trình chạy ngầm, chế độ tiết kiệm pin can thiệp sâu hơn hẳn: giới hạn tần suất đánh thức CPU để đồng bộ dữ liệu, trì hoãn thông báo đẩy, giảm hoặc tạm dừng quyền truy cập mạng nền, và có thể đưa tiến trình vào trạng thái gần như đóng băng nếu không có tương tác trong một khoảng thời gian. Vì ứng dụng nền không ảnh hưởng trực tiếp đến trải nghiệm thị giác tức thời, hệ thống chấp nhận hy sinh độ kịp thời để đổi lấy thời lượng pin.
Hệ quả là độ trễ dữ liệu, không phải giật lag khi đang dùng
Kết quả dễ nhận thấy nhất khi bật chế độ tiết kiệm pin không phải là ứng dụng đang mở bị lag, mà là email đến chậm hơn, tin nhắn báo trễ, hoặc dữ liệu đồng bộ không cập nhật ngay. Đây là đánh đổi có chủ đích: chấp nhận độ trễ ở lớp nền để giữ trải nghiệm mượt mà ở lớp đang tương tác trực tiếp, đồng thời kéo dài thời lượng pin.
Hiểu nhầm thường gặp
“Bật tiết kiệm pin thì mọi ứng dụng đều chạy chậm như nhau” là suy nghĩ bỏ qua cách hệ điều hành phân biệt ưu tiên theo trạng thái hiển thị của tiến trình. Ứng dụng đang mở trực tiếp chỉ bị giảm nhẹ hiệu năng xử lý nặng, trong khi ứng dụng chạy ngầm mới là đối tượng bị hạn chế mạnh nhất về tần suất hoạt động và quyền truy cập mạng.
Xem thêm
Nội dung này thuộc cụm bài Tối ưu hiệu năng phần mềm: tổng hợp bài viết. Xem thêm Quyền hoạt động nền “Không giới hạn” so với “Được tối ưu hoá” ảnh hưởng hiệu năng ra sao.
