[m-rev.] diff: Disable parallel marking on Windows again.
Peter Wang
novalazy at gmail.com
Mon Oct 12 17:30:30 AEDT 2015
Despite the recent Boehm GC upgrade I can reproduce hangs with a simple
test:
1. build samples/e.m in hlc.par.gc (any simple program)
2. run it 1000 times
The number of marker threads is controlled by the GC_MARKERS environment
variable. I managed to get through the test at GC_MARKERS=1 and
GC_MARKERS=2. At GC_MARKERS=3 one of the instances would inevitably hang.
This was in a 4-CPU VM running Windows 10.
Upgrading Boehm GC to the latest development version did not help.
configure.ac:
Disable parallel marking on Windows again.
---
configure.ac | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
index 8b1a719..445a848 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3120,9 +3120,10 @@ case "$host" in
;;
*)
CFLAGS_FOR_THREADS="$WIN32_GC_THREADLIB"
- ENABLE_BOEHM_THREAD_LOCAL_ALLOC="-DTHREAD_LOCAL_ALLOC"
- ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
BOEHM_CFLAGS_FOR_THREADS="-DGC_THREADS $WIN32_GC_THREADLIB"
+ ENABLE_BOEHM_THREAD_LOCAL_ALLOC="-DTHREAD_LOCAL_ALLOC"
+ # Parallel marking on Windows seems unreliable.
+ # ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
;;
esac
# avoid_sbrk?
@@ -3155,7 +3156,8 @@ case "$host" in
THREAD_LIBS=
fi
ENABLE_BOEHM_THREAD_LOCAL_ALLOC="-DTHREAD_LOCAL_ALLOC"
- ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
+ # Parallel marking on Windows seems unreliable.
+ # ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
;;
esac
;;
@@ -3165,7 +3167,8 @@ case "$host" in
BOEHM_CFLAGS_FOR_THREADS="-DGC_THREADS $WIN32_GC_THREADLIB"
THREAD_LIBS="-lpthread"
ENABLE_BOEHM_THREAD_LOCAL_ALLOC="-DTHREAD_LOCAL_ALLOC"
- ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
+ # Parallel marking on Windows seems unreliable.
+ # ENABLE_BOEHM_PARALLEL_MARK="-DPARALLEL_MARK"
;;
*apple*darwin*)
--
2.1.2
More information about the reviews
mailing list