[pypy-commit] stmgc c8-efficient-serial-execution-master: Merge timing events enum so that all branches share the same interface with print_stm_log.py
tobweber
pypy.commits at gmail.com
Mon Aug 21 06:58:41 EDT 2017
Author: Tobias Weber <tobias_weber89 at gmx.de>
Branch: c8-efficient-serial-execution-master
Changeset: r2151:4a71ee20626e
Date: 2017-08-05 14:17 +0200
http://bitbucket.org/pypy/stmgc/changeset/4a71ee20626e/
Log: Merge timing events enum so that all branches share the same
interface with print_stm_log.py
diff --git a/c8/stmgc.h b/c8/stmgc.h
--- a/c8/stmgc.h
+++ b/c8/stmgc.h
@@ -201,7 +201,7 @@
/* ==================== PUBLIC API ==================== */
/* Number of segments (i.e. how many transactions can be executed in
- parallel, in maximum). If you try to start transactions in more
+ parallel, at maximum). If you try to start transactions in more
threads than the number of segments, it will block, waiting for the
next segment to become free.
*/
@@ -574,21 +574,49 @@
STM_GC_MAJOR_START,
STM_GC_MAJOR_DONE,
+ /* execution duration profiling events */
+ STM_WARMUP_COMPLETE,
+
+ STM_DURATION_START_TRX,
+ STM_DURATION_WRITE_GC_ONLY,
+ STM_DURATION_WRITE_SLOWPATH,
+ STM_DURATION_VALIDATION,
+ STM_DURATION_CREATE_CLE,
+ STM_DURATION_COMMIT_EXCEPT_GC,
+ STM_DURATION_MINOR_GC,
+ STM_DURATION_MAJOR_GC_LOG_ONLY,
+ STM_DURATION_MAJOR_GC_FULL,
+
+ STM_SINGLE_THREAD_MODE_ON,
+ STM_SINGLE_THREAD_MODE_OFF,
+ STM_SINGLE_THREAD_MODE_ADAPTIVE,
+
_STM_EVENT_N
};
-#define STM_EVENT_NAMES \
- "transaction start", \
- "transaction commit", \
- "transaction abort", \
- "contention write read", \
- "wait free segment", \
- "wait other inevitable", \
- "wait done", \
- "gc minor start", \
- "gc minor done", \
- "gc major start", \
- "gc major done"
+#define STM_EVENT_NAMES \
+ "transaction start", \
+ "transaction commit", \
+ "transaction abort", \
+ "contention write read", \
+ "wait free segment", \
+ "wait other inevitable", \
+ "wait done", \
+ "gc minor start", \
+ "gc minor done", \
+ "gc major start", \
+ "gc major done", \
+ /* names of duration events */ \
+ "marks completion of benchmark warm up phase" \
+ "duration of transaction start", \
+ "duration of gc due to write", \
+ "duration of write slowpath", \
+ "duration of validation", \
+ "duration of commit log entry creation", \
+ "duration of commit except gc", \
+ "duration of minor gc", \
+ "duration of major gc doing log clean up only", \
+ "duration of full major gc"
/* The markers pushed in the shadowstack are an odd number followed by a
regular object pointer. */
More information about the pypy-commit
mailing list