wiki:ReloadResults
Last modified 5 years ago Last modified on 02/12/09 14:24:27

Reloading Cached Simulation Results

Go through run*.xml files and pull out input values:

tool: cntbands-ext
version: 18
input.chirality.CarbonTypeN: 3
input.chirality.CarbonTypeM: 7
input.temperature: 300K
input.structure.? <- handle this case?
...

Be careful:

  • handle 300.0K vs. 300K vs. 300000mK (see Rappture::LibraryObj::value)
  • nevermind "ignore" directive in inputs
  • Use Rappture::library (trunk/lang/tcl/scripts/library.tcl)
  • See Rappture Tcl API

MD5 function in Tcl (just like md5sum)

  • C lang function with Tcl bindings Tcl_CreateCommand() -- use Tcl_GetByteArrayFromObj()
  • Put with rest of Tcl extensions in trunk/lang/tcl/src

MySQL interface within Tcl

  • Add to rappture-runtime

Database

All known results are compiled in a "database" of some sort. Store data in the file system:

/data
  /results
    /toolName
      /subversionRevision
        /1b/2f/33/run1212435-1b2f33229129392921...192.xml
         -- -- --    ------- ------------------------
         first       time    MD5 hash
         few digits  stamp
         of MD5
  • Keep log files with metadata in this same directory structure?
  • Build a MySQL database table for metadata?

Either way...

  • Keep track of run time
  • Keep track of what runs a particular user did in a particular session
  • Compute each result for the user, and then recompute ourselves (trusted way) and store that as cached result
  • Allow trusted users to deposit results?
  • Mark results as untrusted?