andrewrk / poop

Performance Optimizer Observation Platform
MIT License
788 stars 50 forks source link

add page faults #3

Open andrewrk opened 1 year ago

andrewrk commented 1 year ago

This is part of rusage. Potentially helpful snippet:

pub inline fn getPageFaults(rus: ResourceUsageStatistics) ?usize {
    switch (builtin.os.tag) {
        .linux, .macos, .ios => {
            if (rus.rusage) |ru| {
                return @intCast(usize, ru.ru_minflt);
            } else {
                return null;
            }
        },
        .windows => {
            if (rus.rusage) |ru| {
                return ru.PageFaultCount;
            } else {
                return null;
            }
        },
        else => return null,
    }
}