monai-deploy-app-sdk icon indicating copy to clipboard operation
monai-deploy-app-sdk copied to clipboard

App SDK Packager and Runner needs to support AArch64/ARMv8

Open MMelQin opened this issue 4 years ago • 1 comments

Is your feature request related to a problem? Please describe. Deploy applications built with MONAI Deploy App SDK needs to extend the support to run on AArch64/ARMv8. PoC has been done to show that the example applications successful run on AArch64 once the dependencies packages, e.g. torch, are installed, via a AArch64 base image, e.g. Nvidia nvcr.io/nvidia/clara-agx/agx_pytorch:21.05-1.7-py3, or other.

The App SDK Packager, though, currently limits the supported base image to X86 PyTorch images, in addition, it injects a executable module (built from C# code) that only supports X86 and presents it as the app Docker entry point. Hence, the Packager needs to be updated to allow AArch64 PyTorch base image, e.g. Nvidia nvcr.io/nvidia/clara-agx/agx_pytorch:21.05-1.7-py3,

The App SDK Runner, which should run itself on X86 and AArch64, but runs the app Docker with the entry point injected by the Packager, that currently does not support AArch64. So the Runner may choose to directly run the app's main while the inject executable still does not support AArch64.

Describe the solution you'd like See above. Key functionalities are AArch64 base image, as well as AArch64 compatible module serving as the entrypoint which is used to integrate with the App Server (App Server is not yet available).

Describe alternatives you've considered PoC has been done. The app is built into a Docker image with nvcr.io/nvidia/clara-agx/agx_pytorch:21.05-1.7-py3 as base along with pip installing required PyPi packages. On running docker, the application's main is called directly. This has been proven successful on Nvidia AGX server, Ubuntu 18.04 LTS on AArch64.
Additional context There is a strong user and business needs for supporting AArch64

MMelQin avatar Oct 10 '21 23:10 MMelQin

+1

dbericat avatar Oct 12 '21 20:10 dbericat