jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23966
Joined: Sat Jul 30, 2011 7:41 pm

Re: 64-bit operating system

Tue Nov 06, 2018 9:57 am

Gavinmc42 wrote:
Tue Nov 06, 2018 5:27 am
One day perhaps Zero's will use dual 64bit A35 cores with VC5?
Nope.
Gavinmc42 wrote:
Tue Nov 06, 2018 5:27 am

For the main purpose Pi's are used for, 32bit is ok for kids.
Universities and the rest of us 64bit?
We are not going to get much performance improvement as the SDRAM is only 32bit wide.

That said, Gentoo64 is a delight to learn 64bit coding on.
Lots of 64bit learning to still to be done, Mesa3D, NEON, ML/NN/CV, Arm Compute etc.
Operative word for me is "learning", I'm not 24/7 using 64bit yet.
None of those things require 64 bit to learn. None of them.

I started on 8bit micro's. Learnt loads on those. Use 16 bit embedded devices, learn a bit on those, but not much more than 8 bit. Same with 32 and 64. It's not the bit depth you learn, it's the principles, and those are the same whatever device you are using.

The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
“I think it’s wrong that only one company makes the game Monopoly.” – Steven Wright

LTolledo
Posts: 2049
Joined: Sat Mar 17, 2018 7:29 am
Location: Anime Heartland

Re: 64-bit operating system

Tue Nov 06, 2018 10:25 am

.... well at any rate.....64bit raspbian will be out when it is available...... . . . . . .

.....those in a hurry can just compile one themselves, instead of waiting for someone to do it for themselves........ ... . . . ... ... . . . ...
"Don't come to me with 'issues' for I don't know how to deal with those
Come to me with 'problems' and I'll help you find solutions"

Some people be like:
"Help me! Am drowning! But dont you dare touch me nor come near me!"

jahboater
Posts: 4785
Joined: Wed Feb 04, 2015 6:38 pm

Re: 64-bit operating system

Tue Nov 06, 2018 10:29 am

jamesh wrote:
Tue Nov 06, 2018 9:57 am
The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Apart from teaching assembler (which I doubt is done much now), I cant see how the choice between 32 and 64 bits makes the slightest difference for education.

Any sensible programming language nowadays should work equally well for either.

User avatar
mahjongg
Forum Moderator
Forum Moderator
Posts: 12357
Joined: Sun Mar 11, 2012 12:19 am
Location: South Holland, The Netherlands

Re: 64-bit operating system

Tue Nov 06, 2018 10:36 am

Gavinmc42 wrote:
Tue Nov 06, 2018 5:27 am
One day perhaps Zero's will use dual 64bit A35 cores with VC5?
Not possible, there are no dual 64 bit A35 core SoC's that can fit on a zero sized board.
The zero is only possible because it only has to be reflow soldered, there is no wave soldering needed (only one side soldered, and EVERYTHING is soldered with surface mount technology).
This is only possible on such a small board because the SoC chosen is using Package on Package technology for the SDRAM, meaning the SDRAM is soldered on top of the SoC. The versions with 64-bit support all use SDRAM's that are soldered on the back of the PCB, so no viable solution exists that will bring the price down to RPI Zero levels.

The RPF largely depends on technology Broadcom can provide, and so zero's with 64-bit technology are not possible.

The RPF switching wholesale to 64-bit tech is just a pipe-dream.
If you want to experiment with 64-bit on a PI you can do that today.... It just wont become mainstream.

code_exec
Posts: 273
Joined: Sun Sep 30, 2018 12:25 pm

Re: 64-bit operating system

Tue Nov 06, 2018 4:38 pm

LTolledo wrote:
Tue Nov 06, 2018 10:25 am
.... well at any rate.....64bit raspbian will be out when it is available...... . . . . . .

.....those in a hurry can just compile one themselves, instead of waiting for someone to do it for themselves........ ... . . . ... ... . . . ...
Don't you think it would be a little hard for the RPF to maintain two versions of Raspbian, one 32-bit and one 64-bit?

Compiling a 64-bit version of Raspbian yourself would be impossible, since the Raspbian repositories only have ARMHF (ARM32) packages.
Ubuntu 18.04 LTS desktop images for the Raspberry Pi 3.

https://github.com/CodeExecution/Ubuntu-ARM64-RPi

mfa298
Posts: 1387
Joined: Tue Apr 22, 2014 11:18 am

Re: 64-bit operating system

Tue Nov 06, 2018 6:14 pm

code_exec wrote:
Tue Nov 06, 2018 4:38 pm
Compiling a 64-bit version of Raspbian yourself would be impossible, since the Raspbian repositories only have ARMHF (ARM32) packages.
For the most part raspbian is just Debian rebuilt to support ARMv6 with HF (to support all models of Pi) with a 64 bit kernel you could use the 64 bit Debian packages for userspace* to get something similar. I think most of the rest is just configuration which you could apply manually. AIUI what is missing is some support in the VC4/GPU binary blob so some stuff won't work with a 64 bit kernel.

*Similarly you can use the Debian 32bit armhf userspace with a 32 bit kernel, but only on the Pi2/Pi3 as Debian armhf doesn't support ARMv6 (Zero/ Pi1)

ejolson
Posts: 3730
Joined: Tue Mar 18, 2014 11:47 am

Re: 64-bit operating system

Tue Nov 06, 2018 7:05 pm

mfa298 wrote:
Tue Nov 06, 2018 6:14 pm
code_exec wrote:
Tue Nov 06, 2018 4:38 pm
Compiling a 64-bit version of Raspbian yourself would be impossible, since the Raspbian repositories only have ARMHF (ARM32) packages.
For the most part raspbian is just Debian rebuilt to support ARMv6 with HF (to support all models of Pi) with a 64 bit kernel you could use the 64 bit Debian packages for userspace* to get something similar. I think most of the rest is just configuration which you could apply manually. AIUI what is missing is some support in the VC4/GPU binary blob so some stuff won't work with a 64 bit kernel.

*Similarly you can use the Debian 32bit armhf userspace with a 32 bit kernel, but only on the Pi2/Pi3 as Debian armhf doesn't support ARMv6 (Zero/ Pi1)
I was told 32-bit Mathematica works on 64-bit Gentoo. Does Minecraft currently work on 64-bit Gentoo?

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Tue Nov 06, 2018 8:59 pm

jahboater wrote:
Tue Nov 06, 2018 10:29 am
jamesh wrote:
Tue Nov 06, 2018 9:57 am
The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Apart from teaching assembler (which I doubt is done much now), I cant see how the choice between 32 and 64 bits makes the slightest difference for education.

