mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-25 19:48:11 +00:00
### Description
<!-- Describe your changes. -->
Android emulator usage updates:
- Change approach to detecting boot has completed
- use `-delay-adb` and a simple command (`ls`) with `wait-for-device` as
the first step
- this ensures enough startup has occurred for adb to be responsive
- use secondary loop on the python side to check for sys.boot_completed
to be set
- doing the check on the python side provides more feedback and seems to
work well
- make the 'stop' logic more precise by using psutil
- add internal timeout of 20 mins for emulator startup
- waiting for the CI jobs overall timeout is way too long
- value is hardcoded for now (most CIs startup in under 10 mins) but
could be made configurable if needed
CI updates:
- add template for using the Android emulator
- update CIs to use template
- reorder React Native CI
- minimize the time the Android emulator or iOS simulator is running by
moving some build steps around
- don't run both at the same time
- unnecessary and potentially adds significant memory pressure to the
machine
- fix QNN Android emulator CI as much as possible
- now everything works apart from running onnx_test_runner with the QNN
EP
### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Fix inconsistent detection of the emulator boot completing.
---------
Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com>
|
||
|---|---|---|
| .. | ||
| jobs | ||
| stages | ||
| android-binary-size-check-stage.yml | ||
| android-dump-logs-from-steps.yml | ||
| android-java-api-aar-test.yml | ||
| android-java-api-aar.yml | ||
| build-linux-wasm-step.yml | ||
| c-api-artifacts-package-and-publish-steps-posix.yml | ||
| c-api-artifacts-package-and-publish-steps-windows.yml | ||
| c-api-cpu.yml | ||
| c-api-linux-cpu.yml | ||
| check-cache-stats.yml | ||
| clean-agent-build-directory-step.yml | ||
| common-variables.yml | ||
| compliance.yml | ||
| component-governance-component-detection-steps.yml | ||
| download-deps.yml | ||
| esrp_nuget.yml | ||
| explicitly-defined-final-tasks.yml | ||
| flex-downloadPipelineArtifact.yml | ||
| get-docker-image-steps.yml | ||
| install-appcenter.yml | ||
| java-api-artifacts-package-and-publish-steps-posix.yml | ||
| linux-build-step-with-cache.yml | ||
| linux-ci.yml | ||
| linux-cpu-packaging-pipeline.yml | ||
| linux-gpu-tensorrt-packaging-pipeline.yml | ||
| linux-wasm-ci.yml | ||
| linux-web-init-and-check.yml | ||
| mac-build-step-with-cache.yml | ||
| mac-cpu-packaging-pipeline.yml | ||
| mac-cpu-packaging-steps.yml | ||
| mac-cpu-packing-jobs.yml | ||
| mac-esrp-dylib.yml | ||
| nodejs-artifacts-package-and-publish-steps-posix.yml | ||
| nodejs-artifacts-package-and-publish-steps-windows.yml | ||
| ondevice-training-cpu-packaging-pipeline.yml | ||
| orttraining-linux-gpu-test-ci-pipeline.yml | ||
| publish-nuget.yml | ||
| py-linux-gpu.yml | ||
| py-linux.yml | ||
| py-package-smoking-test.yml | ||
| py-packaging-linux-test-cpu.yml | ||
| py-packaging-linux-test-cuda.yml | ||
| py-packaging-selectable-stage.yml | ||
| py-packaging-stage.yml | ||
| py-packaging-training-cuda-stage.yml | ||
| py-win-gpu.yml | ||
| react-native-ci.yml | ||
| rocm.yml | ||
| run-docker-build-steps.yml | ||
| set-nightly-build-option-variable-step.yml | ||
| set-python-manylinux-variables-step.yml | ||
| set-version-number-variables-step.yml | ||
| telemetry-steps.yml | ||
| upload-code-coverage-data.yml | ||
| use-android-emulator.yml | ||
| use-android-ndk.yml | ||
| use-xcode-version.yml | ||
| validate-package.yml | ||
| web-browserstack-ci.yml | ||
| web-ci.yml | ||
| win-ci.yml | ||
| win-esrp-dll.yml | ||
| win-wasm-ci.yml | ||
| win-web-ci.yml | ||
| win-web-multi-browsers.yml | ||
| with-container-registry-steps.yml | ||