Open MPI logo

MTT Devel Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [MTT devel] [MTT svn] svn:mtt-svn r1273 (Analyze/Performance plug-ins)
From: Mike Dubman (mike.ompi_at_[hidden])
Date: 2009-03-19 15:17:29


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
>