عجفت الغور

parallel computing and the os

talks, operating systems

https://dl.acm.org/doi/10.1145/2830903.2830911 https://www.youtube.com/embed/KZ9hm5AUmWU

  • Minicomputers -> after timesharing
    • parallel computing sort of dropped off with this
    • logs and interrupts
    • multiprocess parallelism sort of died
  • client/server computing make IO concurrcy big
    • must exploit I/O concurrency
    • microkernel organizations
      • User level services for I/O -> moves into microkernels, pthreads standard
  • events vs threads
    • no sharing of handlers, no locks, etc, CSP style
      • most webservers today are events style
      • john usterhat
  • multiprocessors make a return, NUMA stuff becomes big again
    • but uniprocessors performance keeps improving
  • multicore processors come roaring back
    • cores per processor increase yet again performance goes back up
    • moore’s law is dead on single cores, but multi cores are back
    • make, for example, increases and scale more
      • reading a cache line from a different core is expensive
      • congestion on cache lines, but avoiding cache line sharing is challenging
        • even a RW lock is expensive
        • basically the only real optimization is to stop spraying your data structures everywhere
      • RCU!
        • writers must follow careful discipline
  • phase 4? OS community? Commmodity chips? -> Cloud computing, map reduce, moving data is expensive, move compute
    • shared memory locks have gotten better!
    • parallelism ahs moved up the software stack driven by commodity hardware