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/Performance plug-ins)
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2009-03-20 11:39:36


Let's have a teleconf/meeting/whatever and explore the possibility of
the google data store. That might make the complexity of the database
schema issues we had for arbitrary performance data be significantly
easier...?

(perhaps I'm being too optimistic)

On Mar 20, 2009, at 10:33 AM, Josh Hursey wrote:

>
> 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.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
> >>
> >> References
> >>
> >> Visible links
> >> . http://www.netlib.org/benchmark/hpl/
> >> . mailto:ethan.mallove_at_[hidden]
> >> . mailto:miked_at_[hidden]
> >> . https://svn.open-mpi.org/trac/mtt/changeset/1273
> >> . http://postgresql.org/docs/7.4/interactive/arrays.html
> >> . mailto: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
> >
> > _______________________________________________
> > mtt-devel mailing list
> > mtt-devel_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/mtt-devel
>
> _______________________________________________
> mtt-devel mailing list
> mtt-devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-devel

-- 
Jeff Squyres
Cisco Systems