Author: Tobias Weber <tobias_webe...@gmx.de>
Branch: c8-long-transactions
Changeset: r2042:df52953567cb
Date: 2017-04-13 10:09 +0200
http://bitbucket.org/pypy/stmgc/changeset/df52953567cb/

Log:    Define large nursery mark in a more straight forward way and make
        single thread mode transactions inevitable

diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -1170,6 +1170,7 @@
                 segments_in_use));
         if (segments_in_use <= single_thread_mode_segments_in_use_limit) {
             start_single_thread_mode();
+            _stm_become_inevitable("execute_in_single_thread_mode");
         } else if (stm_single_thread_mode_active) {
             end_single_thread_mode();
         }
diff --git a/c8/stm/nursery.c b/c8/stm/nursery.c
--- a/c8/stm/nursery.c
+++ b/c8/stm/nursery.c
@@ -15,7 +15,7 @@
 
 static bool stm_single_thread_mode_active = false;
 
-#define SINGLE_THREAD_MODE_FILL_MARK_NURSERY_BYTES  (NURSERY_SIZE * 500000)
+#define SINGLE_THREAD_MODE_FILL_MARK_NURSERY_BYTES  (0x3000000000000000L)
 #define DEFAULT_FILL_MARK_NURSERY_BYTES             (NURSERY_SIZE / 4)
 
 uintptr_t stm_fill_mark_nursery_bytes = DEFAULT_FILL_MARK_NURSERY_BYTES;
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to