[MLton-commit] r7112
Matthew Fluet
fluet at mlton.org
Wed Jun 10 20:22:58 PDT 2009
Drop gcc inlining flags.
Recent versions of gcc give inlining warnings even with absurdly high
values for the inlining flags. Furthermore, the current values of the
inlining flags appear to have no significant affect on garbage
collector performance relative to gcc's default inlining behavior;
indeed, where there seems to be a difference, using gcc's default
inlining behavior gives shorter total GC time and percentage.
Benchmark: HaMLeT 1.3.1 executing (4^4)^3 via Peano arithmetic
x86-darwin (MacOSX 10.4; gcc 4.0.1)
w/ inlining flags (average over 5 runs)
GC type time ms number bytes bytes/sec
------------- ------- ------- --------------- ---------------
copying 309 15 77,512,076 251,010,609
mark-compact 5,910 5 668,061,784 113,035,394
minor 15,340 156 1,475,333,508 96,174,333
total time: 73,077 ms
total GC time: 22,450 ms (30.7%)
max pause time: 1,981 ms
total bytes allocated: 16,713,121,556 bytes
max bytes live: 232,919,556 bytes
max heap size: 532,701,184 bytes
max stack size: 28,049,408 bytes
num cards marked: 158
bytes scanned: 4,375,728,144 bytes
bytes hash consed: 0 bytes
w/o inlining flags (average over 5 runs)
GC type time ms number bytes bytes/sec
------------- ------- ------- --------------- ---------------
copying 309 15 77,512,076 250,523,840
mark-compact 5,888 5 668,061,784 113,469,289
minor 14,472 156 1,475,333,508 101,943,996
total time: 71,258 ms
total GC time: 21,537 ms (30.2%)
max pause time: 1,970 ms
total bytes allocated: 16,713,121,564 bytes
max bytes live: 232,919,556 bytes
max heap size: 532,701,184 bytes
max stack size: 28,049,408 bytes
num cards marked: 158
bytes scanned: 4,375,728,144 bytes
bytes hash consed: 0 bytes
amd64-linux (Fedora 10; gcc 4.3.2)
w/ inlining flags (average over 5 runs)
GC type time ms number bytes bytes/sec
------------- ------- ------- --------------- ---------------
copying 649 18 199,059,544 306,906,482
mark-compact 16,615 9 2,504,372,360 150,729,603
minor 31,781 250 3,837,071,244 120,734,755
total time: 172,137 ms
total GC time: 49,820 ms (28.9%)
max pause time: 2,599 ms
total bytes allocated: 33,164,279,424 bytes
max bytes live: 413,892,560 bytes
max heap size: 799,055,872 bytes
max stack size: 53,477,376 bytes
num cards marked: 256
bytes scanned: 13,208,961,000 bytes
bytes hash consed: 0 bytes
w/o inlining flags (average over 5 runs)
GC type time ms number bytes bytes/sec
------------- ------- ------- --------------- ---------------
copying 630 18 199,059,544 315,967,530
mark-compact 16,700 9 2,504,372,360 149,964,213
minor 29,496 250 3,837,071,244 130,087,850
total time: 170,213 ms
total GC time: 47,606 ms (28.0%)
max pause time: 2,615 ms
total bytes allocated: 33,164,279,432 bytes
max bytes live: 413,892,560 bytes
max heap size: 799,055,872 bytes
max stack size: 53,477,376 bytes
num cards marked: 256
bytes scanned: 13,208,961,000 bytes
bytes hash consed: 0 bytes
----------------------------------------------------------------------
U mlton/trunk/runtime/Makefile
----------------------------------------------------------------------
Modified: mlton/trunk/runtime/Makefile
===================================================================
--- mlton/trunk/runtime/Makefile 2009-06-11 03:22:56 UTC (rev 7111)
+++ mlton/trunk/runtime/Makefile 2009-06-11 03:22:58 UTC (rev 7112)
@@ -57,13 +57,7 @@
ifeq ($(TARGET_ARCH), amd64)
FLAGS += -m64
-ifeq (3.4, $(firstword $(sort $(GCC_VERSION) 3.4)))
-GCOPTFLAGS += --param inline-unit-growth=100
-GCOPTFLAGS += --param max-inline-insns-single=1000
-GCOPTFLAGS += --param large-function-growth=1000
-endif
DEBUGFLAGS += -gstabs+
-OPTWARNFLAGS += -Winline
endif
ifeq ($(findstring $(TARGET_ARCH), hppa ia64 powerpc sparc),$(TARGET_ARCH))
@@ -94,14 +88,6 @@
else
OPTFLAGS += -malign-loops=2 -malign-jumps=2 -malign-functions=5
endif
-ifeq (3.3, $(firstword $(sort $(GCC_MAJOR_VERSION) 3.3)))
-GCOPTFLAGS += --param max-inline-insns-single=1000
-ifeq (3.4, $(firstword $(sort $(GCC_MAJOR_VERSION) 3.4)))
-GCOPTFLAGS += --param inline-unit-growth=200
-GCOPTFLAGS += --param large-function-growth=2200
-OPTWARNFLAGS += -Winline
-endif
-endif
DEBUGFLAGS += -gstabs+
endif
More information about the MLton-commit
mailing list