Any sensible programming language nowadays should work equally well for either.
Actually...you don't need 64-bit for learning an assembly language, either. All you need a machine and an assembler for it. The first machine I learned an assembly language (SPS IID) on operated in decimal and didn't have a fixed word size. The next one I learned an assembly language (COMPASS) on used 60-bit words (no, that's not a typo. six-zero bits per word). Two others were another "variable field length" machine (AUTOCODER) and a 32-bit system (ALC).

jahboater
Posts: 4785
Joined: Wed Feb 04, 2015 6:38 pm

Re: 64-bit operating system

Tue Nov 06, 2018 9:21 pm

W. H. Heydt wrote:
Tue Nov 06, 2018 8:59 pm
jahboater wrote:
Tue Nov 06, 2018 10:29 am
jamesh wrote:
Tue Nov 06, 2018 9:57 am
The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Apart from teaching assembler (which I doubt is done much now), I cant see how the choice between 32 and 64 bits makes the slightest difference for education.

Any sensible programming language nowadays should work equally well for either.
Actually...you don't need 64-bit for learning an assembly language, either.
Of course not, but that's not what I meant.
I was just saying the A64 is very different from A32 - whereas if you were teaching a class Python say, which is just the same on both word sizes, it would not matter at all that the Pi is 32-bit.

From a teaching assembler point of view though (if anyone does it), A64 is the future, it is more like other popular CPU's, it is modern, streamlined and designed for the recent OOO ARM processor models. You can pick up all sorts of bad habits by learning A32!

ejolson
Posts: 3730
Joined: Tue Mar 18, 2014 11:47 am

Re: 64-bit operating system

Tue Nov 06, 2018 10:20 pm

W. H. Heydt wrote:
Tue Nov 06, 2018 8:59 pm
Actually...you don't need 64-bit for learning an assembly language, either. All you need a machine and an assembler for it. The first machine I learned an assembly language (SPS IID) on operated in decimal and didn't have a fixed word size. The next one I learned an assembly language (COMPASS) on used 60-bit words (no, that's not a typo. six-zero bits per word). Two others were another "variable field length" machine (AUTOCODER) and a 32-bit system (ALC).
Maybe the best assembler to learn is for the 36-bit PDP10. This can be done via the SIMH emulator running ITS on 32-bit Raspbian. However, not all learning is pure knowledge handed down from the ivory towers of higher education. There is a certain practicality to learning something useful, for example 64-bit ARMv8 assembly. I'm personally holding out for 65-bit assembly because it is a bit better.
Last edited by ejolson on Tue Nov 06, 2018 10:23 pm, edited 1 time in total.

schmide
Posts: 8
Joined: Thu Nov 01, 2018 7:02 pm

Re: 64-bit operating system

Tue Nov 06, 2018 10:23 pm

My point about the pinouts was not really about them. They are great. I was pointing out that different levels of compatibility exist and used them as an example. Regardless of any one piece of the pi's adoption, pieces evolve. At some point delineations happen in both software and hardware.

If you look at any one part, other than HDMI, USB and CPU, it will never justify its self with a popularity contest.

I will say. PIs are mainstream now beyond education. When people enter the arena they will basically get Raspbian (32) first. Where they go next, if they feel then need to move up to 64bit, will basically be elsewhere. This is good for Gentoo. The way you keep them in the fold is by providing a 64bit system.

Better to you grow your ecosystem.

On the other side of the coin. If VideoCoreIV does thunking right, all 64bit distros benefit.

User avatar
PeterO
Posts: 5086
Joined: Sun Jul 22, 2012 4:14 pm

Re: 64-bit operating system

Tue Nov 06, 2018 10:25 pm

W. H. Heydt wrote:
Tue Nov 06, 2018 8:59 pm
The next one I learned an assembly language (COMPASS) on used 60-bit words (no, that's not a typo. six-zero bits per word). Two others were another "variable field length" machine (AUTOCODER) and a 32-bit system (ALC).
I offer a 39 bit word (which is both odd (not even) and odd (peculiar)) with octal opcodes and decimal address :-)
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson

User avatar
davidcoton
Posts: 4206
Joined: Mon Sep 01, 2014 2:37 pm
Location: Cambridge, UK

Re: 64-bit operating system

Tue Nov 06, 2018 10:26 pm

ejolson wrote:
Tue Nov 06, 2018 10:20 pm
I'm personally holding out for 65-bit assembly because it is a bit better.
:lol: But then 66-bit assembly is a bit better still. And so on, ad infinitum. :lol:
This seems to be a large part of the demand for a move from 32-bit to 64-bit Raspbian. It MUST be twice as good, right? :shock:
Signature retired

jahboater
Posts: 4785
Joined: Wed Feb 04, 2015 6:38 pm

Re: 64-bit operating system

Tue Nov 06, 2018 11:11 pm

W. H. Heydt wrote:
Tue Nov 06, 2018 8:59 pm
The next one I learned an assembly language (COMPASS) on used 60-bit words (no, that's not a typo. six-zero bits per word).
The Control Data 7600 super computer I used had 60-bit words. Later a Honeywell-6000 mainframe had 36-bit words (which I did quite a lot of assembler on).
This modern obsession with power-of-two word sizes is most boring :)

Actually 36-bit words allowed a choice of 4 x 9-bit characters or 6 x 6-bit characters. The latter (and presumably the same on the PDP-10) was the reason why early linker's accepted symbol names of 6 uppercase only characters.

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Wed Nov 07, 2018 12:06 am

jahboater wrote:
Tue Nov 06, 2018 11:11 pm
W. H. Heydt wrote:
Tue Nov 06, 2018 8:59 pm
The next one I learned an assembly language (COMPASS) on used 60-bit words (no, that's not a typo. six-zero bits per word).
The Control Data 7600 super computer I used had 60-bit words. Later a Honeywell-6000 mainframe had 36-bit words (which I did quite a lot of assembler on).
This modern obsession with power-of-two word sizes is most boring :)

Actually 36-bit words allowed a choice of 4 x 9-bit characters or 6 x 6-bit characters. The latter (and presumably the same on the PDP-10) was the reason why early linker's accepted symbol names of 6 uppercase only characters.
It was on a CDC 6400...which was a cut-down CDC 6600. Livermore and--I think--LBL got 6600s while the campus got a pair of 6400s. Instructions were either 15-bits or 30-bits long and the assembler would pad with a 15-bit NOP as needed (30-bit instructions had to align on half-word boundaries). The machine was actually stranger than that, though. On the 6000 series, the Peripheral Processors--which handled I/O and ran the OS--were 18-bit word length machines. Yes...that is correct...the OS *didn't* run on the central processor.

Perhaps having cut my teeth on systems like that is why the relationship between the VC4 and the ARM cores on the Pi doesn't bother me in the least...

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Wed Nov 07, 2018 12:18 am

schmide wrote:
Tue Nov 06, 2018 10:23 pm
On the other side of the coin. If VideoCoreIV does thunking right, all 64bit distros benefit.
VC4 is limited to a 1GB address range (that'd be 30 bit addresses, assuming byte addressing, if memory serves me). That's why Pis are (so far) limited to 1GB. To get beyond that, there needs to be some sort of follow on to the VC4. It's been talked about for years. Pretty much for the whole duration of the existence of the Pi. Apparently, there is some sort of follow on design, some characteristics of which can be discerned from specs on recent Broadcom offerings.

Speculation mode on... The Pi4B, when it arrives, will have some sort of enhanced, or follow on "VC". Speculation mode off.

If you think there is demand for a 64-bit OS, just consider the demand for a Pi that can stream 4K video and a decent frame rate. (Mind you, that's not one of my "wants", let alone "needs" as my desktop display is a Viewsonic VA2702w which is 1920x1080 at 60fps and probably will be for some time to come.)

schmide
Posts: 8
Joined: Thu Nov 01, 2018 7:02 pm

Re: 64-bit operating system

Wed Nov 07, 2018 12:57 am

Just so you know. Thunking is the term for communicating between drivers in separate spaces.

None of this has to do with how much memory a system can address nor the amount of bits.

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Wed Nov 07, 2018 1:09 am

schmide wrote:
Wed Nov 07, 2018 12:57 am
Just so you know. Thunking is the term for communicating between drivers in separate spaces.

None of this has to do with how much memory a system can address nor the amount of bits.
Ah...so it's a buzzword. At least it isn't a TLA.

Heater
Posts: 13701
Joined: Tue Jul 17, 2012 3:02 pm

Re: 64-bit operating system

Wed Nov 07, 2018 1:19 am

"Thunking" is a term that has it origins, or at least became widely known, in the days of Windows 95.

It was the means by which the 32 bit Win 95 operating system could make calls to the 16 bit DOS and/or BIOS on which it was running.

The less of that kind of kludge we have in our systems the better.

I'm not even sure if it is relevant to the Pi's ARM CPU to Video Core issues. People who know better will have to comment on that.
Memory in C++ is a leaky abstraction .

ejolson
Posts: 3730
Joined: Tue Mar 18, 2014 11:47 am

Re: 64-bit operating system

Wed Nov 07, 2018 4:14 am

Heater wrote:
Wed Nov 07, 2018 1:19 am
"Thunking" is a term that has it origins, or at least became widely known, in the days of Windows 95.

It was the means by which the 32 bit Win 95 operating system could make calls to the 16 bit DOS and/or BIOS on which it was running.

The less of that kind of kludge we have in our systems the better.

I'm not even sure if it is relevant to the Pi's ARM CPU to Video Core issues. People who know better will have to comment on that.
According to Wikipedia thunks are used in the call by name (not by value or reference) method of passing parameters in Algol 60.

One sometimes feels cheated by the forgetfulness which resulted from the C and Unix legacy of worse is better. Never mind Windows, MSDOS or object oriented programming, people now do functional programming in JavaScript and Python. Perhaps too many cooks spoiled the broth.

While there are already multiple well-supported 64-bit versions of Linux available for the Pi 3B and 3B+, it would appear that 64-bit versions of RISCOS, Plan 9 and others still need to be developed.

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Wed Nov 07, 2018 4:54 am

ejolson wrote:
Tue Nov 06, 2018 7:05 pm
I was told 32-bit Mathematica works on 64-bit Gentoo. Does Minecraft currently work on 64-bit Gentoo?
I suspect that would be a matter of licensing...and I'm dubious that licenses exist to run those particular programs on any SBC other than a Pi or under any OS other than Raspbian.
Last edited by W. H. Heydt on Wed Nov 07, 2018 5:10 am, edited 3 times in total.

ejolson
Posts: 3730
Joined: Tue Mar 18, 2014 11:47 am

Re: 64-bit operating system

Wed Nov 07, 2018 5:04 am

W. H. Heydt wrote:
Wed Nov 07, 2018 4:54 am
I suspect that would be a matter of licensing...and I'm dubious that licenses exist to run those particular programs on any SBC other than a Pi or under any OS other than Raspbian.
The Mathematica license agreement specifies Raspberry Pi A and B hardware but makes no mention of the Raspbian operating system.

Minecraft, on the other hand, may make greater use of VC4 3D graphics and therefore struggle when run on the Raspberry Pi under a 64-bit operating system. I don't know details of the Minecraft licensing agreement, but was more interested in the technical aspects of running graphics intensive legacy 32-bit code using a 64-bit kernel.

User avatar
Gavinmc42
Posts: 3936
Joined: Wed Aug 28, 2013 3:31 am

Re: 64-bit operating system

Wed Nov 07, 2018 5:44 am

The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Er, I meant "must have" for my personal learning, specifically Aarch64/NEON coding.
In the short time I have left (a decade or three) I would prefer to use it learning Aarch64 as it is cleaner than Aarch32.
Like I preferred 6800 over 6502 and 68000 over 8086.

I figured by the time I understand Aarch64 ie 5-10 years, Zero's might be A35 or similar.
Yes I understand the VC4 issues etc but in 5-10 years VC5?.
Thinking ahead, where most stuff will be running 64bit like Smartphones, tablets etc.

Minetest on 64bit? Accelerated? Well Eric's driver works pretty good in Gentoo64.
Learning again for me.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

W. H. Heydt
Posts: 11019
Joined: Fri Mar 09, 2012 7:36 pm
Location: Vallejo, CA (US)

Re: 64-bit operating system

Wed Nov 07, 2018 5:58 am

Gavinmc42 wrote:
Wed Nov 07, 2018 5:44 am
I figured by the time I understand Aarch64 ie 5-10 years, Zero's might be A35 or similar.
See mahjongg's comments on the Pi0. I will grant that his response was to the idea of a dual-core A35 SoC, but still. It also goes along with my point that there isn't a suitable 64-bit SoC out there to use on the Pi0/Pi0W...and no hint that anyone is going to pay to develop one.
Yes I understand the VC4 issues etc but in 5-10 years VC5?.
Whatever the follow on (or at least *a* follow on) to what we know and love as the VC4, Broadcom certainly has *something*, as witnessed by some of their more recent products that have been described. Since those chips exist, I don't think it is excessively speculative to surmise that what ever it is, it will be part of the Pi4 SoC.

jahboater
Posts: 4785
Joined: Wed Feb 04, 2015 6:38 pm

Re: 64-bit operating system

Wed Nov 07, 2018 7:51 am

Gavinmc42 wrote:
Wed Nov 07, 2018 5:44 am
The phrase "Must have 64bit for learning" is nonsense. Saying "32 bits is OK for kids" shows a massive misunderstanding and is just a bit insulting to children and adults alike.
Er, I meant "must have" for my personal learning, specifically Aarch64/NEON coding.
In the short time I have left (a decade or three) I would prefer to use it learning Aarch64 as it is cleaner than Aarch32.
Like I preferred 6800 over 6502 and 68000 over 8086.
Well, I do agree with you there.
See my previous post.

A32 has a number of appealing features that people like, but they have been removed or altered for A64 to allow for its use on modern hardware, particularly the fast out-of-order ARM processors. Also these features are not present on other popular processors such as x86.
So spending time learning this A32 stuff is, in the long run, probably a waste of time.

Return to “General discussion”