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