Isolating CPUs for extra stability
#1
Greetings,

Would it be smart to isolate one or two of the cpus to be dedicated to a stable core functionality like receiving calls and the user interface? Has anyone tried?
I hope to achieve the following: A somewhat poorer performance for some multithreaded task but a rock-solid performance for some basic well-tested tasks that rarely misbehave (likely including htop to kill any misbehaving apps). This way one shouldn't worry about missing calls or having to reboot the phone when launching anbox or a poorly written website in firefox. Of course this wouldn't solve all problems, e.g. a misbehaving gps app could spam the modem so much that calls can't come thru. 
I imagine this could be done using something like taskset, isolcpus and cpusets, but I have absolutely no experience messing with this functionality. Is this already build-in (in a much smarter way) in some of the distros? 

Cheers
  Reply
#2
(08-10-2021, 07:05 AM)IVp Wrote: Greetings,

Would it be smart to isolate one or two of the cpus to be dedicated to a stable core functionality like receiving calls and the user interface? Has anyone tried?
I hope to achieve the following: A somewhat poorer performance for some multithreaded task but a rock-solid performance for some basic well-tested tasks that rarely misbehave (likely including htop to kill any misbehaving apps). This way one shouldn't worry about missing calls or having to reboot the phone when launching anbox or a poorly written website in firefox. Of course this wouldn't solve all problems, e.g. a misbehaving gps app could spam the modem so much that calls can't come thru. 
I imagine this could be done using something like taskset, isolcpus and cpusets, but I have absolutely no experience messing with this functionality. Is this already build-in (in a much smarter way) in some of the distros? 

Cheers

If possible this could also potentially reduce idle power usage by suppressing the other tasks on other CPUs.
  Reply
#3
Take a look at Genode, it's a microkernel based OS aiming to run on the Pinephone by the end of 2021.
I don't know if it is possible to isolate a single CPU with it, but it can run Linux (or Android) in a VM and I think Genode's tasks can be prioritized above the VM so calls can be recieved regardless of apps running in the VM.
Also on NXP's i.MX8 processors it can run in ARM TrustZone while executing Linux in a VM (Video can be found on YouTube), which would give complete separation between a Linux-based OS and Genode's (prioritized) processes if possible on the A64.
I just started a thread about it (https://forum.pine64.org/showthread.php?tid=14780)
  Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)