Skip to content

Conversation

@sevenc-nanashi
Copy link
Member

@sevenc-nanashi sevenc-nanashi commented Jul 24, 2025

内容

タイトル通りです。

関連 Issue

スクリーンショット・動画など

(なし)

その他

1.23が出るまではマージしないでください。

Copy link
Member Author

@sevenc-nanashi sevenc-nanashi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

そういえば1.23.0が出るまではまだマージできませんね。まぁ仮置きとして。

あとこのPR、実は前の1.18のIssueで出てきたブランチの流用である関係で、一緒にCoreMLも作られてるんですよね。作らない理由もあんまりないので作っておいても良さそう?

@sevenc-nanashi sevenc-nanashi marked this pull request as ready for review July 25, 2025 08:36
@sevenc-nanashi
Copy link
Member Author

sevenc-nanashi commented Jul 25, 2025

LinuxのCUDAが今現在落ちてますが、それ以外は通っている & LinuxのCUDA版も動くと言って良いはずなのでとりあえずDraft解除。まだ1.23.0がリリースされていないのでマージはできませんが、まぁ一旦Ready for Reviewということで...

追記:通りました、https://github.com/sevenc-nanashi/onnxruntime-builder/actions/runs/16519003091

@sevenc-nanashi sevenc-nanashi changed the title feat: onnxruntime 1.23.0に対応 [DO NOT MERGE] feat: onnxruntime 1.23.0に対応 Jul 25, 2025
@sevenc-nanashi sevenc-nanashi changed the title [DO NOT MERGE] feat: onnxruntime 1.23.0に対応 feat: onnxruntime 1.23.0に対応 Sep 26, 2025
@sevenc-nanashi
Copy link
Member Author

1.23.0がリリースされたのでタイトルを更新しました。

@sevenc-nanashi
Copy link
Member Author

sevenc-nanashi commented Sep 26, 2025

@Hiroshiba Hiroshiba requested review from Copilot and qryxip September 26, 2025 16:29
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR updates ONNX Runtime support from version 1.17.3 to 1.23.0. The changes include removal of version-specific patches, build configuration updates, and enhanced CI workflow with new platform targets and device support.

  • Updates default ONNX Runtime version from 1.17.3 to 1.23.0
  • Removes obsolete patches for 1.17.3 (Windows, strip, and Android ARM64 build fixes)
  • Expands CI build matrix with WebGPU and CoreML support across multiple platforms

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
1_17_3_windows.patch Removes Windows-specific mutex header patch no longer needed
1_17_3_strip.patch Removes binary stripping patch for build artifacts
1_17_3_android_arm64_build.patch Removes Android ARM64 cross-compilation fix
.github/workflows/build.yml Updates version, adds new build targets, and refactors CI configuration

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@Hiroshiba
Copy link
Member

Hiroshiba commented Oct 11, 2025

@qryxip もしお時間あればレビューぜひ・・・!! 🙏
(難しそうなら僕がチャレンジしてみます)


📝 Copilot君結構活躍してくれた?っぽいので再割当て

@Hiroshiba Hiroshiba requested a review from Copilot October 11, 2025 06:15
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment on lines +646 to -573
os=${{ matrix.spec_os }}
arch=${{ matrix.spec_arch }}
for arg in "${build_opts[@]}"; do
case "$arg" in
CMAKE_SYSTEM_NAME=Windows) os=Windows ;;
CMAKE_SYSTEM_NAME=Linux) os=Linux ;;
CMAKE_SYSTEM_NAME=Darwin) os=macOS ;;
--android) os=Android ;;
--ios) os=iOS ;;
CMAKE_SYSTEM_PROCESSOR=x86_64 | CMAKE_OSX_ARCHITECTURES=x86_64 | x86_64) arch=x86_64 ;;
--x86) arch=x86 ;;
CMAKE_OSX_ARCHITECTURES=arm64 | --arm64 | arm64 | arm64-v8a) arch=AArch64 ;;
--arm) arch=ARMv7 ;;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ここら辺のCMAKE_SYSTEM_NAMEみたいなやつですが、記憶が正しければこれらのいくつかはVVORTのために設定したような気がします。うろおぼえですが。

誤動作を起こさないのであれば無くていいと思います。まあ検証するのも面倒なので、一度消し飛ばしてVVORTのビルドが壊れたら足すというやりかたでもよいと思います。

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ここはビルド仕様の生成なのでvvortの誤作動云々とは関係ないはず?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ぼかして書いたのが良くなかったですが、CorrosionのFindRust.cmakeについてですね。CMAKE_SYSTEM_NAMEみたいなものを突っ込まないとAndroidとかiOSだと、推定に失敗してた記憶です。まあちょっと記憶があやふやではあるんですが。

Copy link
Member

@qryxip qryxip Oct 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ここはビルド仕様の生成

というのはそうで、matrix定義側の方にコメントすべきでした。

ONNXRUNTIME_VERSION:
|- # workflow_dispatchでのバージョン名が入る。無指定なら適当なバージョン
${{ inputs.version || '1.17.3' }}
${{ inputs.version || '1.23.0' }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

そういえば3日前にv1.23.1が出たみたいです。

Comment on lines +646 to +647
os=${{ matrix.spec_os }}
arch=${{ matrix.spec_arch }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ここの変数名は少し時間をかけて考えてもいいかもしれません。他に良いのが無ければspec_{os,arch}でいいとは思いますが。
CC: @Hiroshiba

spec_base: { os: "…", arch: "…" }みたいなのを用意してjqの式で+でマージ、という手もあるかもしれません。

Copy link
Member

@Hiroshiba Hiroshiba Oct 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spec_osspec_archはそもそも何書けば良いのかわからないなーと感じました。
・・・ビルドターゲットとするOSやarchのわかりやすい名称・・・?

であればtarget_osとかが分かりやすそう感。
spec_baseもまあtarget_specだとかtarget_infoだとかにしても良いかも。
まあ何に変えるかは置いといて、名前はちょっとややこしそうな気がしました!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

今思い付いたのですが、spec_table_key_base: { os: "…", arch: "…" }はどうでしょうか?これにdevicesを足せばUNIQUE KEYになるっってことで、spec tableのkeyのbase(?)ってことで…。

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

そもそもspec系は仕様テーブルの生成でしか使われていないはずなので、target_osとかでもよさそう。

Copy link
Member

@qryxip qryxip Oct 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ビルド自体に使う文字列なんじゃないかという疑問を持たれないかという懸念はありますが、まあ変数の利用箇所なんてコード検索(Vimならカーソル位置からvey/<C-r>"<C-j>)でもわかるでしょうし、認知不可を著しく上げるといったことは無さそうかも。

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

そういえばこの話はどうしましょうか?spec_{os,arch}のまま?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@qryxip さんが一番わかりやすい形でメンテするのが良さそうなので、 @qryxip さんに判断おまかせが良さそうに思いました!!

@qryxip qryxip self-requested a review October 15, 2025 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ONNX Runtime v1.18をビルドする

3 participants