Open MPI logo

MTT Devel Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all MTT Users mailing list

From: Jelena Pjesivac-Grbovic (pjesa_at_[hidden])
Date: 2007-09-28 13:52:06


  Yes, I tried Analyze::MPICH and that complained that it does not exist.
  Will try the other ones and see if anything happens.

  THanks,
  Jelena

> On Fri, 28 Sep 2007, Tim Mattox wrote:
>
>> This might also be a problem:
>>> [MPI install: MPICH-MX]
>>> mpi_get = mpich-mx
>>> module = MPICH2
>>
>> As far as I can tell, the install module should be something like this:
>> module = Analyze::MPICH
>>
>> But there isn't an MPICH module for that yet... there are ones for OMPI,
>> CrayMPI, HPMPI and IntelMPI.
>>
>> The Analyze::OMPI module won't work, since it will try to use ompi_info...
>> so you can lie and say it's one of the others, or... I'm trying my own
>> hacked
>> Analyze::MPICH module to see if I understand how this works.
>>
>> On 9/28/07, Ethan Mallove <ethan.mallove_at_[hidden]> wrote:
>>> Hi Jelena,
>>>
>>> Change this line:
>>>
>>> alreadyinstalled_dir = /usr/local/mpich-mx/bin
>>>
>>> To this:
>>>
>>> alreadyinstalled_dir = /usr/local/mpich-mx
>>>
>>> Does that work?
>>>
>>> -Ethan
>>>
>>>
>>> On Thu, Sep/27/2007 10:46:55PM, Jelena Pjesivac-Grbovic wrote:
>>>> Hello,
>>>>
>>>> I am trying to test the MPICH-MX using MTT on our clusters and I am
>>>> hitting
>>>> the wall.
>>>> I was able to get Open MPI to run (did not try trunk yet - but nightly
>>>> builds worked).
>>>>
>>>> The problem is that all phases seem to go through (including Test RUN and
>>>> Reported) but nothing happens.
>>>> I have attached the stripped down ini file (only with mpich-mx stuff)
>>>> and output of the command
>>>>
>>>> ./client/mtt --scratch /home/pjesa/mtt/scratch2 \
>>>> --file
>>>> /home/pjesa/mtt/collective-bakeoff/samples/ompi-core-perf-testing_mpich-mx.ini
>>>> \
>>>> --debug --verbose --print-time --no-section 'skampi imb osu'
>>>>
>>>> I think that it must be something stupid because the almost same script
>>>> which downloads nightly open mpi build works.
>>>>
>>>> Thanks!
>>>> Jelena
>>>> --
>>>> Jelena Pjesivac-Grbovic -- Pjesa, Ph.D.
>>>> Graduate Research Assistant
>>>> Innovative Computing Laboratory
>>>> Computer Science Department, UTK
>>>> Claxton Complex 350
>>>> (865) 974 - 6722 (865) 974 - 6321
>>>> jpjesiva_at_[hidden]
>>>>
>>>> "The only difference between a problem and a solution is that
>>>> people understand the solution."
>>>> -- Charles Kettering
>>>
>>> Content-Description: simplified ini file
>>>> #======================================================================
>>>> # Generic OMPI core performance testing template configuration
>>>> #======================================================================
>>>>
>>>> [MTT]
>>>> # Leave this string so that we can identify this data subset in the
>>>> # database
>>>> # OMPI Core: Use a "test" label until we're ready to run real results
>>>> description = [testbake]
>>>> #description = [2007 collective performance bakeoff]
>>>> # OMPI Core: Use the "trial" flag until we're ready to run real results
>>>> trial = 1
>>>>
>>>> # Put other values here as relevant to your environment.
>>>> #hostfile = PBS_NODEFILE
>>>> hostfile = /home/pjesa/mtt/runs/machinefile
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Lock]
>>>> # Put values here as relevant to your environment.
>>>>
>>>> #======================================================================
>>>> # MPI get phase
>>>> #======================================================================
>>>>
>>>> [MPI get: MPICH-MX]
>>>> mpi_details = MPICH-MX
>>>>
>>>> module = AlreadyInstalled
>>>> alreadyinstalled_dir = /usr/local/mpich-mx/bin
>>>> alreadyinstalled_version = 1.2.7
>>>>
>>>> #module = Download
>>>> #download_url =
>>>> http://www.myri.com/ftp/pub/MPICH-MX/mpich-mx_1.2.7..5.tar.gz
>>>> ## You need to obtain the username and password from Myricom
>>>> #download_username = <OBTAIN THIS FROM MYRICOM>
>>>> #download_password = <OBTAIN THIS FROM MYRICOM>
>>>>
>>>> #======================================================================
>>>> # Install MPI phase
>>>> #======================================================================
>>>>
>>>> #----------------------------------------------------------------------
>>>> [MPI install: MPICH-MX]
>>>> mpi_get = mpich-mx
>>>> module = MPICH2
>>>> save_stdout_on_success = 1
>>>> merge_stdout_stderr = 0
>>>>
>>>> #======================================================================
>>>> # MPI run details
>>>> #======================================================================
>>>>
>>>> [MPI Details: MPICH-MX]
>>>>
>>>> # You may need different hostfiles for running by slot/by node.
>>>> exec = mpirun --machinefile &hostfile() -np &test_np() &test_executable()
>>>> &test_argv()
>>>> network = mx
>>>>
>>>>
>>>> #======================================================================
>>>> # Test get phase
>>>> #======================================================================
>>>>
>>>> [Test get: netpipe]
>>>> module = Download
>>>> download_url =
>>>> http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test get: osu]
>>>> module = SVN
>>>> svn_url = https://svn.open-mpi.org/svn/ompi-tests/trunk/osu
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test get: imb]
>>>> module = SVN
>>>> svn_url = https://svn.open-mpi.org/svn/ompi-tests/trunk/IMB_2.3
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test get: skampi]
>>>> module = SVN
>>>> svn_url = https://svn.open-mpi.org/svn/ompi-tests/trunk/skampi-5.0.1
>>>>
>>>> #======================================================================
>>>> # Test build phase
>>>> #======================================================================
>>>>
>>>> [Test build: netpipe]
>>>> test_get = netpipe
>>>> save_stdout_on_success = 1
>>>> merge_stdout_stderr = 1
>>>> stderr_save_lines = 100
>>>>
>>>> module = Shell
>>>> shell_build_command = <<EOT
>>>> make mpi
>>>> EOT
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test build: osu]
>>>> test_get = osu
>>>> save_stdout_on_success = 1
>>>> merge_stdout_stderr = 1
>>>> stderr_save_lines = 100
>>>>
>>>> module = Shell
>>>> shell_build_command = <<EOT
>>>> make osu_latency osu_bw osu_bibw
>>>> EOT
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test build: imb]
>>>> test_get = imb
>>>> save_stdout_on_success = 1
>>>> merge_stdout_stderr = 1
>>>>
>>>> module = Shell
>>>> shell_build_command = <<EOT
>>>> cd src
>>>> make clean IMB-MPI1
>>>> EOT
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test build: skampi]
>>>> test_get = skampi
>>>> save_stdout_on_success = 1
>>>> merge_stdout_stderr = 1
>>>> stderr_save_lines = 100
>>>>
>>>> module = Shell
>>>> # Set EVERYONE_CAN_MPI_IO for HP MPI
>>>> shell_build_command = <<EOT
>>>> make CFLAGS="-O2 -DPRODUCE_SPARSE_OUTPUT -DEVERYONE_CAN_MPI_IO"
>>>> EOT
>>>>
>>>> #======================================================================
>>>> # Test Run phase
>>>> #======================================================================
>>>>
>>>> [Test run: netpipe]
>>>> test_build = netpipe
>>>> pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
>>>> # Timeout hueristic: 10 minutes
>>>> timeout = 10:00
>>>> save_stdout_on_pass = 1
>>>> # Ensure to leave this value as "-1", or performance results could be
>>>> lost!
>>>> stdout_save_lines = -1
>>>> merge_stdout_stderr = 1
>>>> np = 2
>>>> alloc = node
>>>>
>>>> specify_module = Simple
>>>> analyze_module = NetPipe
>>>>
>>>> simple_pass:tests = NPmpi
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test run: osu]
>>>> test_build = osu
>>>> pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
>>>> # Timeout hueristic: 10 minutes
>>>> timeout = 10:00
>>>> save_stdout_on_pass = 1
>>>> # Ensure to leave this value as "-1", or performance results could be
>>>> lost!
>>>> stdout_save_lines = -1
>>>> merge_stdout_stderr = 1
>>>> np = 2
>>>> alloc = node
>>>>
>>>> specify_module = Simple
>>>> analyze_module = OSU
>>>>
>>>> simple_pass:tests = osu_bw osu_latency osu_bibw
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test run: imb]
>>>> test_build = imb
>>>> pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
>>>> # Timeout hueristic: 10 minutes
>>>> timeout = 10:00
>>>> save_stdout_on_pass = 1
>>>> # Ensure to leave this value as "-1", or performance results could be
>>>> lost!
>>>> stdout_save_lines = -1
>>>> merge_stdout_stderr = 1
>>>> np = &env_max_procs()
>>>>
>>>> argv = -npmin &test_np() &enumerate("PingPong", "PingPing", "Sendrecv",
>>>> "Exchange", "Allreduce", "Reduce", "Reduce_scatter", "Allgather",
>>>> "Allgatherv", "Alltoall", "Bcast", "Barrier")
>>>>
>>>> specify_module = Simple
>>>> analyze_module = IMB
>>>>
>>>> simple_pass:tests = src/IMB-MPI1
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> [Test run: skampi]
>>>> test_build = skampi
>>>> pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
>>>> # Timeout hueristic: 10 minutes
>>>> timeout = 10:00
>>>> save_stdout_on_pass = 1
>>>> # Ensure to leave this value as "-1", or performance results could be
>>>> lost!
>>>> stdout_save_lines = -1
>>>> merge_stdout_stderr = 1
>>>> np = &env_max_procs()
>>>>
>>>> argv = -i &find("mtt_.+.ski", "input_files_bakeoff")
>>>>
>>>> specify_module = Simple
>>>> analyze_module = SKaMPI
>>>>
>>>> simple_pass:tests = skampi
>>>>
>>>> #======================================================================
>>>> # Reporter phase
>>>> #======================================================================
>>>>
>>>> [Reporter: IU database]
>>>> module = MTTDatabase
>>>>
>>>> mttdatabase_realm = OMPI
>>>> mttdatabase_url = https://www.open-mpi.org/mtt/submit/
>>>> # Change this to be the username and password for your submit user.
>>>> # Get this from the OMPI MTT administrator.
>>>> mttdatabase_username = utk
>>>> mttdatabase_password = utk0mp1mtt
>>>> # Change this to be some short string identifying your cluster.
>>>> mttdatabase_platform = grig
>>>>
>>>> mttdatabase_debug_filename = mttdb_debug_file_perf
>>>> mttdatabase_keep_debug_files = 1
>>>>
>>>> #----------------------------------------------------------------------
>>>>
>>>> # This is a backup reporter; it also writes results to a local text
>>>> # file
>>>>
>>>> [Reporter: text file backup]
>>>> module = TextFile
>>>>
>>>> textfile_filename = $phase-$section-$mpi_name-$mpi_version.txt
>>>>
>>>> textfile_summary_header = <<EOT
>>>> Hostname: &shell("hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> EOT
>>>>
>>>> textfile_summary_footer =
>>>> textfile_detail_header =
>>>> textfile_detail_footer =
>>>>
>>>> textfile_textwrap = 78
>>>
>>> Content-Description: output of the MTT command
>>>> Debug is 1, Verbose is 1
>>>> *** MTT: ./client/mtt --scratch /home/pjesa/mtt/scratch2 --file
>>>> /home/pjesa/mtt/collective-bakeoff/samples/ompi-core-perf-testing_mpich-m
>>>> x.ini --debug --verbose --print-time --no-section skampi imb osu
>>>> chdir ./client
>>>> chdir /home/pjesa/mtt/collective-bakeoff
>>>> Copying:
>>>> /home/pjesa/mtt/collective-bakeoff/samples/ompi-core-perf-testing_mpich-
>>>> mx.ini to /tmp/yy79ezjkh0.ini
>>>> Reading ini file:
>>>> /home/pjesa/mtt/collective-bakeoff/samples/ompi-core-perf-testing_mpich-
>>>> mx.ini
>>>> Validating INI inifile: /tmp/yy79ezjkh0.ini
>>>> FilterINI: regexp (section=mpi get: mpich-mx): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi get: mpich-mx): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi get: mpich-mx): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi install: mpich-mx): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi install: mpich-mx): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi install: mpich-mx): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi details: mpich-mx): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi details: mpich-mx): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=mpi details: mpich-mx): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: netpipe): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: netpipe): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: netpipe): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: osu): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: osu): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: osu): $section =~ /osu/i
>>>> FilterINI: regexp (section=test get: imb): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test get: imb): $section =~ /imb/i
>>>> FilterINI: regexp (section=test get: skampi): $section =~ /skampi/i
>>>> FilterINI: regexp (section=test build: netpipe): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: netpipe): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: netpipe): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: osu): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: osu): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: osu): $section =~ /osu/i
>>>> FilterINI: regexp (section=test build: imb): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test build: imb): $section =~ /imb/i
>>>> FilterINI: regexp (section=test build: skampi): $section =~ /skampi/i
>>>> FilterINI: regexp (section=test run: netpipe): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: netpipe): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: netpipe): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: osu): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: osu): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: osu): $section =~ /osu/i
>>>> FilterINI: regexp (section=test run: imb): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=test run: imb): $section =~ /imb/i
>>>> FilterINI: regexp (section=test run: skampi): $section =~ /skampi/i
>>>> FilterINI: regexp (section=reporter: iu database): $section =~ /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=reporter: iu database): $section =~ /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=reporter: iu database): $section =~ /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=reporter: text file backup): $section =~
>>>> /skampi/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=reporter: text file backup): $section =~
>>>> /imb/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: regexp (section=reporter: text file backup): $section =~
>>>> /osu/i
>>>> FilterINI: Delete: 0 (del on match: 1, del on mismatch: 0)
>>>> FilterINI: Final list of sections:
>>>> [mtt]
>>>> [lock]
>>>> [mpi get: mpich-mx]
>>>> [mpi install: mpich-mx]
>>>> [mpi details: mpich-mx]
>>>> [test get: netpipe]
>>>> [test build: netpipe]
>>>> [test run: netpipe]
>>>> [reporter: iu database]
>>>> [reporter: text file backup]
>>>> Scratch: /home/pjesa/mtt/scratch2
>>>> Making dir: /home/pjesa/mtt/scratch2 (cwd:
>>>> /home/pjesa/mtt/collective-bakeoff)
>>>> /home/pjesa/mtt/scratch2 does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/
>>>> chdir /home/pjesa/mtt/collective-bakeoff
>>>> Scratch resolved: /home/pjesa/mtt/scratch2
>>>> Value: force
>>>> Making dir: /home/pjesa/mtt/scratch2/sources (cwd:
>>>> /home/pjesa/mtt/scratch2)
>>>> /home/pjesa/mtt/scratch2/sources does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/sources/
>>>> chdir /home/pjesa/mtt/scratch2
>>>> Making dir: /home/pjesa/mtt/scratch2/installs (cwd:
>>>> /home/pjesa/mtt/scratch2)
>>>> /home/pjesa/mtt/scratch2/installs does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/installs/
>>>> chdir /home/pjesa/mtt/scratch2
>>>> Making dir: /home/pjesa/mtt/scratch2/test_runs (cwd:
>>>> /home/pjesa/mtt/scratch2)
>>>> /home/pjesa/mtt/scratch2/test_runs does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/test_runs/
>>>> chdir /home/pjesa/mtt/scratch2
>>>> Value: funclet_files
>>>> Value: hostfile
>>>> Evaluating: /home/pjesa/mtt/runs/machinefile
>>>> Replacing vars from section MTT: /home/pjesa/mtt/runs/machinefile
>>>> Got final version before escapes: /home/pjesa/mtt/runs/machinefile
>>>> Returning: /home/pjesa/mtt/runs/machinefile
>>>>>> Got default hostfile: /home/pjesa/mtt/runs/machinefile, max_np: 4
>>>> Value: hostlist
>>>> Value: max_np
>>>> Value: textwrap
>>>> Value: drain_timeout
>>>> Value: trim_save_successful
>>>> Value: trim_save_failed
>>>> Value: trial
>>>> Evaluating: 1
>>>> Replacing vars from section MTT: 1
>>>> Got final version before escapes: 1
>>>> Returning: 1
>>>> Value: http_proxy
>>>> Value: https_proxy
>>>> Value: ftp_proxy
>>>> Value: terminate_files
>>>> Value: before_all_exec
>>>> Value: before_all_exec_timeout
>>>> Value: before_all_exec_pass
>>>> Value: before_each_exec
>>>> Value: before_each_exec_timeout
>>>> Value: before_each_exec_pass
>>>> Value: after_all_exec
>>>> Value: after_all_exec_timeout
>>>> Value: after_all_exec_pass
>>>> Value: after_each_exec
>>>> Value: after_each_exec_timeout
>>>> Value: after_each_exec_pass
>>>> Value: module
>>>> Value: log_file
>>>> Value: logfile
>>>> *** Reporter initializing
>>>> Value: module
>>>> Evaluating: MTTDatabase
>>>> Replacing vars from section reporter: iu database: MTTDatabase
>>>> Got final version before escapes: MTTDatabase
>>>> Returning: MTTDatabase
>>>>>> Initializing reporter module: MTTDatabase
>>>> Evaluating: require MTT::Reporter::MTTDatabase
>>>> Evaluating: $ret = &MTT::Reporter::MTTDatabase::Init(@args)
>>>> Value: mttdatabase_username
>>>> Evaluating: utk
>>>> Replacing vars from section reporter: iu database: utk
>>>> Got final version before escapes: utk
>>>> Returning: utk
>>>> Value: mttdatabase_password
>>>> Evaluating: utk0mp1mtt
>>>> Replacing vars from section reporter: iu database: utk0mp1mtt
>>>> Got final version before escapes: utk0mp1mtt
>>>> Returning: utk0mp1mtt
>>>> Value: mttdatabase_url
>>>> Evaluating: https://www.open-mpi.org/mtt/submit/
>>>> Replacing vars from section reporter: iu database:
>>>> https://www.open-mpi.org/mtt/submit/
>>>> Got final version before escapes: https://www.open-mpi.org/mtt/submit/
>>>> Returning: https://www.open-mpi.org/mtt/submit/
>>>> Value: mttdatabase_realm
>>>> Evaluating: OMPI
>>>> Replacing vars from section reporter: iu database: OMPI
>>>> Got final version before escapes: OMPI
>>>> Returning: OMPI
>>>> Value: mttdatabase_email_errors_to
>>>> Value: mttdatabase_debug_filename
>>>> Evaluating: mttdb_debug_file_perf
>>>> Replacing vars from section reporter: iu database: mttdb_debug_file_perf
>>>> Got final version before escapes: mttdb_debug_file_perf
>>>> Returning: mttdb_debug_file_perf
>>>> Value: mttdatabase_keep_debug_files
>>>> Evaluating: 1
>>>> Replacing vars from section reporter: iu database: 1
>>>> Got final version before escapes: 1
>>>> Returning: 1
>>>> Value: mttdatabase_hostname
>>>> Value: local_username
>>>> Value: mttdatabase_platform
>>>> Evaluating: grig
>>>> Replacing vars from section reporter: iu database: grig
>>>> Got final version before escapes: grig
>>>> Returning: grig
>>>> Set HTTP credentials for realm "OMPI"
>>>> MTTDatabase getting a client serial number...
>>>> MTTDatabase trying proxy: / Default (none)
>>>> MTTDatabase got response:
>>>> === client_serial = 6320 ===
>>>> MTTDatabase parsed invocation serial: 6320
>>>> Making dir: /home/pjesa/mtt/scratch2/mttdatabase-submit (cwd:
>>>> /home/pjesa/mtt/scratch2)
>>>> /home/pjesa/mtt/scratch2/mttdatabase-submit does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/mttdatabase-submit/
>>>> chdir /home/pjesa/mtt/scratch2
>>>> MTTDatabase reporter writing to debug file
>>>> (/home/pjesa/mtt/scratch2/mttdatabase-submit/mttdb_debug_file_perf)
>>>> MTTDatabase reporter initialized (OMPI, utk, XXXXXX,
>>>> https://www.open-mpi.org:443/mtt/submit/, grig)
>>>> Value: module
>>>> Evaluating: TextFile
>>>> Replacing vars from section reporter: text file backup: TextFile
>>>> Got final version before escapes: TextFile
>>>> Returning: TextFile
>>>>>> Initializing reporter module: TextFile
>>>> Evaluating: require MTT::Reporter::TextFile
>>>> Evaluating: $ret = &MTT::Reporter::TextFile::Init(@args)
>>>> Value: textfile_summary_header
>>>> Evaluating: Hostname: &shell("hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> Replacing vars from section reporter: text file backup: Hostname:
>>>> &shell("hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Prefix now: Hostname:
>>>> --> Remaining (after &): shell("hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Found func name: shell
>>>> --> Found beginning of arguments: "hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Initial param search: "hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Loop: trimmed search: "hostname")
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 10)
>>>> --> Found end of arg (pos 10)
>>>> Found argument: "hostname"
>>>> --> Remainder:
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Calling: $ret = MTT::Values::Functions::shell("hostname");
>>>> &shell: got hostname
>>>> &shell: returning grig-head
>>>> --> After eval(string), remaining: grig-head
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> Replacing vars from section reporter: text file backup: grig-head
>>>> uname: &shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Prefix now: Hostname: grig-head
>>>> uname:
>>>> --> Remaining (after &): shell("uname -a")
>>>> Username: &shell("who am i")
>>>> --> Found func name: shell
>>>> --> Found beginning of arguments: "uname -a")
>>>> Username: &shell("who am i")
>>>> --> Initial param search: "uname -a")
>>>> Username: &shell("who am i")
>>>> --> Loop: trimmed search: "uname -a")
>>>> Username: &shell("who am i")
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 10)
>>>> --> Found end of arg (pos 10)
>>>> Found argument: "uname -a"
>>>> --> Remainder:
>>>> Username: &shell("who am i")
>>>> --> Calling: $ret = MTT::Values::Functions::shell("uname -a");
>>>> &shell: got uname -a
>>>> &shell: returning Linux grig-head 2.6.8 #1 SMP Fri Oct 20 17:13:21 EDT
>>>> 2006
>>>> x86_64 GNU/Linux
>>>> --> After eval(string), remaining: Linux grig-head 2.6.8 #1 SMP Fri Oct
>>>> 20
>>>> 17:13:21 EDT 2006 x86_64 GNU/Linux
>>>> Username: &shell("who am i")
>>>> Replacing vars from section reporter: text file backup: Linux grig-head
>>>> 2.6.8 #1 SMP Fri Oct 20 17:13:21 EDT 2006 x86_64 GNU/Linux
>>>> Username: &shell("who am i")
>>>> --> Prefix now: Hostname: grig-head
>>>> uname: Linux grig-head 2.6.8 #1 SMP Fri Oct 20 17:13:21 EDT 2006
>>>> x86_64
>>>> GNU/Linux
>>>> Username:
>>>> --> Remaining (after &): shell("who am i")
>>>> --> Found func name: shell
>>>> --> Found beginning of arguments: "who am i")
>>>> --> Initial param search: "who am i")
>>>> --> Loop: trimmed search: "who am i")
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 10)
>>>> --> Found end of arg (pos 10)
>>>> Found argument: "who am i"
>>>> --> Remainder:
>>>> --> Calling: $ret = MTT::Values::Functions::shell("who am i");
>>>> &shell: got who am i
>>>> &shell: returning pjesa pts/8 Sep 18 15:45 (reliant.cs.utk.edu)
>>>> --> After eval(string), remaining: pjesa pts/8 Sep 18 15:45
>>>> (reliant.cs.utk.edu)
>>>> Replacing vars from section reporter: text file backup: pjesa pts/8
>>>> Sep 18 15:45 (reliant.cs.utk.edu)
>>>> Got final version before escapes: pjesa pts/8 Sep 18 15:45
>>>> (reliant.cs.utk.edu)
>>>> Returning: Hostname: grig-head
>>>> uname: Linux grig-head 2.6.8 #1 SMP Fri Oct 20 17:13:21 EDT 2006
>>>> x86_64
>>>> GNU/Linux
>>>> Username: pjesa pts/8 Sep 18 15:45 (reliant.cs.utk.edu)
>>>> Value: textfile_summary_footer
>>>> Evaluating:
>>>> Replacing vars from section reporter: text file backup:
>>>> Got final version before escapes:
>>>> Returning:
>>>> Value: textfile_detail_header
>>>> Value: textfile_detail_footer
>>>> Value: textfile_textwrap
>>>> Evaluating: 78
>>>> Replacing vars from section reporter: text file backup: 78
>>>> Got final version before escapes: 78
>>>> Returning: 78
>>>> File reporter initialized (/home/pjesa/mtt/scratch2/)
>>>> *** Reporter initialized
>>>> Evaluating: &getenv("HOME")/mtt-stop
>>>> --> Prefix now:
>>>> --> Remaining (after &): getenv("HOME")/mtt-stop
>>>> --> Found func name: getenv
>>>> --> Found beginning of arguments: "HOME")/mtt-stop
>>>> --> Initial param search: "HOME")/mtt-stop
>>>> --> Loop: trimmed search: "HOME")/mtt-stop
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 6)
>>>> --> Found end of arg (pos 6)
>>>> Found argument: "HOME"
>>>> --> Remainder: /mtt-stop
>>>> --> Calling: $ret = MTT::Values::Functions::getenv("HOME");
>>>> &getenv(HOME) returning: /home/pjesa
>>>> --> After eval(string), remaining: /home/pjesa/mtt-stop
>>>> Got final version before escapes: /home/pjesa/mtt-stop
>>>> Returning: /home/pjesa/mtt-stop
>>>> Evaluating: &scratch_root()/mtt-stop
>>>> --> Prefix now:
>>>> --> Remaining (after &): scratch_root()/mtt-stop
>>>> --> Found func name: scratch_root
>>>> --> Found beginning of arguments: )/mtt-stop
>>>> --> Initial param search: )/mtt-stop
>>>> --> Loop: trimmed search: )/mtt-stop
>>>> --> Examining char: ) (pos 0)
>>>> --> Found end of arg (pos 0)
>>>> Found empty argument
>>>> --> Remainder: /mtt-stop
>>>> --> Calling: $ret = MTT::Values::Functions::scratch_root();
>>>> &scratch_root() returning: /home/pjesa/mtt/scratch2
>>>> --> After eval(string), remaining: /home/pjesa/mtt/scratch2/mtt-stop
>>>> Got final version before escapes: /home/pjesa/mtt/scratch2/mtt-stop
>>>> Returning: /home/pjesa/mtt/scratch2/mtt-stop
>>>> *** MPI get phase starting
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>>>> MPI get: [mpi get: mpich-mx]
>>>> Checking for new MPI sources...
>>>> Value: module
>>>> Evaluating: AlreadyInstalled
>>>> Replacing vars from section mpi get: mpich-mx: AlreadyInstalled
>>>> Got final version before escapes: AlreadyInstalled
>>>> Returning: AlreadyInstalled
>>>> Value: mpi_details
>>>> Evaluating: MPICH-MX
>>>> Replacing vars from section mpi get: mpich-mx: MPICH-MX
>>>> Got final version before escapes: MPICH-MX
>>>> Returning: MPICH-MX
>>>> Value: env_module
>>>> Value: setenv
>>>> Value: unsetenv
>>>> Value: prepend_path
>>>> Value: append_path
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>> Making dir: mpi_get__mpich-mx (cwd: /home/pjesa/mtt/scratch2/sources)
>>>> mpi_get__mpich-mx does not exist -- creating
>>>> chdir mpi_get__mpich-mx/
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>> chdir /home/pjesa/mtt/scratch2/sources/mpi_get__mpich-mx
>>>> Evaluating: require MTT::MPI::Get::AlreadyInstalled
>>>> Evaluating: $ret = &MTT::MPI::Get::AlreadyInstalled::Get(@args)
>>>> Value: alreadyinstalled_dir
>>>> Evaluating: /usr/local/mpich-mx/bin
>>>> Replacing vars from section mpi get: mpich-mx: /usr/local/mpich-mx/bin
>>>> Got final version before escapes: /usr/local/mpich-mx/bin
>>>> Returning: /usr/local/mpich-mx/bin
>>>> Using MPI in: /usr/local/mpich-mx/bin
>>>> Value: alreadyinstalled_version
>>>> Evaluating: 1.2.7
>>>> Replacing vars from section mpi get: mpich-mx: 1.2.7
>>>> Got final version before escapes: 1.2.7
>>>> Returning: 1.2.7
>>>>>> MTT::MPI::Get::AlreadyInstalled complete
>>>> Got new MPI sources: version 1.2.7
>>>> *** MPI get phase complete
>>>>>> Phase: MPI Get
>>>> Started: Thu Sep 27 22:39:37 2007
>>>> Stopped: Thu Sep 27 22:39:37 2007
>>>> Elapsed: 00:00:00
>>>> Total elapsed: 00:00:00
>>>> *** MPI install phase starting
>>>> chdir /home/pjesa/mtt/scratch2/installs
>>>>>> MPI install [mpi install: mpich-mx]
>>>> Value: mpi_get
>>>> Evaluating: mpich-mx
>>>> Replacing vars from section mpi install: mpich-mx: mpich-mx
>>>> Got final version before escapes: mpich-mx
>>>> Returning: mpich-mx
>>>> Checking for [mpich-mx] / [1.2.7] / [mpich-mx]
>>>> Installing MPI: [mpich-mx] / [1.2.7] / [mpich-mx]...
>>>> chdir /home/pjesa/mtt/scratch2/installs
>>>> Unique directory: CoY6
>>>> Making dir: CoY6 (cwd: /home/pjesa/mtt/scratch2/installs)
>>>> CoY6 does not exist -- creating
>>>> chdir CoY6/
>>>> chdir /home/pjesa/mtt/scratch2/installs
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6
>>>> Value: module
>>>> Evaluating: MPICH2
>>>> Replacing vars from section mpi install: mpich-mx: MPICH2
>>>> Got final version before escapes: MPICH2
>>>> Returning: MPICH2
>>>> Value: description
>>>> Value: description
>>>> Evaluating: [testbake]
>>>> Replacing vars from section MTT: [testbake]
>>>> Got final version before escapes: [testbake]
>>>> Returning: [testbake]
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6
>>>> chdir ..
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6
>>>> Sym linked: CoY6 to mpich-mx#mpich-mx#1.2.7
>>>> Value: env_module
>>>> Value: setenv
>>>> Value: unsetenv
>>>> Value: prepend_path
>>>> Value: append_path
>>>> Value: configure_arguments
>>>> Value: vpath_mode
>>>> Value: make_all_arguments
>>>> Value: make_check
>>>> Value: compiler_name
>>>> Value: compiler_version
>>>> Value: save_stdout_on_success
>>>> Evaluating: 1
>>>> Replacing vars from section mpi install: mpich-mx: 1
>>>> Got final version before escapes: 1
>>>> Returning: 1
>>>> Value: merge_stdout_stderr
>>>> Evaluating: 0
>>>> Replacing vars from section mpi install: mpich-mx: 0
>>>> Got final version before escapes: 0
>>>> Returning: 0
>>>> Value: stderr_save_lines
>>>> Value: stdout_save_lines
>>>> Running command: rm -rf src
>>>> Command complete, exit status: 0
>>>> Making dir: src (cwd: /home/pjesa/mtt/scratch2/installs/CoY6)
>>>> src does not exist -- creating
>>>> chdir src/
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6/src
>>>> Evaluating: require MTT::MPI::Get::AlreadyInstalled
>>>> Evaluating: $ret =
>>>> &MTT::MPI::Get::AlreadyInstalled::PrepareForInstall(@args)
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6/src
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6/src
>>>> Making dir: /home/pjesa/mtt/scratch2/installs/CoY6/install (cwd:
>>>> /home/pjesa/mtt/scratch2/installs/CoY6/src)
>>>> /home/pjesa/mtt/scratch2/installs/CoY6/install does not exist -- creating
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6/install/
>>>> chdir /home/pjesa/mtt/scratch2/installs/CoY6/src
>>>> Evaluating: require MTT::MPI::Install::MPICH2
>>>> Evaluating: $ret = &MTT::MPI::Install::MPICH2::Install(@args)
>>>> Value: mpich2_make_all_arguments
>>>> Value: mpich2_compiler_name
>>>> Value: bitness
>>>> Evaluating: &get_mpi_install_bitness("")
>>>> --> Prefix now:
>>>> --> Remaining (after &): get_mpi_install_bitness("")
>>>> --> Found func name: get_mpi_install_bitness
>>>> --> Found beginning of arguments: "")
>>>> --> Initial param search: "")
>>>> --> Loop: trimmed search: "")
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 2)
>>>> --> Found end of arg (pos 2)
>>>> Found argument: ""
>>>> --> Remainder:
>>>> --> Calling: $ret = MTT::Values::Functions::get_mpi_install_bitness("");
>>>> &get_mpi_intall_bitness
>>>> &_find_libmpi returning:
>>>> Couldn't find libmpi!
>>>> --> After eval(string), remaining: 0
>>>> Got final version before escapes: 0
>>>> Returning: 0
>>>> Value: endian
>>>> Evaluating: &get_mpi_install_endian("")
>>>> --> Prefix now:
>>>> --> Remaining (after &): get_mpi_install_endian("")
>>>> --> Found func name: get_mpi_install_endian
>>>> --> Found beginning of arguments: "")
>>>> --> Initial param search: "")
>>>> --> Loop: trimmed search: "")
>>>> --> Examining char: " (pos 0)
>>>> --> Found beginning quote
>>>> --> Found last quote
>>>> --> Examining char: ) (pos 2)
>>>> --> Found end of arg (pos 2)
>>>> Found argument: ""
>>>> --> Remainder:
>>>> --> Calling: $ret = MTT::Values::Functions::get_mpi_install_endian("");
>>>> &get_mpi_intall_endian
>>>> &_find_libmpi returning:
>>>> *** Could not find libmpi to calculate endian-ness
>>>> --> After eval(string), remaining: 0
>>>> Got final version before escapes: 0
>>>> Returning: 0
>>>> Found whatami: /home/pjesa/mtt/collective-bakeoff/client/whatami/whatami
>>>> Value: platform_type
>>>> Value: platform_type
>>>> Value: platform_hardware
>>>> Value: platform_hardware
>>>> Value: os_name
>>>> Value: os_name
>>>> Value: os_version
>>>> Value: os_version
>>>> Skipped MPI install
>>>> *** MPI install phase complete
>>>>>> Phase: MPI Install
>>>> Started: Thu Sep 27 22:39:37 2007
>>>> Stopped: Thu Sep 27 22:39:38 2007
>>>> Elapsed: 00:00:01
>>>> Total elapsed: 00:00:01
>>>> *** Test get phase starting
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>>>> Test get: [test get: netpipe]
>>>> Checking for new test sources...
>>>> Value: module
>>>> Evaluating: Download
>>>> Replacing vars from section test get: netpipe: Download
>>>> Got final version before escapes: Download
>>>> Returning: Download
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>> Making dir: test_get__netpipe (cwd: /home/pjesa/mtt/scratch2/sources)
>>>> test_get__netpipe does not exist -- creating
>>>> chdir test_get__netpipe/
>>>> chdir /home/pjesa/mtt/scratch2/sources
>>>> chdir /home/pjesa/mtt/scratch2/sources/test_get__netpipe
>>>> Evaluating: require MTT::Test::Get::Download
>>>> Evaluating: $ret = &MTT::Test::Get::Download::Get(@args)
>>>> Value: download_url
>>>> Evaluating: http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> Replacing vars from section test get: netpipe:
>>>> http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> Got final version before escapes:
>>>> http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> Returning: http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>>>> Download got url:
>>>> http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> Value: download_username
>>>> Value: download_password
>>>>>> MTT::FindProgram::FindProgram returning /usr/bin/wget
>>>> Running command: wget -nv
>>>> http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> OUT:22:39:55
>>>> URL:http://www.scl.ameslab.gov/netpipe/code/NetPIPE_3.6.2.tar.gz
>>>> [369585/369585] -> "NetPIPE_3.6.2.tar.gz" [1]
>>>> Command complete, exit status: 0
>>>> Value: download_version
>>>>>> Download complete
>>>> Got new test sources
>>>> *** Test get phase complete
>>>>>> Phase: Test Get
>>>> Started: Thu Sep 27 22:39:38 2007
>>>> Stopped: Thu Sep 27 22:39:55 2007
>>>> Elapsed: 00:00:17
>>>> Total elapsed: 00:00:18
>>>> *** Test build phase starting
>>>> chdir /home/pjesa/mtt/scratch2/installs
>>>>>> Test build [test build: netpipe]
>>>> Value: test_get
>>>> Evaluating: netpipe
>>>> Replacing vars from section test build: netpipe: netpipe
>>>> Got final version before escapes: netpipe
>>>> Returning: netpipe
>>>> *** Test build phase complete
>>>>>> Phase: Test Build
>>>> Started: Thu Sep 27 22:39:55 2007
>>>> Stopped: Thu Sep 27 22:39:55 2007
>>>> Elapsed: 00:00:00
>>>> Total elapsed: 00:00:18
>>>> *** Run test phase starting
>>>>>> Test run [netpipe]
>>>> Value: test_build
>>>> Evaluating: netpipe
>>>> Replacing vars from section test run: netpipe: netpipe
>>>> Got final version before escapes: netpipe
>>>> Returning: netpipe
>>>> *** Run test phase complete
>>>>>> Phase: Test Run
>>>> Started: Thu Sep 27 22:39:55 2007
>>>> Stopped: Thu Sep 27 22:39:55 2007
>>>> Elapsed: 00:00:00
>>>> Total elapsed: 00:00:18
>>>>>> Phase: Trim
>>>> Started: Thu Sep 27 22:39:55 2007
>>>> Stopped: Thu Sep 27 22:39:55 2007
>>>> Elapsed: 00:00:00
>>>> Total elapsed: 00:00:18
>>>> *** Reporter finalizing
>>>> Evaluating: require MTT::Reporter::MTTDatabase
>>>> Evaluating: $ret = &MTT::Reporter::MTTDatabase::Finalize(@args)
>>>> Evaluating: require MTT::Reporter::TextFile
>>>> Evaluating: $ret = &MTT::Reporter::TextFile::Finalize(@args)
>>>> *** Reporter finalized
>>>
>>>> _______________________________________________
>>>> mtt-users mailing list
>>>> mtt-users_at_[hidden]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
>>>
>>> _______________________________________________
>>> mtt-users mailing list
>>> mtt-users_at_[hidden]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
>>>
>>
>>
>> --
>> Tim Mattox, Ph.D. - http://homepage.mac.com/tmattox/
>> tmattox_at_[hidden] || timattox_at_[hidden]
>> I'm a bright... http://www.the-brights.net/
>> _______________________________________________
>> mtt-users mailing list
>> mtt-users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
>>
>
> --
> Jelena Pjesivac-Grbovic -- Pjesa, Ph.D.
> Graduate Research Assistant
> Innovative Computing Laboratory
> Computer Science Department, UTK
> Claxton Complex 350
> (865) 974 - 6722 (865) 974 - 6321
> jpjesiva_at_[hidden]
>
> "The only difference between a problem and a solution is that
> people understand the solution."
> -- Charles Kettering
>
>

--
Jelena Pjesivac-Grbovic -- Pjesa, Ph.D.
Graduate Research Assistant
Innovative Computing Laboratory
Computer Science Department, UTK
Claxton Complex 350
(865) 974 - 6722 
(865) 974 - 6321
jpjesiva_at_[hidden]
"The only difference between a problem and a solution is that
  people understand the solution."
                                       -- Charles Kettering