題:
Raspberry Pi 3和64位內核,armv7和armv8之間的區別
graywolf
2016-06-07 17:47:40 UTC
view on stackexchange narkive permalink

Raspberry Pi 3是否有64位內核?我四處張望,從源頭上檢查了官方頁面,並列出了以下內核:

  1. NOOBS-這是安裝程序,本身沒有操作系統,對嗎?
  2. Rapsbian-只是一次下載,因此我假設32位版本與所有版本的Pi
  3. Ubuntu MATE-aarch32(ARMv7)
  4. Ubuntu Ubuntu Core-似乎僅32位兼容
  5. OSMC-“ Raspberry Pi 2/3”的相同下載,因此32位
  6. LibreELEC-2&3的組合構建,因此僅32位
  7. PiNet-不知道這是什麼,但不確定64位
  8. RISC操作系統-好像不是Linux
  9. 氣象站-是的,只是沒有
  10. ol>

    所以看來有官方的64位內核可用嗎?有非官方的嗎?我可以只編譯一個並期望它能工作嗎(我想不是,但是問這個問題並不麻煩..)?至少有人從事嗎?我希望可以訪問本機64位數字。

    另一方面,armv7和armv8之間有多大區別? Gentoo為armv7提供了第3階段tarball。可以在Armv8的Pi 3上使用嗎?

*“ Gentoo為armv7提供了第3階段的壓縮文件。可以在支持armv8的Pi 3上使用嗎?” *再一次,不,不是沒有很多黑客,而是因為pi內核沒有儲備,不是因為ARMv7無法使用ARMv8(當前Pi 2和3使用相同的內核)。
gentoo指南繼續從github編譯Pi內核源代碼,因此我認為他們對此負責。我只是想知道是否可以在ARMv8板上使用ARMv7版本,似乎可以
七 答案:
tlhIngan
2016-06-07 21:06:26 UTC
view on stackexchange narkive permalink

普遍的共識是64位內核不會提高Pi的性能,因為64位內核的唯一兩個真正好處是:

  1. 更大的int值,您可以手動指定仍然在32位內核中
  2. 具有超過4 Gb RAM的可能性,因為在RAM中是內置的且不可擴展的,所以在Pi上這是沒有用的。
  3. ol>

    此外,ARM芯片上的64位與32位相比,並不是x86芯片上的重大性能飛躍,因為x86芯片升級到64位時具有重大的體系結構升級,而ARM芯片在32位版本中已經相當強大

    不過,請隨時嘗試! :)

