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

speed is slow when use as cross-compile solution #176

Open
furyNerd opened this issue Jul 21, 2022 · 5 comments
Open

speed is slow when use as cross-compile solution #176

furyNerd opened this issue Jul 21, 2022 · 5 comments

Comments

@furyNerd
Copy link

Is this a bug report, feature (enhancement) request or question? (leave only one on its own line)

kind question

Description:

hi, i use qemu-user-static as a cross-compile solution, but found the time of compile consumed is average 2~5 times more than directly compile on the targe platform.
since i'm not familiar with qemu, my question is this normal or there is some way to speed up?

i do some search and found kvm is a relative topic, but looks like kvm only suitable for the same architecture of both host and target platform(e.g. both host and target are x86_64 platform), so can i have some brief answer for this question?

my host is ubuntu 20.04 lts with x86_64 cpu, and a docker of arm64v8/ubuntu for cross-compile for a arm64v8 target, before i use the cross-compile docker i run the lastest multiarch/qemu-user-static as demonstrated in readme.

any suggestion?thanks very much.

Steps to reproduce the issue:

as above

Describe the results you received:
as above

Describe the results you expected:
as above

Environment:
as above

@martin-g
Copy link

so can i have some brief answer for this question?

brief answer: yes, it is normal that emulated execution is several times slower than the same command on a real hardware

@furyNerd
Copy link
Author

thanks for the brief and strong confirm,
so it's not a misuse and there is no way to improve just by configuring something?
and is my understanding about kvm is right?

@martin-g
Copy link

there is no way to improve just by configuring something?

at least I am not aware of such way

and is my understanding about kvm is right?

yes, I think so, but I am not very familiar with the KVM internals

If you need an ARM64 system for personal needs then I'd recommend you to use Oracle Cloud. They provide free VMs. I've explained more here: https://martin-grigorov.medium.com/github-actions-arm64-runner-on-oracle-cloud-a77cdf7a325a

@furyNerd
Copy link
Author

thank you for the more detailed discussion, and also for the useful link.
for anyone who wish a brief answer, hope this discussion could be a quick reference :)

@jansure
Copy link

jansure commented Feb 24, 2023

I think maybe libhoudi.so can resolve your problem,but I can not know libhoudini.so how to be used in centos or ubuntu.

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

No branches or pull requests

3 participants