Định cấu hình hành vi của Microbenchmark bằng các đối số đo lường sau. Bạn có thể thêm các đối số này vào cấu hình Gradle hoặc áp dụng trực tiếp trong khi chạy các công cụ đo lường qua dòng lệnh. Để đặt những đối số này cho tất cả các lần chạy kiểm thử dòng lệnh và Android Studio, hãy thêm chúng vào testInstrumentationRunnerArguments
:
android {
defaultConfig {
// ...
testInstrumentationRunnerArguments["androidx.benchmark.dryRunMode.enable"] = "true"
}
}
Bạn cũng có thể thiết lập đối số đo lường khi chạy phép đo điểm chuẩn trong Android Studio. Để thay đổi các đối số, hãy làm như sau:
- Chỉnh sửa cấu hình chạy bằng cách nhấp vào Edit (Chỉnh sửa) rồi chọn cấu hình bạn muốn chỉnh sửa.
- Chỉnh sửa các đối số đo lường bằng cách nhấp vào bên cạnh trường Instrumentation arguments (Đối số đo lường).
- Nhấp vào rồi thêm đối số đo lường bắt buộc.
Nếu bạn đang chạy phép đo điểm chuẩn từ dòng lệnh, hãy sử dụng -P
android.testInstrumentationRunnerArguments.[name of the argument]
:
./gradlew :benchmark:connectedAndroidTest -P android.testInstrumentationRunnerArguments.androidx.benchmark.profiling.mode=StackSampling
Nếu bạn đang gọi trực tiếp lệnh đo lường (có thể là trường hợp trong môi trường kiểm thử CI), hãy truyền đối số đến am instrument
bằng -e
:
adb shell am instrument -e androidx.benchmark.profiling.mode StackSampling -w com.example.macrobenchmark/androidx.benchmark.junit4.AndroidBenchmarkRunner
Để biết thêm thông tin về cách định cấu hình điểm chuẩn trong CI, hãy xem phần Đo điểm chuẩn trong CI
additionalTestOutputDir
Định cấu hình nơi lưu báo cáo điểm chuẩn JSON và kết quả phân tích tài nguyên trên thiết bị.
- Loại đối số: chuỗi đường dẫn tệp
- Mặc định là: kiểm tra thư mục bên ngoài của APK
androidx.benchmark.dryRunMode.enable
Cho phép bạn chạy phép đo điểm chuẩn trong một vòng lặp để xác minh rằng các điểm chuẩn đó hoạt động đúng cách.
Điều này có nghĩa là:
- Không thực thi lỗi cấu hình (ví dụ: để dễ dàng chạy các kiểm thử chính xác thông thường trên trình mô phỏng)
- Điểm chuẩn chỉ chạy một vòng lặp, không có thời gian khởi động
- Không thu thập dữ liệu đo lường và dấu vết để giảm thời gian chạy
Điều này giúp tối ưu hoá cho mức độ tải kiểm thử và xác thực logic điểm chuẩn trên bản dựng và độ chính xác của phép đo.
- Loại đối số: boolean
- Mặc định là:
false
androidx.benchmark.iterations
Ghi đè số lần lặp lại mục tiêu theo thời gian để đảm bảo lượng công việc nhất quán. Đối số này thường chỉ hữu ích khi bật tính năng phân tích tài nguyên để đảm bảo thực hiện lượng công việc nhất quán trong một bản theo dõi phân tích khi so sánh các phương thức triển khai hoặc chạy khác nhau. Trong các trường hợp khác, điều này có thể làm giảm độ chính xác hoặc độ ổn định của hoạt động đo lường.
- Loại đối số: số nguyên
- Mặc định là: không chỉ định
androidx.benchmark.junit4.SideEffectRunListener
Bạn có thể nhận được kết quả đo điểm chuẩn không nhất quán nếu thực thi công việc không liên quan ở chế độ nền trong khi đang chạy phép đo điểm chuẩn.
Để tắt công việc ở chế độ nền trong quá trình đo điểm chuẩn, hãy đặt loại đối số đo lường listener
thành androidx.benchmark.junit4.SideEffectRunListener
.
- Loại đối số: chuỗi
- Các tuỳ chọn hiện có:
androidx.benchmark.junit4.SideEffectRunListener
- Mặc định là: không chỉ định
androidx.benchmark.output.enable
Cho phép ghi tệp JSON kết quả vào bộ nhớ ngoài.
- Loại đối số: boolean
- Mặc định là:
true
androidx.benchmark.profiling.mode
Cho phép chụp tệp các theo dõi trong khi chạy điểm chuẩn. Vui lòng xem bài viết Phân tích Microbenchmark để biết các tuỳ chọn có sẵn.
- Loại đối số: chuỗi
- Các tuỳ chọn hiện có:
MethodTracing
StackSampling
None
- Mặc định là:
None
androidx.benchmark.suppressErrors
Chấp nhận danh sách lỗi được phân tách bằng dấu phẩy để chuyển thành cảnh báo.
- Loại đối số: danh sách chuỗi
- Các tuỳ chọn hiện có:
DEBUGGABLE
LOW-BATTERY
EMULATOR
CODE-COVERAGE
UNLOCKED
SIMPLEPERF
ACTIVITY-MISSING
- Mặc định là: danh sách trống
androidx.benchmark.startupMode.enable (Không dùng nữa)
Định cấu hình lại hành vi lặp lại để hỗ trợ mã đo điểm chuẩn trong quá trình khởi động. Điểm chuẩn được thực hiện mà không cần vòng lặp khởi động cho 10 phép đo. Để giảm thiểu hao tổn khi đo điểm chuẩn vi mô, tính năng trung bình vòng lặp sẽ bị tắt.
- Loại đối số: boolean
- Mặc định là:
false
Đề xuất cho bạn
- Lưu ý: văn bản có đường liên kết sẽ hiện khi JavaScript tắt
- Đối số đo lường Macrobenchmark
- Phân tích tài nguyên một Microbenchmark
- Tạo Hồ sơ cơ sở {:#creating-profile-rules}