An autonomous vehicle comprising: a first computing system configured to perform one or more first processes; a second computing system configured to perform one or more second processes, the one or more first processes and the one or more second processes including a plurality of functions; one or more processors; and memory storing one or more computer-readable media storing instructions executable by the one or more processors to perform acts comprising: querying the first computing system and the second computing system at a frequency to determine a plurality of running functions; determining, based at least in part on a data structure (312, 314) representative of the one or more first processes and the one or more second processes, unique node identifiers associated with the plurality of running functions; associating timestamps with the unique node identifiers; determining, based at least in part on the unique node identifiers and the timestamps, a first CPU usage of the first computing system and a second CPU usage of the second computing system; determining an event associated with the autonomous vehicle based at least in part on the first CPU usage being equal to or greater than a first threshold CPU usage or the second CPU usage being equal to or greater than a second threshold CPU usage; and controlling, based at least in part on the event, the autonomous vehicle in a safe state. a first computing system configured to perform one or more first processes; a second computing system configured to perform one or more second processes, the one or more first processes and the one or more second processes including a plurality of functions; one or more processors; and memory storing one or more computer-readable media storing instructions executable by the one or more processors to perform acts comprising: querying the first computing system and the second computing system at a frequency to determine a plurality of running functions; determining, based at least in part on a data structure (312, 314) representative of the one or more first processes and the one or more second processes, unique node identifiers associated with the plurality of running functions; associating timestamps with the unique node identifiers; determining, based at least in part on the unique node identifiers and the timestamps, a first CPU usage of the first computing system and a second CPU usage of the second computing system; determining an event associated with the autonomous vehicle based at least in part on the first CPU usage being equal to or greater than a first threshold CPU usage or the second CPU usage being equal to or greater than a second threshold CPU usage; and controlling, based at least in part on the event, the autonomous vehicle in a safe state. querying the first computing system and the second computing system at a frequency to determine a plurality of running functions; determining, based at least in part on a data structure (312, 314) representative of the one or more first processes and the one or more second processes, unique node identifiers associated with the plurality of running functions; associating timestamps with the unique node identifiers; determining, based at least in part on the unique node identifiers and the timestamps, a first CPU usage of the first computing system and a second CPU usage of the second computing system; determining an event associated with the autonomous vehicle based at least in part on the first CPU usage being equal to or greater than a first threshold CPU usage or the second CPU usage being equal to or greater than a second threshold CPU usage; and controlling, based at least in part on the event, the autonomous vehicle in a safe state.