projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gettime: slightly improve CPU clock calibration
[fio.git]
/
idletime.h
diff --git
a/idletime.h
b/idletime.h
index 819da25e19a0819a44ed34a4190fc35c5f138256..91ca95f5ee5ba69901b41a25346954a7bbec172b 100644
(file)
--- a/
idletime.h
+++ b/
idletime.h
@@
-1,7
+1,9
@@
#ifndef FIO_IDLETIME_H
#define FIO_IDLETIME_H
#ifndef FIO_IDLETIME_H
#define FIO_IDLETIME_H
-#include "fio.h"
+#include <sys/time.h>
+#include <sys/types.h>
+#include "os/os.h"
#define CALIBRATE_RUNS 10
#define CALIBRATE_SCALE 1000
#define CALIBRATE_RUNS 10
#define CALIBRATE_SCALE 1000
@@
-25,8
+27,8
@@
struct idle_prof_thread {
pthread_t thread;
int cpu;
int state;
pthread_t thread;
int cpu;
int state;
- struct time
val
tps;
- struct time
val
tpe;
+ struct time
spec
tps;
+ struct time
spec
tpe;
double cali_time; /* microseconds to finish a unit work */
double loops;
double idleness;
double cali_time; /* microseconds to finish a unit work */
double loops;
double idleness;
@@
-34,6
+36,8
@@
struct idle_prof_thread {
pthread_cond_t cond;
pthread_mutex_t init_lock;
pthread_mutex_t start_lock;
pthread_cond_t cond;
pthread_mutex_t init_lock;
pthread_mutex_t start_lock;
+
+ os_cpu_mask_t cpu_mask;
};
struct idle_prof_common {
};
struct idle_prof_common {
@@
-52,6
+56,8
@@
extern void fio_idle_prof_init(void);
extern void fio_idle_prof_start(void);
extern void fio_idle_prof_stop(void);
extern void fio_idle_prof_start(void);
extern void fio_idle_prof_stop(void);
-extern void show_idle_prof_stats(int, struct json_object *);
+extern void show_idle_prof_stats(int, struct json_object *, struct buf_output *);
+
+extern void fio_idle_prof_cleanup(void);
#endif
#endif