[HN Gopher] Synchronous Processors
       ___________________________________________________________________
        
       Synchronous Processors
        
       Author : palmtree3000
       Score  : 11 points
       Date   : 2022-04-18 20:52 UTC (2 hours ago)
        
 (HTM) web link (www.yodaiken.com)
 (TXT) w3m dump (www.yodaiken.com)
        
       | dmitrygr wrote:
       | And how would you do context switches if a CPU-bound task does
       | not yield and you do not have interrupts to ... interrupt ...
       | that?
        
         | bob1029 wrote:
         | What if you have multiple CPUs and you _don 't_ want the task
         | to yield (i.e. for performance or latency reasons)?
        
         | johndoe0815 wrote:
         | One approach is to use a barrel processor which switches
         | threads after each cycle or instruction:
         | https://en.m.wikipedia.org/wiki/Barrel_processor
        
           | freemint wrote:
           | That does not solve the problem at all. It just increases the
           | number of "hyper threads", if a new process gets started and
           | all cores are busy that process might never run.
        
         | freemint wrote:
         | The article says this about it:
         | 
         | > We could have a simple cycle timer switch on each core so
         | that after the timer expires there an interrupt-like jump to a
         | function to see what to do next. That jump would be perfectly
         | synchronous since predicting the next jump can be done with
         | 100% accuracy (or nearly 100%).
        
       | johndoe0815 wrote:
       | The Transputer and its successors, the XMOS embedded SoCs,
       | already implement a lot of the features mentioned in this blog
       | post by Yodaiken.
       | 
       | ...and the subject should have "(2016)" added...
        
       ___________________________________________________________________
       (page generated 2022-04-18 23:01 UTC)