On Tuesday 21 September 2021 01:07:20 lkcl wrote: > On September 21, 2021 12:06:35 AM UTC, Paul Wise <p...@debian.org> wrote: > >It sounds like you are talking about userland and Debian still > > supports a 32-bit userland under a 64-bit Linux kernel on 64-bit > > devices, > > which... and i apologise, i cannot remember your name, our > person-running-CNC-lathes pointed out that the latency on > context-switches, presumably because of conversions on system calls > between 64 and 32 bit and back, is awful, and making microsecond > response time barely achievable. > > microsecond response... 1e6.... clock speeds 2e9... bordering on 2,000 > instructions for a contextswitch and syscall, any typeconversion is > apparently too much. > > > do > >these concerns also apply to the Linux kernel itself? > Absolutely. And we often run kernels you consider obsolete by a decade just because on older hardware, they run at a better performance level than more recent versions. We generally build those kernels independently from the distro.
Checking one of my buster based LinuxCNC iso installs, 4.19.0-17-rt-amd64 #1 SMP PREEMPT RT Debian 4.19.194-3 (2021-07-18) x86_64 4.19 seems to be a good one for realtime. My rpi4 is running 4.19.71-rt24-v7l+ #1 SMP PREEMPT RT Thu Feb 6 07:09:18 EST 2020 armv7l I built that one myself. And since questions about realtime are not given the grace of an answer from arm folks other than goto hell, we are definitely on our own where arms are concerned. I had to invent my own installer but the src tarball is under 30 megs. > to a lesser extent given the relative size of the linux kernel, we may > surmise only the most extreme resource constrained scenarios would be > concerned about that, and they're likely to be using yocto, buildroot, > Zephyr or other RTOS etc. custom from-source builds. > > i had forgotten about the latency issue though, and was fascinated to > hear that running CNCs is so borderline. > > i wonder if x86 does so much better there due to hyperthreading. > No, in fact disabling that is a bios setting done before even installing LinuxCNC. It may make winderz seem to be better, but that context switch, done by the relatively slow bios memory is a performance killer even if the code is stashed in L1 cache. I've 5 i5's of various builds here, and none of them have that enabled even if its not running machinery. This cheap 6 core i5 certainly doesn't need it and its actually running at 800 MHz, but capable of 3.7 GHz. Close to zero heat, all 6 cores are below 32C right now. Take care all. Cheers, Gene Heskett -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis Genes Web page <http://geneslinuxbox.net:6309/gene>