[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