A while back we designed what needed to happen on the database side to support arbitrary performance data (we were thinking about Skampi at the time, I believe). The only documentation that I could find of this discussion is in the DB schema diagram: https://svn.open-mpi.org/trac/mtt/browser/trunk/docs/sql-schema- v3.pdf

On the right-hand side, we currently implement the 'latency_bandwidth' table. We would like to move to the 'performance_data' table which would encode any performance data that can be represented in a 3 dimensional space

If someone wanted to go down the path of converting the performance representation, I can probably dig out some more notes on what we were thinking at the time of this design.

Best,
Josh

On Mar 20, 2009, at 9:49 AM, Ethan Mallove wrote:

On Thu, Mar/19/2009 09:17:29PM, Mike Dubman wrote:
   Hello Eithan,
   Thanks for info, will refactor it.

   from http://www.netlib.org/benchmark/hpl/

   ...
   HPL is a software package that solves a (random) dense linear
   system in double precision (64 bits) arithmetic on
   distributed-memory computers. It can thus be regarded as a
   portable as well as freely available implementation of the High
   Performance Computing Linpack Benchmark.

   The HPL package provides a testing and timing program to quantify
   the accuracy of the obtained solution as well as the time it took
   to compute it
   ...

   Where do you think is a good place to keep parsers for other then
   lat/bw based mpi benchmarks? I think we can have a collection of
   such parsers in the mtt and at some point we can enhance mtt
   reports with other metrics.

   What do you think?

Sounds like a nice enhancement.  I think just assigning this parser
its own "test_type" will be helpful for now (and I have no thoughts on
what to call it).  When the server-side submit PHP script is ready to
handle non-latency/bandwidth test data, we can split out the
client-side Analyze/Performance directory.

-Ethan



On Thu, Mar 19, 2009 at 8:22 PM, Ethan Mallove <ethan.mall...@sun.com>
   wrote:

     Hi Mike,

Is HPL a latency and/or bandwidth performance test? *All the Analyze plug-ins in lib/MTT/Test/Analyze/Performance are for latency/ bandwidth tests, which means they can then be rendered as graphs in the MTT Reporter. *All of these plug-ins are required to output at least one
     of the following:

     *latency_avg
     *latency_min
     *latency_max
     *bandwidth_avg
     *bandwidth_min
     *bandwidth_max

     They all contain this:

     *$report->{test_type} = 'latency_bandwidth';

     HPL.pm should have a line like this somewhere:

     *$report->{test_type} = 'tv_gflops';

Maybe HPL.pm could go into a different directory or have a comment
     somewhere to clear up this confusion.

     Regards,
     Ethan

     On Thu, Mar/19/2009 02:11:05AM, mi...@osl.iu.edu wrote:
Author: miked
Date: 2009-03-19 02:11:04 EDT (Thu, 19 Mar 2009)
New Revision: 1273
URL: https://svn.open-mpi.org/trac/mtt/changeset/1273

Log:
HPL analyzer added

Added:
* *trunk/lib/MTT/Test/Analyze/Performance/HPL.pm

Added: trunk/lib/MTT/Test/Analyze/Performance/HPL.pm

===================================================================== =========
--- (empty file)
+++ trunk/lib/MTT/Test/Analyze/Performance/HPL.pm * * 2009-03-19
     02:11:04 EDT (Thu, 19 Mar 2009)
@@ -0,0 +1,63 @@
+#!/usr/bin/env perl
+#
+# Copyright (c) 2006-2007 Sun Microsystems, Inc. *All rights
     reserved.
+# Copyright (c) 2007 * * *Voltaire *All rights reserved.
+# $COPYRIGHT$
+#
+# Additional copyrights may follow
+#
+# $HEADER$
+#
+
+package MTT::Test::Analyze::Performance::HPL;
+use strict;
+use Data::Dumper;
+#use MTT::Messages;
+
+# Process the result_stdout emitted from one of hpl tests
+sub Analyze {
+
+ * *my($result_stdout) = @_;
+ * *my $report;
+ * *my(@t_v,
+ * * * @time,
+ * * * @gflops);
+
+$report->{test_name}="HPL";
+ * *my @lines = split(/\n|\r/, $result_stdout);
+ * *# Sample result_stdout:
+#- The matrix A is randomly generated for each test.
+#- The following scaled residual check will be computed:
+# * * *||Ax-b||_oo / ( eps * ( || x ||_oo * || A ||_oo + || b || _oo )
     * N )
+#- The relative machine precision (eps) is taken to be * * * * * * *
     1.110223e-16
+#- Computational tests pass if scaled residuals are less than * * * *
     * * * *16.0

+#=================================================================== =============
+#T/V * * * * * * * *N * *NB * * P * * Q * * * * * * * Time * * * * *
     * * * Gflops

+#------------------------------------------------------------------- -------------
+#WR00L2L2 * * * 29184 * 128 * * 2 * * 4 * * * * * 15596.86 * * * * *
     * *1.063e+00

+#------------------------------------------------------------------- -------------
+#||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)= * * * *0.0008986
     ...... PASSED

+#=================================================================== =============
+#T/V * * * * * * * *N * *NB * * P * * Q * * * * * * * Time * * * * *
     * * * Gflops

+#------------------------------------------------------------------- -------------
+#WR00L2L4 * * * 29184 * 128 * * 2 * * 4 * * * * * 15251.81 * * * * *
     * *1.087e+00
+ * *my $line;
+ * *while (defined($line = shift(@lines))) {
+ * * * *#WR00L2L2 * * * 29184 * 128 * * 2 * * 4 * * * * * 15596.86 *
     * * * * * *1.063e+00
+ * * * *if ($line =~
     m/^(\S+)\s+\d+\s+\d+\s+\d+\s+\d+\s+(\d+[\.\d]+)\s+(\S+)/) {
+ * * * * * *push(@t_v, $1);
+ * * * * * *push(@time, $2);
+ * * * * * *push(@gflops, $3);
+ * * * *}
+ * *}
+
+ * * *# Postgres uses brackets for array insertion
+ * *# (see postgresql.org/docs/7.4/interactive/arrays.html)
+ * *$report->{tv} * = "{" . join(",", @t_v) . "}";
+ * *$report->{time} * = "{" . join(",", @time) . "}";
+ * *$report->{gflops} * = "{" . join(",", @gflops) . "}";
+ * *return $report;
+}
+
+1;
+
_______________________________________________
mtt-svn mailing list
mtt-...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/mtt-svn

References

   Visible links
   . http://www.netlib.org/benchmark/hpl/
   . mailto:ethan.mall...@sun.com
   . mailto:mi...@osl.iu.edu
   . https://svn.open-mpi.org/trac/mtt/changeset/1273
   . http://postgresql.org/docs/7.4/interactive/arrays.html
   . mailto:mtt-...@open-mpi.org
   . http://www.open-mpi.org/mailman/listinfo.cgi/mtt-svn

_______________________________________________
mtt-devel mailing list
mtt-de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/mtt-devel

_______________________________________________
mtt-devel mailing list
mtt-de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/mtt-devel

Reply via email to