在Raspberry Pi 3 B上启用ARMv8


14

根据本文的介绍,我应该能够在Raspberry Pi Model 3B上切换到ARMv8,但是添加到该行之后,我会看到“彩虹屏”config.txt

arm_control=0x200
  • 为什么不起作用?
  • 从ARMv7切换到ARMv8还是值得的(考虑到我将来愿意编译一些C ++程序)。

我正在使用Raspbian 9.1“ stretch”并/prc/cpuinfo报告“ ARMv7 Processor rev 4(v7l)”。


价值?要看!如果要滚动自己的内核,则可以。你想要_____吗?
Fabian

@Fabian,如果其需要/价值不佳-是的。但是Raspbian 9.1不是“ ARMv8就绪”吗?
madneon

Answers:


8

我认为这里的其他人在回答问题上做得很好:

从ARMv7切换到ARMv8甚至值得

引用各种需要ARMv8的软件包括CockroachDB,MongoDB(如果访问> 2 GB),Dolphin仿真器和OpenMW。但是,同样,您会迷失其他可能受64位内核支持较少的功能或程序(例如,使用brcmEGL + dispmanx进行游戏)。

arm_control=0x200

为什么不起作用?

看来您已经跳过了在64位内核及其模块中进行实际复制的关键步骤。该eLinux文章可能也已过时,因为默认的Raspbian Stretch引导程序将自动引导kernel8.img(如果存在)

如果您不是从源代码构建64位内核,则可以从本文的原始作者那里下载一个工作版本,此版本位于GitHub(仅Pi 3B)上。他的形象是基于Debian的arm64,如果你打算使用这种内核与Raspbian请务必在复制/boot/{kernel8.img,*.dtb,overlays,config.txt,cmdline.txt}/lib/modules/从Pi64图像。您还可以下载并安装这样的预配置Raspbian映像:

返回您其他问题的一部分:

(考虑到我将来愿意编译一些C ++程序)。

如果您打算使用Pi 3来开发和测试armhf和arm64应用程序,则最好直接运行Pi64。与Raspbian不同,它支持MultiArch,因此不需要运行64位容器。在Raspbian / Debian生态系统之外,其他64位发行版包括Ubuntu Server,Gentoo,openSUSE和Fedora(请参见其他人的评论)。


OpenGL不为64位系统提供硬件加速吗?还是仅在Pi中?
JAB

@JAB我的评论特定于Pi 64位内核状态,尽管目前这个问题还不清楚。即使在我的系统上modprobe vc4,当Minecraft Java Edition爬行时,我也可以并获得60+ fps的glxgear。同样,gentoo-on-rpi3-64bit在其主题行中声称VC4兼容性。我已经编辑了我的帖子,以删除对OpenGL的提及,直到我有了更多事实为止。
jdonald '18年

8

从ARMv7切换到ARMv8值得吗?

除非您正在运行针对ARMv8编译的内核和OS用户域,否则不可以。Pi 3至少有一些类似的东西,包括Fedora。有关为何仍没有特殊版本的Raspbian的一些提示,请参见此处:

Raspbian移至64位模式

否则,我认为唯一相关的是处理器报告自身的方式,可以通过来找到/proc/cpuinfo。尽管这种做法显然并不普遍,但有些人将其用作将一种pi模型与另一种pi模型区分开的方法。换句话说,除非您知道这样做的原因,否则没有一个。


那么,除了v8是64位(并且可以支持64b OS)之外,没有其他增益了吗?
madneon

同样,从运行64位系统中获得的任何好处都需要编译软件以从内核开始进行开发(否则,其他任何操作都将无法正常进行)。据我所知,启用此功能不会有任何区别(从事态发展来看可能会产生问题)。
goldilocks

Fedora并不难理解,几乎从RPi3上市之日起就在RPi3上提供aarch64。在这里下载。@madneon
迈克尔·汉普顿

@MichaelHampton感谢您的更新-Fedora实际上是我的首选发行版,我在2和3上使用股票arm7。不过,我很想念这件事有些奇怪(维基说,从第25版开始,一般来说就对pi提供支持,而在第3版发布后将接近一年)。无论如何,已编辑。
goldilocks

嗯,是的,有23和24个aarch64版本,但它们是非官方的。
迈克尔·汉普顿

2

到今天为止,似乎FedoraArchlinux得到了很好的支持。

如果您采用Arch方式,将帮助您构建映像(对我来说,在linux / rpi3上是make linux),将帮助您启动wifi。

如果需要确定您拥有哪个覆盆子,请使用本指南

arm_control=0x200已弃用,而arm_64bit应在中使用/boot/config.txt


1

从ARMv7切换到ARMv8甚至值得

我一直在研究这个。我对一些程序进行了基准测试,结果看到了性能的大幅提高。挖掘更深的原因是,ARMv8为整数除法添加了一条新指令,该指令比传统的汇编例程要快得多。

因此,至少有一个理由升级到v8!

否则,我必须承认,ARMv8看起来与ARMv7几乎相同。

编辑:我说谎。事实证明,我所谈论的是当64位模式具有AArch64时的AArch32,根据这一出色的介绍, AArch64是完全不同的指令集。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.