我要评分
获取效率
正确性
完整性
易理解

FAQ

Q1: Do I need to translate instructions again after restarting the application?

A: ExaGear performs dynamic translation only during execution.

Q2: How much performance loss does instruction translation cause?

A: According to the SPEC CPU 2017 test, the CPU performance loss is 10%. The actual performance loss may be higher or lower than 10%. It depends on the actual situation.

Q3: Can ExaGear be installed on a VM?

A: Yes. Note that the VM OS type must be the same as the guest OS type supported by ExaGear and the VM must be an Arm VM.

Q4: Can Windows applications be translated?

A: In principle, ExaGear does not support this function unless ExaGear can run on Linux x86 servers together with Wine. ExaGear does not guarantee the correctness of end-to-end functions because Wine is involved.

Q5: What is the virtual address range of ExaGear?

A: The length of the virtual address used in the current server version is 48 bits. If the virtual address space allowed by the kernel is less than this length, a segmentation fault occurs during startup.

Q6: What shall I do if an error message "Error: Problem: conflicting requests - nothing provides tar needed by exagear-guest-centos-7-x86_64-xxxx-1.noarch" or "error: Failed dependencies: tar is needed by exagear-guest-centos-7-x86_64-xxxx-1.noarch" is displayed during installation?

A: Install a tar tool on the host OS or configure the yum repo if you use yum to install ExaGear.

Q7: How do I check whether the SPE function is enabled in the current environment?

A: Check the file path /sys/bus/event_source/devices/arm_spe_xx. If the file path exists, SPE has been enabled in the current environment.

Q8: When EXAGEAR_USE_OPT is set to "y" and the dynamic secondary optimization is enabled, x86 applications cannot run properly. What are the possible causes?

A: Run the systemctl status exagear-x86_*-opt.service command to check the status of the exagear-x86_*-opt.service system service and ensure that the dynamic secondary optimization service is normal.

Q9: Does ExaGear support both little-endian and big-endian byte orders?

A: ExaGear supports only little-endian CPU settings.

Q10: Why cannot x86 applications run properly after glibc in the guest system is upgraded?

A: The glibc pre-provided by the guest environment contains an optimization patch. If you upgrade the glibc, the optimization item NATIVE_RETURN_ADDR_OPT becomes invalid. You need to set EXAGEAR_DISABLE_NATIVE_RETURN_ADDR_OPT to "y" to disable the optimization item.