[mono][infra] Enable runtime tests in fullAOT LLVM mode on linux-x64#92057
[mono][infra] Enable runtime tests in fullAOT LLVM mode on linux-x64#92057kotlarmilos merged 110 commits intodotnet:mainfrom
Conversation
|
Tagging subscribers to this area: @directhex Issue DetailsWork in progress. This PR tests the linux-x64 fullAOT CI job.
|
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run runtime-extra-platforms |
|
/azp run runtime-extra-platforms |
|
/azp run runtime-extra-platforms |
|
/azp run runtime-extra-platforms |
|
/azp run runtime-extra-platforms |
|
/azp run runtime-extra-platforms |
|
This PR is ready for review. Failures shouldn't be related. Runtime tests: https://dev.azure.com/dnceng-public/public/_build/results?buildId=629337&view=logs&jobId=d29f5ac9-2776-59d5-99ad-be6d4bcd416c&j=d29f5ac9-2776-59d5-99ad-be6d4bcd416c |
| testGroup: innerloop | ||
| nameSuffix: AllSubsets_Mono_LLVMFullAot_RuntimeTests_Tests | ||
| runtimeVariant: llvmfullaot | ||
| buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true |
There was a problem hiding this comment.
Not sure if it is needed in this PR but we should consolidate which flags are used for fullAOT/AOT jobs across our builds. For example, for perf jobs we use /p:MonoAOTEnableLLVM=true /p:MonoEnableLLVM=true /p:BuildMonoAOTCrossCompiler=true https://github.com/matouskozak/runtime/blob/12f546416d4aeb23b980a92e407fbf693823236d/eng/pipelines/coreclr/perf-non-wasm-jobs.yml#L39
There was a problem hiding this comment.
Good point. This command only builds the runtime.
The AOT compiler is built in an optional step which contains required parameters:
There was a problem hiding this comment.
Should we align on the use of Is the MonoBundleLLVMOptimizer vs MonoAOTEnableLLVM then?MonoBundleLLVMOptimizer=true necessary then? Looks like MonoEnableLLVM=true should be enough
Line 46 in c7ada75
| testGroup: innerloop | ||
| nameSuffix: AllSubsets_Mono_LLVMFullAot_RuntimeIntrinsicsTests | ||
| runtimeVariant: llvmfullaot | ||
| buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true |
There was a problem hiding this comment.
Not sure if it is possible with Helix, but could we re-use the build from AllSubsets_Mono_LLVMFullAot_RuntimeTests_Tests job? The runtime build should be the same, the difference is only which tests get build...
There was a problem hiding this comment.
Correct, perhaps we can create a template. @fanyang-mono Should this be moved to runtime-llvm.yml?
There was a problem hiding this comment.
Moved to the runtime-llvm.yml and fixed llvmaot job.
|
These jobs have been moved to |
|
The failures shouldn't be related. |
Description
This PR enables jobs to run runtime tests in fullAOT LLVM mode on linux-x64. The jobs utilize the CBL-Mariner docker image, which contains the clang toolchain instead of binutils. Due to OOM and timeout issues, the tests are split into two jobs: intrinsics and other runtime tests.
Failing tests have been disabled and will be triaged in subsequent PRs. The arm64 support will be introduced in subsequent PRs. A list of disabled tests is included in #90427.