Author: Tobias Weber <[email protected]>
Branch: c8-efficient-serial-execution-master
Changeset: r2153:cadbddf81079
Date: 2017-08-21 12:40 +0200
http://bitbucket.org/pypy/stmgc/changeset/cadbddf81079/
Log: Fix trx length update depends on instrumentation for thread local
reference and remove logging of trx length
diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -1255,6 +1255,8 @@
bool was_inev = STM_PSEGMENT->transaction_state == TS_INEVITABLE;
_validate_and_add_to_commit_log();
+
+ stm_thread_local_t *tl_for_trx_len = STM_SEGMENT->running_thread;
if (external) {
/* from this point on, unlink the original 'stm_thread_local_t *'
from its segment. Better do it as soon as possible, because
@@ -1302,7 +1304,7 @@
s_mutex_unlock();
- stm_transaction_length_handle_validation(thread_local_for_logging, false);
+ stm_transaction_length_handle_validation(tl_for_trx_len, false);
/* between transactions, call finalizers. this will execute
a transaction itself */
diff --git a/c8/stm/nursery.c b/c8/stm/nursery.c
--- a/c8/stm/nursery.c
+++ b/c8/stm/nursery.c
@@ -77,8 +77,6 @@
static inline uintptr_t stm_get_transaction_length(stm_thread_local_t *tl) {
double relative_additional_length = tl->relative_transaction_length;
- publish_custom_value_event(
- relative_additional_length, STM_SINGLE_THREAD_MODE_ADAPTIVE);
uintptr_t result =
(uintptr_t)(LARGE_FILL_MARK_NURSERY_BYTES *
relative_additional_length);
// printf("%020" PRIxPTR "\n", result);
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit