Skip to content
  • Arjen Hiemstra's avatar
    Move reading of /proc/pid/smaps_rollup to a separate thread · 23852597
    Arjen Hiemstra authored
    As it turns out, smaps/smaps_rollup are fairly slow to read because the
    kernel iterates all the memory of a process when this file is accessed.
    This caused the update time of all processes to go up from ~30 ms to
    more than 200ms.
    
    This changes things to do the reading of smaps_rollup in a separate
    thread that doesn't block the main update. This reduces update time to
    ~50ms, which is noticably better. To accomodate the asynchronous nature,
    some additional functionality needed to be added so we can notify
    Processes of the asynchronous update.
    23852597