General system helper functions. More...
#include <system.h>
Static Public Member Functions | |
Operations | |
static void * | aligned_alloc (size_t size, size_t alignment=16) |
Allocates aligned memory. More... | |
static void | aligned_free (void *ptr) |
Frees aligned memory. More... | |
static int | capture_stack_trace (int frames_to_skip, int max_frames, void **out_frames, unsigned int *out_hash=nullptr) |
Captures a stack back trace by walking up the stack and recording the information for each frame. More... | |
static std::vector< std::string > | get_stack_frames_text (void **frames, int num_frames) |
Returns the function names and lines for the specified stack frame addresses. More... | |
static void | sleep (int millis) |
Sleep for 'millis' milliseconds. More... | |
static void | pause (int millis) |
Pause for 'millis' milliseconds. More... | |
static std::string | get_exe_path () |
Returns the full dirname of the executable that started this. More... | |
Attributes | |
enum | CPU_ExtensionX86 { mmx, mmx_ex, _3d_now, _3d_now_ex, sse, sse2, sse3, ssse3, sse4_a, sse4_1, sse4_2, xop, avx, aes, fma3, fma4 } |
enum | CPU_ExtensionPPC { altivec } |
static uint64_t | get_time () |
Get the current time (since system boot), in milliseconds. More... | |
static uint64_t | get_microseconds () |
Get the current time microseconds. More... | |
static bool | detect_cpu_extension (CPU_ExtensionX86 ext) |
static bool | detect_cpu_extension (CPU_ExtensionPPC ext) |
static int | get_num_cores () |
Return the number of CPU cores. More... | |
General system helper functions.