I don't think it's an issue of the parsers -- what Ethan is saying is that the database is not storing the data properly. The current db schema is only setup to handle the data he mentioned. So we'd need to expand the database to include the data you're talking about (potentially a different table to hold hpl results).

On Mar 19, 2009, at 3:17 PM, 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?


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

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


--
Jeff Squyres
Cisco Systems

Reply via email to