OP並未詢問性能,而是詢問了可用性。就我個人而言,我正在尋找Pi的64位發行版是因為最新的MongoDB放棄了對32位的支持。
此外,aarch64構建傾向於較少依賴['封閉源供應商庫'](https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-3),並釋放了v8的潛力,而不是讓您保持鎖定到v7功能。
64位系統沒有[2038年的問題](https://en.wikipedia.org/wiki/Year_2038_problem)
Dan V
2016-06-07 18:01:18 UTC
view on stackexchange narkive permalink

從我發現的內容來看,沒有什麼穩定和正式的東西。有些已經可以編譯了,但是隨後的驅動程序/模塊出現了問題。

這些鏈接可能會讓您感興趣。 / p>

進入aarch64執行狀態

用於RPi3的Raspbian Jessie(64位)?

+1。真的很想嘗試64位操作系統。我可能會嘗試修補並為Pi編譯一個非常輕量級的操作系統(輕便使事情變得容易)
@PandaLion98我對此會非常感興趣
Chris
2016-09-27 04:24:15 UTC
view on stackexchange narkive permalink

每個人似乎都忘記了64位的一個好處是ARMv8的寄存器明顯多於ARMv7,浮點性能也更好。建築。

zhiyisun
2017-02-21 13:24:34 UTC
view on stackexchange narkive permalink

OpenSUSE發布了其64位Raspberry Pi映像。

https://en.opensuse.org/HCL:Raspberry_Pi3

Roy Longbottom
2016-06-18 22:13:49 UTC
view on stackexchange narkive permalink

我發現在使用1.3 GHz ARM Cortex-A53的平板電腦上運行Android基準測試時,64位編譯比32位編譯有明顯的性能提升。最新版本通過Eclipse編譯,並在運行時檢測CPU是ARM,Intel還是MIPS,然後是32位或64位體系結構。

在以前的Windows版Intel CPU編譯中,可以工作64位由於使用SSE類型的SIMD指令,其速度比32位快得多。但是,後來的32位編譯器具有向後不兼容的功能,它們產生的代碼幾乎相同,速度也差不多。 1.2 GHz的Cortex-A9。最後是一些彙編代碼清單,用於標識所使用的不同指令。以下是結果摘要。

http://www.roylongbottom.org.uk/android%2064%20bit%20benchmarks.htm#anchorStart

Whestone基準-(微小循環)相似的性能,總體等級受使用EXP函數編譯測試的影響。

Dhrystone基準-最新的MIPS / MHz 1.09 32位,1.96 64位,1.10 A9-可能是64

Linpack基準測試-(N = 100)64位DP 1.97倍速,SP 2.67倍-請參見彙編代碼。

Livermore循環-(24個內核)平均1.5速度提高1倍,範圍為0.8到7.9倍

L1 / L2緩存和RAM測試

MemSpeed-浮點和整數計算-獲得2.2倍緩存,1.5倍RAM。 p> BusSpeed-整數數據流和突發讀取-流2.0 x L1、1.5 x L2、1.25 x RAM-突發2.6 x L1,類似的L2和RAM。

RandMem-串行和隨機讀取和讀取/使用相同的複雜索引結構進行寫操作-通常在讀取時會快一點,但讀/寫類似/慢。

然後是上述的MP版本,並嘗試使用2.7 GFLOPS 32位和5.5 GFLOPS 64位的4個內核最大值來測量最大SP MFLOPS(MP-MFLOPS)。還有一個使用NEON內在函數的版本,其中64位編譯器生成高達10.8 GFLOPS的替代指令,而生成32位的5.7的指令-請參見程序集清單。我也有針對Windows 10和Android Intel Atom平板電腦的這些基準測試的版本-64位和32位Windows,32位Android-未完全實現的完整64位-64位Linux內核,但32位Android。

http://www.roylongbottom.org.uk/android%20benchmarks.htm

另外,我有32位和64位Linux / Intel版本。

Roy Longbottom

minhng99
2016-12-31 10:20:42 UTC
view on stackexchange narkive permalink

這是我編譯RPI3 Aarch64內核的方法:

首先,您需要Linaro aarch64: https://releases.linaro.org/components/toolchain/binaries/latest/aarch64 -linux-gnu / gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.tar.xz

解壓縮,放在某個地方,例如: / opt / toolchains /gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu

這是我的腳本,用於下載固件,VC,內核源代碼和帶有模塊的編譯內核,我將此腳本用於我的Jenkins服務器選擇了您需要的東西:

  git clone https://github.com/raspberrypi/linux.git -b rpi-4.8.y --depth = 1cd linuxexport CROSS_COMPILE = / opt / toolchains / gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu / bin / aarch64-linux-gnu-export ARCH = arm64export INSTALL_MOD_PATH = MODULES / export KERNEL = kernel8rm -rf BOOTrm -rf MODULESrm -rf rpi-專有/ mkdir -p BOOT / overlaysmkdir模塊git clone https://github.com/Hexxeh/rpi-firmware.git --depth = 1 rpi-proprietary / cp ./rpi-proprietary/COPYING.linux ./BOOT/ cp ./rpi-proprietary/LICENCE.broadcom ./BOOT/cp ./rpi-proprietary/bootcode.bin ./BOOT/cp ./rpi-proprietary/fixup.dat ./BOOT/cp ./rpi-proprietary/fixup_cd .dat ./BOOT/cp ./rpi-proprietary/fixup_db.dat ./BOOT/cp ./rpi-proprietary/fixup_x.dat ./BOOT/cp ./rpi-proprietary/start.elf ./BOOT/cp。 /rpi-proprietary/start_cd.elf ./BOOT/cp ./rpi-proprietary/start_db.elf ./BOOT/cp ./rpi-proprietary/start_x.elf ./BOOT/cd ./rpi-proprietary/vc/hardfp / opt / tar -cvzf VC.tar.gz vc / cd ../../../../mv ./rpi-proprietary/vc/hardfp/opt/VC.tar.gz ./rm -rf rpi -proprietary / make bcmrpi3_defconfigmake模塊make module_installmake -j10rm -rf MODULES / lib / modules / * v8 * / build MODULES / lib / modules / * v8 * / sourcecp ./arch/arm64/boot/Image ./BOOT/kernel8.imgcp。 /arch/arm64/boot/dts/broadcom/*.dtb ./BOOT/cp ./arch/arm64/boot/dts/overlays/*.dtbo ./BOOT/overlays/cp ./arch/arm64/boot/dts / overlays / README ./BOOT/overlays/tar -cvzf MODULES.tar.gz MODULES / tar -cvzf BOOT.tar.gz BOOT / make mrproper  

現在只需解壓BOOT.tar.gz並將其放入您的sdcard。

重要:您必須將 arm_control = 0x200 進行配置.txt以啟動AARCH64內核

Pierre-Alexis Ciavaldini
2019-05-21 23:50:53 UTC
view on stackexchange narkive permalink

到目前為止,似乎已經很好地支持了 Fedora Archlinux

如果採用Arch方式,將幫助您構建映像(對我來說,在linux / rpi3上是 make linux )和將幫助您啟動wifi。

如果您需要確定自己擁有哪個樹莓,請使用本指南

不建議使用 arm_control = 0x200 ,而應在 /boot/config.txt 中使用 arm_64bit 。 >



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...