Announcement

Collapse
No announcement yet.

32-bit ARM Is Also On The Chopping Block For Ubuntu

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Faalagorn
    replied
    Originally posted by jacob View Post

    Er. Actually the ARM architecture is where Linux rules supreme. With my excuses to Apple fanboys, it's fair to say that without Linux support, ARM wouldn't nearly be what it is. Yes, Linux was initially conceived as a desktop PC operating system and unfortunately that's the last area that it still has to crack. Bur for pretty much everything else it has long become the go-to OS and dropping it would be the stupidest idea ever.
    Originally posted by caligula View Post

    Nice trolling, pal. How about no.
    I have a feeling that leiptrstormr was being sarcastic here

    Leave a comment:


  • Sniperfox47
    replied
    Originally posted by DrYak View Post

    Actually the firmware DOES NOT run on the ARM CPU. It runs on a different RISC that is embed inside the GPU and communicate with the linux kernel running on the ARM through "mailboxes".
    Currently (Raspbian Stretch) you can run upstream vanilla kernel (4.14.39 currently) with no necessary blobs, all the blobs remaining inside ThreadX rtos running on the GPU's risc.

    (Raspberry Pi, compared to all the other SBC out-there is a really weird architecture.
    It's actuall a network of 2 different systems running on 2 different CPUs.
    It probably made sens back a the beginning, in an era of awefully closed source firmware on most embed chips : ThreadX takes care of the most thing using blobs running on the GPU, leaving possible to eventually have a possible upstream vanilla kernel on the ARM CPU.
    Nowadays, there has been massive effort at opening the firmwares (see the sunxi effrots with Allwinner, see efforts around Rockchip), and it's possible to find lots of SBCs that can run up-to-date upstream kernel, as long as you neglect the current ARM GPU mess)

    Raspbian remains 32bits by choice to make a single unified distro that runs from the ARMv6 HF found nowadays in Pi Zero, all the way to the ARMv8 in Pi 3+ /Pi 3/Pi 2 v1.2
    (And also they think there isn't much need for a 64bits OS - though opinion on this varry.
    Yes, 64bit memory address space is a bit overkill on an embed SoC that cannot physically address more than 1GB (30 pin physical address bus, internally 2bits on the 32bits RAM address space reserved).
    But on the other hand the ARMv8 ISA provides more registers, newer opcodes, and can process the large numbers used by cryptography by splitting then into wider 64bit chunks - NOTE: Raspberry Pi's arm happens not to implement lots of the optional crypto hardware, you still need to do a lot of your encryption on the CPU).

    There are other distros out there that maintain an ARMv8 kernel (bootcode.bin actually supports looking for one),
    there are even a few distros running a ARMv8 userland (mostly lifted from debian aarch64),
    specifically for the small speed gain I mentioned above that an ARMv8 isa can bring over the original ARMv6 HF isa.

    I never said that the firmware runs on the CPU. I am well aware of how the VC4 architecture is laid out and just how broken it is.

    You can read the exact details here: https://github.com/raspberrypi/firmware/issues/550

    But the basics are that the VC4 firmware requires a maintained kernel pointer that's in 32 bit format as part of it's ABI to the kernel (because why bother using standard interfaces?) and without an updated VC4 firmware you have to have some kind of compatibility layer sitting between your VC4 driver and the VC4 firmware to get an AArch64 kernel working.

    Fedora and Arch both have images for the Raspberry Pi 3 that do this, but it's hacky and not something that works with an off the shelf kernel.

    This could have been fixed by Broadcom offering an updated VC4 firmware.

    Leave a comment:


  • slacka
    replied
    Originally posted by jpg44 View Post
    One of the major uses for the 32 bit release also is not for 32 bit x86 hardware, but to use inside a VM on a 64 Bit x86 CPU that does not support VT hardware assisted virtualization.You cannot run a 64 bit guest without VT technology on the CPU. But many Intel CPUs did not support VT leaving no way to run a 64 bit guest. !
    Maybe, but at least for my company that is not the reason we are running 32 bit guests; it's memory usage. They have hundreds of VMs. In internal tests they found that switching all the guests to x86_64 would require terabytes of additional RAM with little upside. It's too bad the x32 ABI never took of.

    Leave a comment:


  • My8th
    replied
    For people using current stats of 32bit usage, you'll have to account that Ubuntu 18.04 LTS will be supported till April 2023 which means 32bit will have to be supported for that LTS release for that duration.

    Leave a comment:


  • edwaleni
    replied
    I wonder what the Android folk think of this ?

    Leave a comment:


  • fuzz
    replied
    I still use ARMv6 on the rapsberry pi zero w all the time, but I don't run ubuntu on it so whatever *shrug*

    Leave a comment:


  • caligula
    replied
    Originally posted by stormcrow View Post
    I'm really not sure how many ARMHF Ubuntu users are out there, but if the metrics for the popularity contests (225 submissions?) are correct, and they don't have enough people to support that port, then by all means, drop support.
    For what's its worth, x86-64 computers appeared in 2003. That is 15 years ago. Something like 99% of x86 computers have been x86-64 over the last 10 years. Why 32-bit support needs to be hammered is because it's less safe (e.g. ASLR), supports less memory (PAE is a hack), distros don't even turn on SSE2 optimizations. These things matter in workstations, servers etc.

    In the ARM land, 137 out of 164 SBCs are 32-bit ARM. Raspberry Pi 2 which appeared 3 years ago is 32-bit. https://en.wikipedia.org/wiki/Compar...oard_computers

    Some 32 bit ARM platforms got preliminary kernel support for the first time in 2018. For most ARM boards, 64-bit provides very tiny advantages. They have less than 4 gigs of memory, anyways. Faster crypto and ALU processing is all there is. IMO it's a bit preliminary to drop support already now. OTOH only noobs use Ubuntu anyways and they will need the fastest and best hardware to flash the GPIO leds. So it's clear that while all other distros need to support 32-bit ARM, Ubuntu has no such hardcore users.

    Leave a comment:


  • caligula
    replied
    Originally posted by leiptrstormr View Post
    Ubuntu should drop support for everything but Windows 10 on x86_64 machines. Supporting only the most popular hardware configurations is what made Linux great.
    Nice trolling, pal. How about no.

    Leave a comment:


  • DrYak
    replied
    Originally posted by Sniperfox47 View Post
    Just want to point out that unless something has changed drastically in the past few months, even the Raspberry Pi 3 runs with a 32 bit kernel (on 64 bit hardware), since the GPU firmware requires a 32 bit kernel.
    Actually the firmware DOES NOT run on the ARM CPU. It runs on a different RISC that is embed inside the GPU and communicate with the linux kernel running on the ARM through "mailboxes".
    Currently (Raspbian Stretch) you can run upstream vanilla kernel (4.14.39 currently) with no necessary blobs, all the blobs remaining inside ThreadX rtos running on the GPU's risc.

    (Raspberry Pi, compared to all the other SBC out-there is a really weird architecture.
    It's actuall a network of 2 different systems running on 2 different CPUs.
    It probably made sens back a the beginning, in an era of awefully closed source firmware on most embed chips : ThreadX takes care of the most thing using blobs running on the GPU, leaving possible to eventually have a possible upstream vanilla kernel on the ARM CPU.
    Nowadays, there has been massive effort at opening the firmwares (see the sunxi effrots with Allwinner, see efforts around Rockchip), and it's possible to find lots of SBCs that can run up-to-date upstream kernel, as long as you neglect the current ARM GPU mess)

    Raspbian remains 32bits by choice to make a single unified distro that runs from the ARMv6 HF found nowadays in Pi Zero, all the way to the ARMv8 in Pi 3+ /Pi 3/Pi 2 v1.2
    (And also they think there isn't much need for a 64bits OS - though opinion on this varry.
    Yes, 64bit memory address space is a bit overkill on an embed SoC that cannot physically address more than 1GB (30 pin physical address bus, internally 2bits on the 32bits RAM address space reserved).
    But on the other hand the ARMv8 ISA provides more registers, newer opcodes, and can process the large numbers used by cryptography by splitting then into wider 64bit chunks - NOTE: Raspberry Pi's arm happens not to implement lots of the optional crypto hardware, you still need to do a lot of your encryption on the CPU).

    There are other distros out there that maintain an ARMv8 kernel (bootcode.bin actually supports looking for one),
    there are even a few distros running a ARMv8 userland (mostly lifted from debian aarch64),
    specifically for the small speed gain I mentioned above that an ARMv8 isa can bring over the original ARMv6 HF isa.


    Leave a comment:


  • discordian
    replied
    Fine, more people will then use debian, where the development is done anyway.

    Leave a comment:

Working...
X