[HN Gopher] Multitasking, something we copied from computers
       ___________________________________________________________________
        
       Multitasking, something we copied from computers
        
       Author : mikemwanje
       Score  : 27 points
       Date   : 2022-09-17 09:44 UTC (13 hours ago)
        
 (HTM) web link (blog.mikemwanje.dev)
 (TXT) w3m dump (blog.mikemwanje.dev)
        
       | swayvil wrote:
       | "He's like a machine". "Man of steel"....
       | 
       | Humans have long strived to emulate their metal tools.
       | 
       | To do the same thing over and over forever, perfectly. To keep a
       | perfect schedule. To suffer terrible abuse without bending or
       | breaking. To obey orders perfectly and without hesitation.
       | 
       | What's not to admire?
        
       | unilynx wrote:
       | It's not like computers are that good at multitasking either:
       | 
       | - Lose our ability to focus for longer
       | 
       | Well, multitasking is bad for the caches and any attempts at
       | speculation might have been ruined by the forced task switch
       | 
       | - Prone to errors due to shorter attention spans
       | 
       | Prone to errors due to Spectre and its followups. Some
       | mitigations go as far as disabling hyper threading, due to leaks
       | triggered by the really fast context switching between the two
       | hyperthreads
       | 
       | - Waste time during context switching
       | 
       | Yep, CPUs need time for that too
       | 
       | - Less productivity
       | 
       | Oh yeah.. one old way of increasing throughput was longer time
       | slices for less context switches. Eg the old Windows NTs
       | differentiated on timeslice length in their server and
       | workstation offerings.
       | 
       | it's just that CPUs are still a helluvalot faster than us
        
         | kaba0 wrote:
         | People can only do single-threaded concurrency, we have
         | absolutely no way at doing true parallelism on a cognitive
         | level+
         | 
         | I really don't see the parallel you are trying to draw,
         | computers do what they are instructed to do with very very very
         | little chance of a hardware failure. Not wanted operations can
         | happen, but they ultimately boil down to human error.
         | 
         | + We are otherwise a heavily distributed system which has many
         | autonomous systems interoperating at the same time
        
           | jgtrosh wrote:
           | The parallel they are drawing is for multitasking on single-
           | core computers, for which performance is impacted somewhat
           | similarly to humans.
           | 
           | Of course, the same parallel cannot be drawn with
           | multitasking on multiple cores; though other issues of
           | communication between cores can (and have, extensively) be
           | compared with parallelism between multiple humans.
        
           | ThalesX wrote:
           | > Not wanted operations can happen, but they ultimately boil
           | down to human error.
           | 
           | This made me think. Is a cosmic ray human error because we
           | were unable to prevent it damaging the system?
        
             | kaba0 wrote:
             | How many cosmic ray bitflips happen? Even without ECC ram
             | I'm fairly sure I have never seen any affect me, so there
             | is that (even data hoarders with terabytes of data stored
             | with e.g. ZFS seldom report problems due to that - when
             | they start to see checksum errors it likely means a soon to
             | fail harddrive instead)
             | 
             | Also, if I'm not mistaken, in airplanes which are much more
             | likely to get hit by cosmic rays at high altitude, they
             | often use redundant CPUs that work in lockstep with each
             | other. So.. in the end it is human error I guess? Handling
             | unexpected cases should be done well as well.
        
       | valyagolev wrote:
       | check also out the story of invention of boredom after the
       | introduction of the mechanical clock:
       | http://aotcpress.com/articles/timepass-boredom/
        
       | smokel wrote:
       | It's fun to see how some technical terms creep into social
       | sciences and philosophy, and eventually into the wild.
       | 
       | Coming from a technical background, I never fully understood what
       | is meant by "object oriented ontology".
       | 
       | Another nice example is stretching the concept of "open source"
       | to include the wildest ideas.
        
         | marcosdumay wrote:
         | (From Wikipedia:)
         | 
         | > Object-oriented ontology maintains that objects exist
         | independently (as Kantian noumena) of human perception and are
         | not ontologically exhausted by their relations with humans or
         | other objects.
         | 
         | So, basically, it's your default assumption that the world
         | exists independently of somebody being there to see it.
         | 
         | Looks like the clickbaity name is there as a prank, because
         | it's a revolt against some newer philosophy that can't settle
         | on the old "if a tree falls on the forest and nobody is around,
         | does it make a sound?"
         | 
         | But I did never hear about this before, so I may have
         | understood things wrong.
        
       | 752963e64 wrote:
        
       | togaen wrote:
       | Clickbait.
        
       | mtreis86 wrote:
       | Multitasking existed long before computers, so I don't like the
       | title much.
       | 
       | You probably can't cook a meal without multitasking. The author
       | suggests that you are rapidly switching focus, but I don't agree
       | - if you schedule things correctly you can jump from task to task
       | without thinking about it. Eg if you know you need to make a
       | burger with fries and a plate of nachos at the same time you can
       | schedule the tasks based on how much time they take - burger on
       | the grill, fries in the grease, start prepping the bun/plate, get
       | the nachos built and in the broiler, pull the fries and let them
       | drain, plate the burger, add the fries, pull the nachos out, out
       | the window for service. You don't need to think much ahead to get
       | it done while in the process, if you already know the plan and
       | are used to it. Everything has a timer and you just need to move
       | things when the timer says go. Bonus points if the timer is
       | internal.
        
         | polishdude20 wrote:
         | Yeah but is that truly multi tasking? Seems more like an event
         | loop. Which is a form of multi tasking I guess.
        
           | oso2k wrote:
           | In CS, that is more generally called scheduling or
           | pipelining. And they're forms of queuing theory and capacity
           | resource management. For me, multitasking is the introduction
           | of prioritization into the task queue management. In the
           | above post, there's a Finish-to-Finish prioritization
           | introduced. We want hot burgers and nachos to complete at the
           | same time or nearly the same time. So, yeah, I'd call that
           | multitasking.
        
         | kaba0 wrote:
         | We can't do parallelism, only concurrency on a cognitive level.
         | Think of your brain like the CPU, while your appendages can be
         | thought of as some PCIe connected device. The CPU can send
         | tasks to those and given a well-known pattern it can execute
         | them autonomously (e.g. you can walk without actively thinking
         | about it. But if there is dog shit on the streets you want to
         | avoid you will have to look up and allocate CPU time to the
         | task)
        
           | fnordpiglet wrote:
           | Human twins are parallel processors, with two identical and
           | independent cores.
        
           | jrootabega wrote:
           | I think we can do some limited degree of parallelism. We can
           | walk/run and talk at the same time. We can walk and operate a
           | phone at the same time (albeit more poorly). Our two arms can
           | work in parallel - rub your belly and pat your head. Or, for
           | a better example, driving a manual transmission car -- you
           | can shift gears, and modulate your steering and speed at the
           | same time.
           | 
           | In the mental world, you can also listen to a couple
           | conversations at once with effort.
        
             | jrootabega wrote:
             | Another one: turning the handle on my popcorn cooker and
             | hitting microwave buttons to melt butter.
             | 
             | Steering with one hand and changing radio stations with the
             | other.
             | 
             | One that I feel I can't do at all: hit a keyboard key
             | really fast with one hand and hit another one more slowly
             | with another. Unless I treat it like playing drums in a
             | specific rhythm, my fast hand has to stop briefly to let my
             | slow hand hit its key.
        
             | jskulski wrote:
             | This level of parallelism feels more like my brain is
             | abstracting two tasks into one. It takes a little practice
             | and then you gain that ability
        
               | jrootabega wrote:
               | Interesting observation. Are you saying there IS a
               | feeling of doing two things in parallel that you just
               | don't feel for those tasks? Maybe that is what
               | parallelism feels like.
               | 
               | But on the other hand, would I say that walking is itself
               | parallel because it uses two legs, two feet, and two arms
               | all doing things at once? I guess not.
        
           | messe wrote:
           | > We can't do parallelism, only concurrency on a cognitive
           | level.
           | 
           | While that might be through of conscious thought, but there's
           | definitely at least anecdotal evidence to suggest that the
           | brain performs tasks in the background. Think about how many
           | times you've struggled to remember the name of an author, a
           | movie, an actor; only to have it come to you hours later
           | while you're working on something entirely unrelated.
        
             | orev wrote:
             | A computer accomplishes tasks by coordinating many
             | subsystems. Not everything is done in the CPU, and the
             | brain is similar. The central unit can make requests of
             | other components (e.g. storage controller), and they go off
             | and do it while the central unit does something else. Only
             | the real heavy thinking/processing happens in the CPU, and
             | that's _always_ what discussions about human multitasking
             | are talking about. Brains and computer systems work in
             | similar ways.
        
               | interroboink wrote:
               | > Only the real heavy thinking/processing happens in the
               | CPU...       > Brains and computer systems work in
               | similar ways.
               | 
               | I think that this characterization is pretty simplistic.
               | Perhaps it's useful as a model from time to time, but
               | does not capture the massively complex reality, full of
               | unknowns and poorly understood by science to this day.
               | 
               | Where is this "CPU" in the brain, of which you speak? I
               | suppose the pre-frontal cortex? That zone is generally
               | associated with orchestration/planning, that you mention.
               | But to say that those functions constitute "the real
               | heavy thinking" is a bit of a reach, I think.
               | 
               | It would be like saying the manager does the all the hard
               | work (:
               | 
               | I'm no neuroscientist, but anecdotally, a good portion of
               | my important mental results come from an unknown place --
               | maybe bubbling to the forefront of consciousness when I'm
               | sitting on the toilet, or in a dream. Not when my "CPU is
               | spinning", so to speak.
               | 
               | YMMV.
        
               | sudosysgen wrote:
               | Even the CPU itself has different processing units which
               | it uses to delegate such tasks and achieve parallelism
               | for tasks which don't have data dependencies
        
           | carapace wrote:
           | The limits of what we can and can't do are not well-explored,
           | nor well-bounded.
           | 
           | For example, there was a fellow (his name escapes me at the
           | moment) who had trained himself to be able to write a
           | sentence with one hand while solving a mathematical equation
           | with the other.
           | 
           | There's a reason why our minds evolved a "unitary" identity
           | or ego, it's evolutionarily advantageous (tautologically,
           | sorry), but it's an illusion. You can "divide" your mind
           | among several tasks (in other words, the brain is _not_ like
           | a CPU, it 's more like "the cloud", yeah?) but it's not
           | really as useful as it might seem.
           | 
           | - - - -
           | 
           | (FWIW, my first thought on reading the title was "This person
           | doesn't cook." ;P )
        
             | sudosysgen wrote:
             | I learnt to do that in elementary school for fun, I would
             | personally do it by doing it concurrently fast enough that
             | the bottleneck was my hand writing instead of the thought,
             | so all I was actually doing in parallel was writing things
             | I had already thought out, so I don't know how much this
             | brings to the concurrency/parallelism conscious thought
             | question.
        
         | tartoran wrote:
         | > You probably can't cook a meal without multitasking
         | 
         | But cooking a meal is a task in itself ( consisting related of
         | subtasks). When cooking a meal it is a good idea to avoid
         | attempting other unrelated tasks such as responding to emails
         | and such as the quality of the original task will decrease
        
       | ElCheapo wrote:
       | Conscious multitasking is incredibly inefficient, but hardware
       | accelerated (unconscious) multitasking works pretty well
        
         | lathiat wrote:
         | Sounds a bit like "System 1/System 2" thinking.
         | 
         | can definitely drive and listen to a podcast when you're good
         | at it.
         | 
         | https://youtu.be/5eW6Eagr9XA
        
       | throw1234651234 wrote:
       | Most "multi-tasking" is the combination of a rote / completely
       | automated task with a task you are engaged in.
       | 
       | Rote: Walking Engaged: Talking
       | 
       | Rote: Washing dishes Engaged: Listening
       | 
       | I find that "music in the background" while coding only works if
       | you either completely zone it out and it acts as white noise
       | (rare) OR the task is so boring and routine that you need some
       | other stimulus to avoid getting bored.
        
       | sys_64738 wrote:
       | All the job ads nowadays require effective multitasking.
        
         | Bud wrote:
         | Which is funny, since there's no such thing.
        
       ___________________________________________________________________
       (page generated 2022-09-17 23:02 UTC)