Posts by author brockjw

Meeting Update: Monday April 1, 2013

Updates:

Possibly Useful New Tool from Rice University: HPCToolkit (CGO'11, ISPASS'13, hpctoolkit.org, installed at rice, UMich, etc.)˘


  • Can break cache miss latency down to each variable.
  • Latency is read at register.
  • Every 64,000th instruction (randomly - on average), latency is read.

A single instruction records what happens to it (hit or miss).

With interest, I may be able to install this on one or more CRC or physics machines.


Should be able to continue working on RubyBEAR next week after midterm and paper resubmit deadline.

Meeting Update: Monday March 4, 2013

Working on server - Rails provides an excellent framework, but comes at the cost of a steeper learning curve.

Progress Web server that displays video.

Next Include web forms to modify the Ruby module classes.

Meeting Update: Monday February 25, 2013

May have gotten VisIt plotting to work (seems to be a Mac - Linux problem that may disappear when script is run by server).

Working on writing a server - if that DOES work with the VisIt script, good. If not, then I will try alternate plotting.

Wrote Joint PhD proposal and met with Wendi Heinzelman.

Meeting Update: Monday February 4, 2013

Done:

  • Script written that
    1. Modifies module.
    2. Compiles.
    3. Runs.
    4. Plots with VisIt.
    5. Creates video of data.

Current Roadblock:

  • VisIt doesn't work with ssh -Y connection - I don't need Xwindows to work, but VisIt assumes it does and crashes.

Next:

  • Get VisIt to work via ssh.
  • Begin implementing server interface for working with this framework.

Meeting Update: Monday January 28, 2013

Have ruby framework for modifying existing module, compiling and running automatically.

Next I will learn how to write/run Visit scripts for automatic plotting.

Meeting Update: Monday January 21, 2013

  • Each class can have one instance.
  • <file>.data is written automatically when a change is made to any instance variable.
  • The instance variables will be modified by the user through a GUI or simple interface.
  • Example

Code highlighting:

#ProblemData.rb

require 'singleton'

class ProblemData
  include Singleton
  
  def self.attr_accessor(*names)
    names.each { |name|
      module_eval %Q{
        attr_reader :#{name}

        def #{name}= (value)
          @#{name} = value
          self.print
        end
      }
    }
  end

  attr_accessor :density, :pressure, :velocity

  def initialize
    @density  = 1
    @pressure = 1
    @velocity = [0,0,0]

    self.print
  end

  def print(filename="problem.data")
    File.new(filename,"w").puts %Q{
&AmbientData
density  = #{@density}
pressure = #{@pressure}
velocity = #{@velocity.join(",")}
/

    }

  end
end

Meeting Update: Monday January 14, 2013

  • Familiarized with contents of global.data (with Erica's help)
  • Thoughts for GUI
    • Choose existing module
      • Set up directory on host machine where code can be modified through web GUI
        • Compiled, run, and plotted on web host
        • Images or videos are then served to browser
  • Ruby on rails ?
  • Existing U of R "Webwork" server ?
  • Barebones server (starting from something I wrote) ?