mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-10 10:41:50 +00:00
CPU usage getter for apple.
This commit is contained in:
parent
85f29a0f22
commit
963d2b3ca8
@ -8,6 +8,9 @@
|
|||||||
# include <assert.h>
|
# include <assert.h>
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
# include <inttypes.h>
|
# include <inttypes.h>
|
||||||
|
# elif defined __APPLE__
|
||||||
|
# include <mach/mach_host.h>
|
||||||
|
# include <mach/host_info.h>
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
namespace tracy
|
namespace tracy
|
||||||
@ -46,6 +49,17 @@ void SysTime::ReadTimes()
|
|||||||
used = user + nice + system;
|
used = user + nice + system;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# elif defined __APPLE__
|
||||||
|
|
||||||
|
void SysTime::ReadTimes()
|
||||||
|
{
|
||||||
|
host_cpu_load_info_data_t info;
|
||||||
|
mach_msg_type_number_t cnt = HOST_CPU_LOAD_INFO_COUNT;
|
||||||
|
host_statistics( mach_host_self(), HOST_CPU_LOAD_INFO, reinterpret_cast<host_info_t>( &info ), &cnt );
|
||||||
|
used = info.cpu_ticks[CPU_STATE_USER] + info.cpu_ticks[CPU_STATE_NICE] + info.cpu_ticks[CPU_STATE_SYSTEM];
|
||||||
|
idle = info.cpu_ticks[CPU_STATE_IDLE];
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SysTime::SysTime()
|
SysTime::SysTime()
|
||||||
@ -65,7 +79,7 @@ float SysTime::Get()
|
|||||||
|
|
||||||
#if defined _WIN32 || defined __CYGWIN__
|
#if defined _WIN32 || defined __CYGWIN__
|
||||||
return diffUsed == 0 ? 0 : ( diffUsed - diffIdle ) * 100.f / diffUsed;
|
return diffUsed == 0 ? 0 : ( diffUsed - diffIdle ) * 100.f / diffUsed;
|
||||||
#elif defined __linux__
|
#elif defined __linux__ || defined __APPLE__
|
||||||
const auto total = diffUsed + diffIdle;
|
const auto total = diffUsed + diffIdle;
|
||||||
return total == 0 ? 0 : diffUsed * 100.f / total;
|
return total == 0 ? 0 : diffUsed * 100.f / total;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#ifndef __TRACYSYSTIME_HPP__
|
#ifndef __TRACYSYSTIME_HPP__
|
||||||
#define __TRACYSYSTIME_HPP__
|
#define __TRACYSYSTIME_HPP__
|
||||||
|
|
||||||
#if defined _WIN32 || defined __CYGWIN__ || defined __linux__
|
#if defined _WIN32 || defined __CYGWIN__ || defined __linux__ || defined __APPLE__
|
||||||
# define TRACY_HAS_SYSTIME
|
# define TRACY_HAS_SYSTIME
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user