历史性时刻!ARM首次成功模拟运行x86

简介:

ARM在移动领域风生水起,但是要想在桌面和服务器上占领一席之地,最大的麻烦就在于不兼容最为普及的x86代码系统和程序,而出路只有两条:要么大力推进自己的生态系统,要么模拟运行x86,就像曾经的全美达那样(下场比较惨)。

今年七月份,英国厂商Boston Server推出了基于Calxeda ARM架构处理器的服务器“Viridis”,之后也一直在披露其工作进展,近日更是豪气万丈地官方宣布了一个历史性时刻的到来:这套ARM平台第一次成功运行了x86代码!

过去一段时间里,Boston一直在和来自Eltech的工程师团队就此进行合作。这家貌似来自俄罗斯的公司正在ARM服务器上开发能够运行x86程序的软件,并且已经成功开发出了一种可作为模拟器使用的二进制转换器(binary translator),能够发挥出大约45%的原生ARM性能。

双方在Viridis平台上进行了六大类别的深入测试后,将这一模拟效率提高到了65%,并且会争取在近期继续提高到80%,乃至更高。

虽然Boston拒绝披露具体细节,但是AnandTech网站分析指出,Eltech的模拟器是实时翻译、运行x86代码的,因此整个模拟器会有些偏大,毕竟它要在两套完全不同的指令集架构之间牵线搭桥,不同于VMware那样在x86-x86之间转换。

据称,Eltech使用了1MB的转换器缓存,这意味着代码转换可以重复利用,但随着缓存逐渐填满,重复利用率就会迅速降低,而且只有相对轻便的代码才能运行得比较快,获得宣称的45-65%的转换效率。

但是我们知道,大多数服务器应用的代码和指令都很大,所以Eltech的转换器能否高效率运行它们也有待观察。高性能计算软件倒是相对不那么复杂,但这玩意儿对处理器性能要求又特别高,很难说服他们放弃x86、改用ARM再去模拟x86(何苦来着)。

总的来说,二进制转换器在特定场合下还是有用的,比如某些特定的Web应用软件不算很大,又是闭源的,没有ARM版本,但除此之外就很难说了。ARM服务器真想闯出一片天地,最稳妥的还得是催生一整套针对ARM架构完全优化编译的Linux软件。

【编辑推荐】

目录
相关文章
【各种问题处理】X86架构和ARM架构的区别
【1月更文挑战第13天】【各种问题处理】X86架构和ARM架构的区别
|
7月前
|
传感器 物联网 网络架构
ENS、IoT设备、X86、ARM
ENS(Enterprise Name Service)是企业名称服务,是一种为物联网设备提供命名和寻址服务的技术。ENS通过为物联网设备分配唯一的名称和地址,使得物联网设备可以被网络中的其他设备和服务所识别和访问。 IoT设备(Internet of Things device)是连接到互联网的物理设备,可以收集和共享数据,用于监测、控制和优化各种业务流程和操作。IoT设备包括各种传感器、执行器、网关和路由器等。
101 2
|
4月前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
979 3
|
24天前
|
机器学习/深度学习 弹性计算 人工智能
阿里云服务器架构有啥区别?X86计算、Arm、GPU异构、裸金属和高性能计算对比
阿里云ECS涵盖x86、ARM、GPU/FPGA/ASIC、弹性裸金属及高性能计算等多种架构。x86架构采用Intel/AMD处理器,适用于广泛企业级应用;ARM架构低功耗,适合容器与微服务;GPU/FPGA/ASIC专为AI、图形处理设计;弹性裸金属提供物理机性能;高性能计算则针对大规模并行计算优化。
|
2月前
|
Docker 容器
docker:记录如何在x86架构上构造和使用arm架构的镜像
为了实现国产化适配,需将原x86平台上的Docker镜像转换为适用于ARM平台的镜像。本文介绍了如何配置Docker buildx环境,包括检查Docker版本、安装buildx插件、启用实验性功能及构建多平台镜像的具体步骤。通过这些操作,可以在x86平台上成功构建并运行ARM64镜像,实现跨平台的应用部署。
1570 2
|
2月前
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器计算架构X86/ARM/GPU/FPGA/ASIC/裸金属/超级计算集群有啥区别?
阿里云服务器ECS提供了多种计算架构,包括X86、ARM、GPU/FPGA/ASIC、弹性裸金属服务器及超级计算集群。X86架构常见且通用,适合大多数应用场景;ARM架构具备低功耗优势,适用于长期运行环境;GPU/FPGA/ASIC则针对深度学习、科学计算、视频处理等高性能需求;弹性裸金属服务器与超级计算集群则分别提供物理机级别的性能和高速RDMA互联,满足高性能计算和大规模训练需求。
|
4月前
|
机器学习/深度学习 算法 数据库
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
在我们选择阿里云服务器的架构时,选择合适的云服务器架构对于提升业务效率、保障业务稳定至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供参考和选择。
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
|
3月前
|
Go 开发工具 git
在Qemu+ARM上运行Minix3内核
在Qemu+ARM上运行Minix3内核
|
6月前
|
物联网
arm架构和x86架构区别
arm架构和x86架构区别
|
6月前
|
Ubuntu 编译器 C语言
蓝易云 - ubuntu上安装boost库为SOMEIP的X86和ARM下编译做准备(编译两种版本)
以上就是在Ubuntu上安装Boost库并为SOME/IP的X86和ARM架构编译做准备的全部步骤。
83 0
下一篇
DataWorks