Пример #1
0
static void system_mem_log(oskar_Log* log)
{
    size_t mem_total, mem_free, mem_used, gigabyte = 1024 * 1024 * 1024;
    size_t mem_resident;
    mem_total = oskar_get_total_physical_memory();
    mem_resident = oskar_get_memory_usage();
    mem_free = oskar_get_free_physical_memory();
    mem_used = mem_total - mem_free;
    oskar_log_message(log, 'M', 0, "System memory usage %.1f%% "
            "(%.1f GB/%.1f GB) used.",
            100. * (double) mem_used / mem_total,
            (double) mem_used / gigabyte,
            (double) mem_total / gigabyte);
    oskar_log_message(log, 'M', 0, "Memory used by simulator: %.1f MB",
                      (double) mem_resident / (1024. * 1024.));
}
Пример #2
0
void oskar_print_memory_info(void)
{
    size_t totalSwapMem, freeSwapMem, totalPhysMem, freePhysMem, usedMem;
    totalPhysMem = oskar_get_total_physical_memory();
    freePhysMem = oskar_get_free_physical_memory();
    totalSwapMem = oskar_get_total_swap_memory();
    freeSwapMem = oskar_get_free_swap_memory();
    usedMem = oskar_get_memory_usage();
    printf("Memory used by current process: %lu MB\n",
           (unsigned long) (usedMem/(1024*1024)));
    printf("Free physical memory: %lu MB (of %lu MB)\n",
            (unsigned long) (freePhysMem/(1024*1024)),
            (unsigned long) (totalPhysMem/(1024*1024)));
    printf("Free swap memory: %lu MB (of %lu MB)\n",
            (unsigned long) (freeSwapMem/(1024*1024)),
            (unsigned long) (totalSwapMem/(1024*1024)));
}