Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build AMD64 Triton from ARM64 machine generate ARM64 architecture executable file #7745

Open
ti1uan opened this issue Oct 26, 2024 · 2 comments
Assignees
Labels
build Issues pertaining to builds module: platforms Issues related to platforms, hardware, and support matrix

Comments

@ti1uan
Copy link

ti1uan commented Oct 26, 2024

Description
Hi, I tried to build x86_64 Triton from source using build.py script in an ARM64 machine, but the executable file was in arm64 architecture.
command: python3 build.py --target-platform=linux --target-machine=x86_64 --backend=python --backend=fil --endpoint=sagemaker --enable-logging --enable-metrics --enable-stats --build-type=Release

Triton Information
What version of Triton are you using?
24.09

Are you using the Triton container or did you build it yourself?
Build it by myself

To Reproduce
Steps to reproduce the behavior.
Run python3 build.py --target-platform=linux --target-machine=x86_64 --backend=python --backend=fil --endpoint=sagemaker --enable-logging --enable-metrics --enable-stats --build-type=Release in an ARM64 machine, then go to tritonserver image docker run -it tritonserver /bin/bash and install file: apt-get update && apt-get install -y file, finally check the executable tritonserver file file /opt/tritonserver/bin/tritonserver

Describe the models (framework, inputs, outputs), ideally include the model configuration file (if using an ensemble include the model configuration file for that as well).
N/A

Expected behavior
A clear and concise description of what you expected to happen.
With --target-machine=x86_64 option, the executable file should be amd64 architecture.

@ti1uan ti1uan changed the title Build AMD64 Triton from ARM64 machine generate AMD64 architecture executable file Build AMD64 Triton from ARM64 machine generate ARM64 architecture executable file Oct 26, 2024
@rmccorm4
Copy link
Contributor

Hi @ti1uan, thanks for raising this issue.

@nv-kmcgill53 @mc-nv are you familiar with our support for cross-compiling with build.py? I'm not sure if we currently have tests that verify everything end-to-end works as expected when cross-compiled, rather than compiling on the host architecture.

@rmccorm4 rmccorm4 added question Further information is requested module: platforms Issues related to platforms, hardware, and support matrix build Issues pertaining to builds and removed question Further information is requested labels Nov 15, 2024
@mc-nv
Copy link
Contributor

mc-nv commented Nov 15, 2024

With docker users can use QEMU emulator and have multi-platform build.
Implementation of it can be very costly in time and hard in troubleshooting (especially while our scenarios include Docker-out-of-Docker configuration).

We probably have to defer this task, till we start refactoring CMake configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues pertaining to builds module: platforms Issues related to platforms, hardware, and support matrix
Development

No branches or pull requests

4 participants