[Swift-commit] r5528 - SwiftApps/SciColSim
wilde at ci.uchicago.edu
wilde at ci.uchicago.edu
Mon Jan 30 14:25:34 CST 2012
Author: wilde
Date: 2012-01-30 14:25:34 -0600 (Mon, 30 Jan 2012)
New Revision: 5528
Modified:
SwiftApps/SciColSim/TODO
SwiftApps/SciColSim/testopt.py
Log:
Add calibration and tming tests to testopt.py. Add more TODO items.
Modified: SwiftApps/SciColSim/TODO
===================================================================
--- SwiftApps/SciColSim/TODO 2012-01-30 19:22:51 UTC (rev 5527)
+++ SwiftApps/SciColSim/TODO 2012-01-30 20:25:34 UTC (rev 5528)
@@ -1,20 +1,23 @@
-Stopped at:
+x = done, - = in progress
-Re-checking annealing loop
-- rejection and rj calcs
-- AR tracef's
-- cycle logic
+[ ] convert all hard-coded annealing.swift params to @arg(s)
+[ ] Get timings for optimizer calls to display. Perhaps via stdout or
+ 2nd file or a tagged value in the main output file of 'm' mode?
----
+[ ] set optimizer to unbufferred IO
-x = done, - = in progress
+[ ] Do optimizer timing studies and look for long running outliers
+[ ] Insert kill-and-restart logic to kill and re-run long running outliers.
+
+[ ] echo parameters at start like c++ logic
+
[ ] Determine correct test parameter sets - and if we are passing these
through correctly.
-[ ] Check correctnes of rejection tracking logic and j of k logic for
+[x] Check correctnes of rejection tracking logic and j of k logic for
the 5 params
[ ] address fixme's
@@ -26,6 +29,9 @@
code). Check if floor() is correct and how load is partitioned; what
N makes sense in swift usage?
+[ ] make calls to optimizer(op m) work right regardless of what N and
+ Nworkers is. Now seems to require ((N mod NWorkers0 == 0)
+
[x] Ensure we are doing 100's to 1000's of evolve() calls in parallel.
[ ] Do performance tests on Beagle and then other platforms (OSG, TG)
@@ -33,19 +39,20 @@
[-] Make annealing.swift stdout/err output match that of optimizer.cpp
-[ ] Align Swift and .cp code enough do a correctness test.
+[ ] Align Swift and .cpp code enough do a correctness test.
+[ ] Double-check random number generation, and 100-# priming logic.
+
[ ] Enable precision control for %f formatting (to match c++
output). Why are we getting some long and some short? Is swift
truncating the constant or the tracef output?
-[ ] Package code for ExM research.
+[ ] add logic from C++ called "random intiation of starting parameters"
+ (iff Andrey needs it)
-[ ] add logic from C++ called "random intiation of starting parameters
+[ ] Integrate latest C++ code from Andrey. See if any changes to the
+ annealing optimizer.
-[ ] make calls to optimizer(op m) work right regardless of what N and
- Nworkers is. Now seems to require ((N mod NWorkers0 == 0)
-
[-] Platforms:
[-] Mac
@@ -59,6 +66,11 @@
[ ] OSG Cloud
[ ] ibiCluster
+[ ] Develop ExTENCI verison of script with different logic on parallel
+ vs serial clusters. (Ketan)
+
+[ ] Package code for ExM research.
+
---
[x] Integrate code to start with usec seed
Modified: SwiftApps/SciColSim/testopt.py
===================================================================
--- SwiftApps/SciColSim/testopt.py 2012-01-30 19:22:51 UTC (rev 5527)
+++ SwiftApps/SciColSim/testopt.py 2012-01-30 20:25:34 UTC (rev 5528)
@@ -5,12 +5,15 @@
unbuffered = os.fdopen(sys.stdout.fileno(), 'w', 0)
sys.stdout = unbuffered
-app = "./orig-optimizer"; # For Mac only: original code (+1 loop fix) using Grand Central Dispatch
+app = "./orig-optimizer"; # For Mac only: original code (+1 loop fix) using Grnd Central Dispatch
app = "./dispatch-optimizer"; # For Mac only: sing Grand Central Dispatch
app = "./openmp-optimizer"; # For Mac or Linux: Using OpenMP (Default)
paramset="default"
+#paramset="mw2"
+print("Running with parameter set " + paramset + "\n\n");
+
if paramset == "default":
# Parameter names and optimizer command line positions
@@ -69,6 +72,34 @@
operation = "m" # n=normal, m=manual (runs 1 multi_loss call)
seed = "1234567"
+elif paramset == "mw": # FAST TEST PARAMETERS by Mike
+
+ startTarget = 58
+ endTarget = 59
+ incrTarget = 50
+ optimizerRepeats = 1
+ evolveReruns = 100
+ annealingSteps = 5
+ NWorkers = "4"
+ openmp = "OMP_NUM_THREADS=" + NWorkers
+ operation = "n" # n=normal, m=manual (runs 1 multi_loss call)
+ seed = "1234567"
+ app = "./openmp-optimizer";
+
+elif paramset == "mw2": # Timing TEST PARAMETERS by Mike
+
+ startTarget = 900
+ endTarget = 1059
+ incrTarget = 1
+ optimizerRepeats = 1
+ evolveReruns = 4
+ annealingSteps = 1
+ NWorkers = "4"
+ openmp = "OMP_NUM_THREADS=" + NWorkers
+ operation = "m" # n=normal, m=manual (runs 1 multi_loss call)
+ seed = "123456"
+ app = "./openmp-optimizer";
+
# Ensure we dont pass new parameters to original optimizer versions
# (but they would be ignored)
More information about the Swift-commit
mailing list