ChanServ changed the topic of #armlinux to: ARM kernel talk [Upstream kernel, find your vendor forums for questions about their kernels] | https://libera.irclog.whitequark.org/armlinux
XV8 has quit [Ping timeout: 250 seconds]
XV8 has joined #armlinux
XV8 has quit [Read error: Connection reset by peer]
XV8 has joined #armlinux
XV9 has joined #armlinux
XV8 has quit [Ping timeout: 260 seconds]
palmer has joined #armlinux
Xogium has quit [Quit: Leaving.]
Xogium has joined #armlinux
amitk has joined #armlinux
cbeznea has joined #armlinux
paulk has quit [Ping timeout: 272 seconds]
paulk has joined #armlinux
paulk has quit [Ping timeout: 248 seconds]
macromorgan has quit [Read error: Connection reset by peer]
Xogium has quit [Quit: Leaving.]
frieder has joined #armlinux
Xogium has joined #armlinux
paulk has joined #armlinux
Pali has joined #armlinux
monstr has joined #armlinux
luispm has joined #armlinux
Pali has quit [Ping timeout: 240 seconds]
matthias_bgg has joined #armlinux
alpernebbi has quit [Ping timeout: 260 seconds]
alpernebbi has joined #armlinux
dliviu has quit [Ping timeout: 246 seconds]
sszy has joined #armlinux
dliviu has joined #armlinux
headless has joined #armlinux
Misotauros has quit [Ping timeout: 246 seconds]
dok has joined #armlinux
headless has quit [Ping timeout: 256 seconds]
headless has joined #armlinux
Jmabsd has joined #armlinux
<Jmabsd>
Great to be on this channel. Re an ARM system's "IPA size", do I get it right that it will *not* affect OS, OS process' virtual memory, a VM's maximal size or the virtual memory a VM guest's OS or OS processes have?
Amit_T has joined #armlinux
headless has quit [Quit: Konversation terminated!]
IgorPec has joined #armlinux
Herc has joined #armlinux
buZz has joined #armlinux
<maz>
Jmabsd: it of course affects a VM size. it *defines* the maximum VM size.
<maz>
(size = physical address space as observed by the guest)
headless has joined #armlinux
dliviu has quit [Ping timeout: 246 seconds]
dliviu has joined #armlinux
torez has joined #armlinux
<Jmabsd>
maz: interesting. yes learning the nomenclature. what is IPA an abbreviation for?
<Jmabsd>
Interprocess Physical Address space?
<Jmabsd>
Ingenious Physical Address space?
<j`ey>
intermediate
<geertu>
Jmabsd: Isopropyl alcohol
<Jmabsd>
j`ey: interesting. and, uh, what is its function. also for the NXP LX2160A which is an A72, how big is it?
<Jmabsd>
geertu: lol yeah exactly! =o
<gpiccoli>
tnx Ard ! (was away yday)
headless has quit [Quit: Konversation terminated!]
<j`ey>
Jmabsd: Cortex-A72 supports a parange of 44 bits, 16T
<Jmabsd>
j`ey: interesting, so a VM's whole addressable space is 16TB both on OS and on OS process level
<maz>
Jmabsd: you keep missing the point. the IPA space has nothing to do with a process, which operates on virtual addresses.
<Jmabsd>
wait, is IPA like, max theoretical *physical* memory as in RAM?
<Jmabsd>
as in there will be no A72 implemented by anyone, that has support for more than 32 x 512GB SODIMM slots??
<arnd>
it's both RAM and MMIO space
<arnd>
PCI cards may require a lot of address space
<arnd>
and it's virtualized by a VM, so a guest can have more addressable RAM than the host has physical memory chips
<maz>
for VMs, it doesn't matter. I can boot a VM with 4TBB of "RAM" on a system that only has a few 10s of GB.
robinp has quit [Read error: Connection reset by peer]
<maz>
ardb: uses 74G, most of it for PTs. I'm sure we should fix something there... ;-)
<maz>
but A72 powa!
<ardb>
i guess rodata=full doesn't help there
<j`ey>
thats a lot of page tables
<ardb>
so this is d05?
<maz>
ardb: yeah, it takes 10 minutes to boot because of htat.
<maz>
ardb: D05 indeed.
<ardb>
nice
<maz>
... for a perverted definition of nice...;-)
<Jmabsd>
maz,j`ey: well then maz, IPA as you say does not correlate with VM at all ??????
<maz>
Jmabsd: it absolutely is. if your IPA size is limited to 36 bits, you can't have more than 32GB of address space in your VM. that's a hard limit.
<ardb>
64
<Jmabsd>
maz: I see. so, 2^44 = 16TB - this is the hard limit for VM guest OS and VM guest OS process, yes?
<Jmabsd>
that is so weird, why does it affect VM only and not host OS
<ardb>
Jmabsd: process address space has nothing to do with any of this
<maz>
Jmabsd: the exact same limits apply to the host *PA*. Not to the host or VM *processes*. you keep confusing VA and PA spaces.
<Jmabsd>
ah. wait, so PA = physical RAM???
<Jmabsd>
does VM have a virtual PA?
cleger has joined #armlinux
<ardb>
bingo
<ardb>
IPA == PA for a virtual machine
<geertu>
maz: Finally a modern system that boots Linux slower than my Amiga 4000 ;-)
<ardb>
geertu: does your amiga also have 4 TB of RAM?
<maz>
geertu: I'll raise you with by NetWinder! :D
<maz>
my*
* geertu
is even impressed by the 100.00 BogoMIPS
<Jmabsd>
ardb: so, uh, the host OS has whatever physical RAM it has - but honestly it's just 32GB, far below 16TB
<Jmabsd>
ardb,maz: if the physical RAM is 32GB anyhow then how is a VM affected by IPA being capped at 16TB???
<Jmabsd>
geertu: what is your new 4TB machine? :)
<geertu>
maz: The Netwinder is still O(10) as fast as the Amiga
<ardb>
Jmabsd: that is why, e.g., Apple M1 only supports 36 bits of IPA space
<ardb>
64 GB of physical address *space* is sufficient for most VM use cases
<buZz>
this channel is about arm -linux- though ;)
<maz>
Jmabsd: this is not about the amount of memory, but the size address space. Look at the example I posted.
<ardb>
buZz: i run linux in my VMs
<buZz>
ardb: hahaha well , i run linux on my arm
<maz>
my VMs run on Linux
<buZz>
lol , apple users
<maz>
My M1 runs linux host and guests.
* maz
goes back to debugging...
<buZz>
yeah i feel funding projects that literally go against linux dev and opensource hw is a great idea
<ardb>
buZz: seriously? you have an informed opinion on how we use Apple machines?
* buZz
applauds
<buZz>
ardb: sure, Snow informed me
<ardb>
i was given this machine, i would never have paid money for it
<Jmabsd>
> <maz> Jmabsd: it absolutely is. if your IPA size is limited to 36 bits, you can't have more than 32GB of address space in your VM. that's a hard limit.
<Jmabsd>
maz(,ardb,geeru): maz so you are saying for the bare metal running OS and its OS processes, the VA is the only virtual memory addressing size cap. However, for VM guest OS and VM guest OS's processes, the smallest of VA and IPA will be the virtual memory size cap?
<Jmabsd>
> <ardb> IPA == PA for a virtual machine
<Jmabsd>
ardb: does it affect anything more too
<Jmabsd>
> <ardb> 64 GB of physical address *space* is sufficient for most VM use cases
<Jmabsd>
ardb: ho ho ho it is not. oh dear. so even the RockChip RK3588 A72 is better than the Apple M1 in this respect?
<Jmabsd>
because it has 48bit too like any A72 yes?
<maz>
Jmabsd: that's not what I've said.; please read again.
IgorPec has joined #armlinux
<Jmabsd>
> <maz> My M1 runs linux host and guests.
<Jmabsd>
maz: wow, does it work well for you, so cool!
<ardb>
Jmabsd: IPA has *nothing* to do with virtual memory size cap
<Jmabsd>
maz: but as ardb clarified, the Apple M1 will only give you 64GB virtual memory space in the VM? =o so you cannot mmap() a 65GB size file??? =oooo
<Jmabsd>
> <maz> Jmabsd: that's not what I've said.; please read again.
<Jmabsd>
maz: I read as good as I could! Can you repeat =o
<Jmabsd>
ardb: you mean it's the *physical* memory then i.e. RAM allocation?
<ardb>
Jmabsd: you know that the 'virtual' in virtual machine has nothing to do with the 'virtual' in virtual address, right?
<maz>
Jmabsd: <maz> Jmabsd: the exact same limits apply to the host *PA*. Not to the host or VM *processes*. you keep confusing VA and PA spaces.
<Jmabsd>
ardb: yes I know.
<Jmabsd>
maz: Guest VM processes will mostly just have the same constraint as the guest VM OS
<ardb>
Jmabsd: so why do you keep asking how IPA affects VA space? the two have nothing to do with each other
<ardb>
Jmabsd: the Apple M1 will give you 48 bits of virtual memory space like most arm64 cores
<ardb>
so you can mmap() a 65 GB file just fine
<Jmabsd>
ardb: so IPA affects what then, the amount of physical ram a VM can have?
<Jmabsd>
mmap() 65GB, lovely good
<ardb>
Jmabsd: basically, and as arnd pointed out, this affects MMIO space for peripherals as well
<ardb>
Jmabsd: for instance, a GPU card with 8 GB of memory will need 8 GB of PA space as well in order for the OS to be able to access it
<Jmabsd>
i see. wow so the Apple M1 is pushing it then, is it
<ardb>
no it is not
<ardb>
well
<ardb>
maz might disagree here
<ardb>
but note that this only applies to virtual machines
<ardb>
the host OS can access a much larger physical area
<Jmabsd>
oh ic!
<Jmabsd>
ardb: what on earth weird engineering characteristic is this to have "IPA" which means, uh, a limited amount of physical memory addresses that uh, a VM specifically can access?
<maz>
Jmabsd: TLBs.
<ardb>
it all translates into silicon gates
<ardb>
address bits that *could* be used but never are in practice use up valuable area on the chip that could be used somewhere else
<Jmabsd>
maz,ardb: anyhow so to summarize, on the A72 the IPA is 44bit = 16TB, and this becomes the *virtual* addressing in the guest cap, or actual "real" memory on the host system that the guest VM can access?
<Jmabsd>
16TB is a lot
<Jmabsd>
so, uh, a host OS process on A72 can mmap() 17TB, but on a guest OS process only mmap() 15TB? :)
<ardb>
no stop saying virtual addressing
<ardb>
try again
<ardb>
VA space is what a program sees
<ardb>
PA space is the number of address wires coming out of the chip
<Jmabsd>
aha, okay so PA means "real" okok
<Jmabsd>
well in that case 16TB of PA is more than you ever need
<Jmabsd>
and a VM guest can mmap() 17TB. yey!
<ardb>
indeed!
<Jmabsd>
yey! ok! so A72 has no IPA issues. Only Apple M1 =o
SallyAhaj has quit [Remote host closed the connection]
<ardb>
correct
<Jmabsd>
thank you very much for all clarifications.
SallyAhaj has joined #armlinux
torez has quit [Quit: torez]
SallyAhaj has quit [Remote host closed the connection]
SallyAhaj has joined #armlinux
torez has joined #armlinux
frieder has quit [Remote host closed the connection]
paulk has quit [Ping timeout: 248 seconds]
SallyAhaj has quit [Remote host closed the connection]
SallyAhaj has joined #armlinux
<ardb>
Jmabsd: yw
guillaume_g has quit [Quit: Konversation terminated!]