aboutsummaryrefslogtreecommitdiff
path: root/Carpet/LoopControl/param.ccl
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2013-05-26 16:32:43 -0400
committerErik Schnetter <schnetter@gmail.com>2013-05-26 16:32:43 -0400
commitcce526ef043dda6115818e54120e8d1410d2d7c5 (patch)
tree112be435032bd827ec66fe191a07d7d40e70e87f /Carpet/LoopControl/param.ccl
parent9791222a06c996805b3509be67f30aa731fcae10 (diff)
LoopControl: Implement automatic performance improvements
Redesigned internal data structures. This touches many parts of the code. Keep statistics about past loop iterations. Output statistics when terminating. Use these statistics to dynamically choose looping parameters. Allow disabling this feature, e.g. for benchmarks.
Diffstat (limited to 'Carpet/LoopControl/param.ccl')
-rw-r--r--Carpet/LoopControl/param.ccl14
1 files changed, 12 insertions, 2 deletions
diff --git a/Carpet/LoopControl/param.ccl b/Carpet/LoopControl/param.ccl
index 71329ca71..a501ed0e0 100644
--- a/Carpet/LoopControl/param.ccl
+++ b/Carpet/LoopControl/param.ccl
@@ -32,15 +32,25 @@ KEYWORD initial_setup "Initial configuration" STEERABLE=always
"tiled" :: "Basic LoopControl setup"
} "tiled"
+INT explore_eagerly_before_iteration "Try to explore the parameter space as much as possible before this iteration" STEERABLE=always
+{
+ 0:* :: ""
+} 0
+
+INT settle_after_iteration "Do not explore the parameter space any more at or after this iteration" STEERABLE=always
+{
+ -1 :: "always continue exploring"
+ 0:* :: ""
+} -1
+
# NOTE:
# - Intel chips divide the D1 cache into two, one for each hyperthread.
# The cache is thus not shared!
-# This is off by default since it seems to affect results on intel processors.
BOOLEAN use_smt_threads "Place SMT threads close together" STEERABLE=always
{
-} "no"
+} "yes"
BOOLEAN align_with_cachelines "Align innermost loops with cache line size" STEERABLE=always
{