Open MPI logo

MTT Devel Mailing List Archives

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

Subject: Re: [MTT devel] [MTT svn] svn:mtt-svn r1273 (Analyze/Performanceplug-ins)
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2009-03-19 16:50:12


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.mallove_at_[hidden]> 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, miked_at_[hidden] 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-svn_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/mtt-svn
>
> _______________________________________________
> mtt-devel mailing list
> mtt-devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-devel

-- 
Jeff Squyres
Cisco Systems