Adopt the upstream split-backend linking once executorch#21849 lands
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
这个 Issue 还没有评估数据。
描述
Once pytorch/executorch#21849 lands, move RNE to an ExecuTorch release that carries it and adopt the supported arrangement rather than the one we build today.
Why this needs a deliberate step
We already ship split backend .so files, but our libs are built from the PR branch and the topology we rely on is not the one the upstream AAR uses. Ours works because libRnExecutorch.so links libexecutorch.so and the backend together, so they land in one lookup group with the runtime first. The shipped v0.10.2-libs backends confirm the dependency is implicit:
libxnnpack_executorch_backend.so NEEDED: libm, liblog, libdl, libc # no libexecutorch
GLOBAL DEFAULT executorch::runtime::register_backend(...) # its own copy
The merged version links the backend against the runtime instead, so register_backend and get_pthreadpool become UND and resolve through DT_NEEDED. That is load-order independent, and libexecutorch.so gains a matching SONAME.
What to check when we bump
-
android/CMakeLists.txtstill links the backends explicitly. WithDT_NEEDEDin place this is no longer what makes registration work, but it is still what gets them packaged. - Confirm the new backends are
UNDforregister_backend, not defining it:llvm-readelf --dyn-syms libxnnpack_executorch_backend.so | grep register_backend. - Confirm
DT_NEEDEDnameslibexecutorch.soand that theSONAMEof our staged runtime matches, or the loader looks for a file the APK does not carry. - Re-check the thread pool:
get_pthreadpool()must resolve to the runtime's singleton, otherwise XNNPACK runs on a second, unconfigured pool and our thread-count tuning silently does nothing. - Run a delegated model on device per backend. A backend registering into the wrong table fails as
DelegateNotFoundat execution, not at load, so a smoke test that only loads the library will not catch it.
Related
- Upstream PR: pytorch/executorch#21849
- Our current libs:
v0.10.2-libs
- 主要语言
- TypeScript
- 星标
- 1.8k
- 派生
- 101
- 平均合并
- 2 天 4 小时
- 30 天内合并 PR
- 58
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
software-mansion/react-native-executorch 的其他 Issue
-
dependencies platform: ios
难度 1/5 1-3 小时 新手友好度 78/100
software-mansion/react-native-executorch#1617 ·
维护者通常 1 天内回复
-
Peer react-native >=0.83可能已有人在做 @msluszniak 今天认领。 未关闭dependencies dev exp
难度 1/5 1 小时以内 新手友好度 25/100
software-mansion/react-native-executorch#1623 ·
维护者通常 1 天内回复
-
Docs: iOS < 17 fails pod install on the bare template可能已有人在做 @msluszniak 今天认领。 未关闭documentation platform: ios
难度 1/5 1 小时以内 新手友好度 20/100
software-mansion/react-native-executorch#1622 ·
维护者通常 1 天内回复
-
Docs: dynamic frameworks are supported可能已有人在做 @msluszniak 今天认领。 未关闭documentation platform: ios
难度 1/5 1-3 小时 新手友好度 35/100
software-mansion/react-native-executorch#1621 ·
维护者通常 1 天内回复
-
Docs: drop the Expo babel.config.js step可能已有人在做 @msluszniak 今天认领。 未关闭documentation
难度 1/5 1 小时以内 新手友好度 25/100
software-mansion/react-native-executorch#1620 ·
维护者通常 1 天内回复
查看 software-mansion/react-native-executorch 的全部 Issue
相似的 Issue
-
area: web bug
难度 2/5 1-3 小时 新手友好度 76/100
kinqsradio/orbyn-engineering#227 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
joeldesante/TurfBuilder#258 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
ncecere/open-mcp-portal#85 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 63/100
loathers/garbage-collector#2865 ·
维护者通常 1 天内回复
-
test-reliability
难度 2/5 1-3 小时 新手友好度 78/100
Azure/azure-sdk-for-js#40672 · 1 个 reaction ·
维护者通常 1 天内回复