public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/auto-numerical-bench:master commit in: numbench/, /
@ 2011-08-16 23:38 Andrea Arteaga
  0 siblings, 0 replies; 4+ messages in thread
From: Andrea Arteaga @ 2011-08-16 23:38 UTC (permalink / raw
  To: gentoo-commits

commit:     ac98fd2e6892cfd0a7f44ef7756d5545a62d530a
Author:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
AuthorDate: Tue Aug 16 23:24:47 2011 +0000
Commit:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
CommitDate: Tue Aug 16 23:24:47 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/auto-numerical-bench.git;a=commit;h=ac98fd2e

Added distutils setup.py and package numbench.

---
 PortageUtils.py => numbench/PortageUtils.py       |    0
 numbench/__init__.py                              |    1 +
 basemodule.py => numbench/basemodule.py           |    0
 benchconfig.py => numbench/benchconfig.py         |    6 +++++-
 benchpkgconfig.py => numbench/benchpkgconfig.py   |    0
 benchprint.py => numbench/benchprint.py           |    0
 benchutils.py => numbench/benchutils.py           |    0
 blas.py => numbench/blas.py                       |    0
 blas_accuracy.py => numbench/blas_accuracy.py     |    0
 blasbase.py => numbench/blasbase.py               |    0
 btlbase.py => numbench/btlbase.py                 |    0
 cblas.py => numbench/cblas.py                     |    0
 fftw.py => numbench/fftw.py                       |    0
 htmlreport.py => numbench/htmlreport.py           |    0
 lapack.py => numbench/lapack.py                   |    0
 lapack_accuracy.py => numbench/lapack_accuracy.py |    0
 main.py => numbench/main.py                       |    0
 metis.py => numbench/metis.py                     |    0
 scalapack.py => numbench/scalapack.py             |    0
 testdescr.py => numbench/testdescr.py             |    0
 setup.py                                          |   12 ++++++++++++
 21 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/PortageUtils.py b/numbench/PortageUtils.py
similarity index 100%
rename from PortageUtils.py
rename to numbench/PortageUtils.py

diff --git a/numbench/__init__.py b/numbench/__init__.py
new file mode 100644
index 0000000..8d1c8b6
--- /dev/null
+++ b/numbench/__init__.py
@@ -0,0 +1 @@
+ 

diff --git a/basemodule.py b/numbench/basemodule.py
similarity index 100%
rename from basemodule.py
rename to numbench/basemodule.py

diff --git a/benchconfig.py b/numbench/benchconfig.py
similarity index 96%
rename from benchconfig.py
rename to numbench/benchconfig.py
index 6769e8d..ede97ef 100644
--- a/benchconfig.py
+++ b/numbench/benchconfig.py
@@ -12,7 +12,11 @@ except NameError:
 
 if needsinitialization:
     isroot = os.getuid() == 0
-    modname = sys.argv[1]
+    
+    try:
+        modname = sys.argv[1]
+    except:
+        modname = ''
     
     # Script directories
     curdir = os.path.abspath('.')

diff --git a/benchpkgconfig.py b/numbench/benchpkgconfig.py
similarity index 100%
rename from benchpkgconfig.py
rename to numbench/benchpkgconfig.py

diff --git a/benchprint.py b/numbench/benchprint.py
similarity index 100%
rename from benchprint.py
rename to numbench/benchprint.py

diff --git a/benchutils.py b/numbench/benchutils.py
similarity index 100%
rename from benchutils.py
rename to numbench/benchutils.py

diff --git a/blas.py b/numbench/blas.py
similarity index 100%
rename from blas.py
rename to numbench/blas.py

diff --git a/blas_accuracy.py b/numbench/blas_accuracy.py
similarity index 100%
rename from blas_accuracy.py
rename to numbench/blas_accuracy.py

diff --git a/blasbase.py b/numbench/blasbase.py
similarity index 100%
rename from blasbase.py
rename to numbench/blasbase.py

diff --git a/btlbase.py b/numbench/btlbase.py
similarity index 100%
rename from btlbase.py
rename to numbench/btlbase.py

diff --git a/cblas.py b/numbench/cblas.py
similarity index 100%
rename from cblas.py
rename to numbench/cblas.py

diff --git a/fftw.py b/numbench/fftw.py
similarity index 100%
rename from fftw.py
rename to numbench/fftw.py

diff --git a/htmlreport.py b/numbench/htmlreport.py
similarity index 100%
rename from htmlreport.py
rename to numbench/htmlreport.py

diff --git a/lapack.py b/numbench/lapack.py
similarity index 100%
rename from lapack.py
rename to numbench/lapack.py

diff --git a/lapack_accuracy.py b/numbench/lapack_accuracy.py
similarity index 100%
rename from lapack_accuracy.py
rename to numbench/lapack_accuracy.py

diff --git a/main.py b/numbench/main.py
similarity index 100%
rename from main.py
rename to numbench/main.py

diff --git a/metis.py b/numbench/metis.py
similarity index 100%
rename from metis.py
rename to numbench/metis.py

diff --git a/scalapack.py b/numbench/scalapack.py
similarity index 100%
rename from scalapack.py
rename to numbench/scalapack.py

diff --git a/testdescr.py b/numbench/testdescr.py
similarity index 100%
rename from testdescr.py
rename to numbench/testdescr.py

diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..d7a98a1
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python
+
+from distutils.core import setup
+
+setup(name='Numbench',
+      version='1.0',
+      description='Numerical benchmarks for Gentoo',
+      author='Andrea Arteaga',
+      author_email='andyspiros@gmail.com',
+      url='http://git.overlays.gentoo.org/gitweb/?p=proj/auto-numerical-bench.git',
+      packages=['numbench'],
+     )
\ No newline at end of file



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/auto-numerical-bench:master commit in: numbench/, /
@ 2011-08-21 18:12 Andrea Arteaga
  0 siblings, 0 replies; 4+ messages in thread
From: Andrea Arteaga @ 2011-08-21 18:12 UTC (permalink / raw
  To: gentoo-commits

commit:     20e6a3d7c29f9be4b908078fa8739a5f0f8de92d
Author:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
AuthorDate: Sun Aug 21 18:12:34 2011 +0000
Commit:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
CommitDate: Sun Aug 21 18:12:34 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/auto-numerical-bench.git;a=commit;h=20e6a3d7

Solved bug when -N is not specified.

---
 numbench/btlbase.py |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/exec.py b/exec.py
old mode 100644
new mode 100755

diff --git a/numbench/btlbase.py b/numbench/btlbase.py
index 8e2e1e1..26b50f4 100644
--- a/numbench/btlbase.py
+++ b/numbench/btlbase.py
@@ -39,6 +39,8 @@ class BTLBase(basemodule.BaseModule):
     
 class BTLTest(basemodule.BaseTest):
     
+    N = None
+    
     def _compileTest(self):
         self.compileenv = {}
         self.runenv = {}



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/auto-numerical-bench:master commit in: numbench/, /
@ 2011-08-22 18:02 Andrea Arteaga
  0 siblings, 0 replies; 4+ messages in thread
From: Andrea Arteaga @ 2011-08-22 18:02 UTC (permalink / raw
  To: gentoo-commits

commit:     587860cfcdc6845385bc89a7e49bca90caaff4a1
Author:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
AuthorDate: Mon Aug 22 18:01:02 2011 +0000
Commit:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
CommitDate: Mon Aug 22 18:01:02 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/auto-numerical-bench.git;a=commit;h=587860cf

Added copyright notice.

---
 exec.py                     |   19 +++++++++++++++++++
 numbench/PortageUtils.py    |   17 +++++++++++++++++
 numbench/basemodule.py      |   17 +++++++++++++++++
 numbench/benchchilds.py     |   17 +++++++++++++++++
 numbench/benchconfig.py     |   17 +++++++++++++++++
 numbench/benchload.py       |   17 +++++++++++++++++
 numbench/benchpkgconfig.py  |   17 +++++++++++++++++
 numbench/benchprint.py      |   17 +++++++++++++++++
 numbench/benchutils.py      |   17 +++++++++++++++++
 numbench/blas.py            |   17 +++++++++++++++++
 numbench/blas_accuracy.py   |   17 +++++++++++++++++
 numbench/blasbase.py        |   17 +++++++++++++++++
 numbench/btlbase.py         |   17 +++++++++++++++++
 numbench/cblas.py           |   17 +++++++++++++++++
 numbench/fftw.py            |   17 +++++++++++++++++
 numbench/htmlreport.py      |   17 +++++++++++++++++
 numbench/lapack.py          |   17 +++++++++++++++++
 numbench/lapack_accuracy.py |   17 +++++++++++++++++
 numbench/main.py            |   18 ++++++++++++++++++
 numbench/metis.py           |   17 +++++++++++++++++
 numbench/scalapack.py       |   17 +++++++++++++++++
 numbench/testdescr.py       |   17 +++++++++++++++++
 setup.py                    |   18 ++++++++++++++++++
 23 files changed, 395 insertions(+), 0 deletions(-)

diff --git a/exec.py b/exec.py
index cb4d1eb..c3b7eda 100755
--- a/exec.py
+++ b/exec.py
@@ -1,2 +1,21 @@
 #!/usr/bin/python2
+
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+
 import numbench.main
\ No newline at end of file

diff --git a/numbench/PortageUtils.py b/numbench/PortageUtils.py
index 0aad4b1..f4f6d64 100644
--- a/numbench/PortageUtils.py
+++ b/numbench/PortageUtils.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import commands as cmd
 import subprocess as sp
 import os, portage, shlex

diff --git a/numbench/basemodule.py b/numbench/basemodule.py
index 332e528..bf55981 100644
--- a/numbench/basemodule.py
+++ b/numbench/basemodule.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 from os.path import join as pjoin, basename, dirname
 import subprocess as sp
 import shlex, os

diff --git a/numbench/benchchilds.py b/numbench/benchchilds.py
index 87e9ac9..1686639 100644
--- a/numbench/benchchilds.py
+++ b/numbench/benchchilds.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 try:
     copy = procs
     del copy

diff --git a/numbench/benchconfig.py b/numbench/benchconfig.py
index f5f30d4..865dfcc 100644
--- a/numbench/benchconfig.py
+++ b/numbench/benchconfig.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import sys, os, time
 from os.path import join as pjoin
 import subprocess as sp

diff --git a/numbench/benchload.py b/numbench/benchload.py
index f226656..8363862 100644
--- a/numbench/benchload.py
+++ b/numbench/benchload.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import sys, shlex, threading, time, subprocess as sp
 
 class PrintLoad(threading.Thread):

diff --git a/numbench/benchpkgconfig.py b/numbench/benchpkgconfig.py
index 69fddf6..9051cb4 100644
--- a/numbench/benchpkgconfig.py
+++ b/numbench/benchpkgconfig.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os
 from os.path import join as pjoin, basename, dirname, exists
 import subprocess as sp

diff --git a/numbench/benchprint.py b/numbench/benchprint.py
index beb6fe8..3f3e577 100644
--- a/numbench/benchprint.py
+++ b/numbench/benchprint.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 try:
     needsinitialization = not initialized
 except NameError:

diff --git a/numbench/benchutils.py b/numbench/benchutils.py
index a15d9c3..1018d72 100644
--- a/numbench/benchutils.py
+++ b/numbench/benchutils.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, sys, shutil, string, random
 import subprocess as sp
 

diff --git a/numbench/blas.py b/numbench/blas.py
index f6193ef..afdaa19 100644
--- a/numbench/blas.py
+++ b/numbench/blas.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import blasbase
 
 class Module(blasbase.BLASBase):

diff --git a/numbench/blas_accuracy.py b/numbench/blas_accuracy.py
index de90ffa..9996b89 100644
--- a/numbench/blas_accuracy.py
+++ b/numbench/blas_accuracy.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import subprocess as sp
 import shlex, os
 from os.path import join as pjoin

diff --git a/numbench/blasbase.py b/numbench/blasbase.py
index f7c1d33..c08987f 100644
--- a/numbench/blasbase.py
+++ b/numbench/blasbase.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, btlbase
 import subprocess as sp
 import shlex

diff --git a/numbench/btlbase.py b/numbench/btlbase.py
index 26b50f4..5fac13a 100644
--- a/numbench/btlbase.py
+++ b/numbench/btlbase.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import sys, os, shlex
 import subprocess as sp
 from os.path import join as pjoin

diff --git a/numbench/cblas.py b/numbench/cblas.py
index c78867c..ad33663 100644
--- a/numbench/cblas.py
+++ b/numbench/cblas.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import blasbase
 
 class Module(blasbase.BLASBase):

diff --git a/numbench/fftw.py b/numbench/fftw.py
index 8d583b5..ec30508 100644
--- a/numbench/fftw.py
+++ b/numbench/fftw.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, btlbase
 
 class Module(btlbase.BTLBase):

diff --git a/numbench/htmlreport.py b/numbench/htmlreport.py
index 212b88b..a42f579 100644
--- a/numbench/htmlreport.py
+++ b/numbench/htmlreport.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import time
 from os.path import join as pjoin, basename
 

diff --git a/numbench/lapack.py b/numbench/lapack.py
index 2f48150..f440903 100644
--- a/numbench/lapack.py
+++ b/numbench/lapack.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, btlbase
 import subprocess as sp
 import shlex

diff --git a/numbench/lapack_accuracy.py b/numbench/lapack_accuracy.py
index 5e3d4c1..f4737c0 100644
--- a/numbench/lapack_accuracy.py
+++ b/numbench/lapack_accuracy.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import subprocess as sp
 import shlex, os
 from os.path import join as pjoin

diff --git a/numbench/main.py b/numbench/main.py
index f0fe489..e0f5857 100755
--- a/numbench/main.py
+++ b/numbench/main.py
@@ -1,5 +1,23 @@
 #! /usr/bin/env python2
 
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+
 import os, sys, signal, shlex, shutil, time
 from os.path import join as pjoin
 import subprocess as sp

diff --git a/numbench/metis.py b/numbench/metis.py
index 8e6940f..aad3e68 100644
--- a/numbench/metis.py
+++ b/numbench/metis.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, shlex, numpy as np, subprocess as sp
 from os.path import realpath, exists as pexists, join as pjoin
 from random import randint

diff --git a/numbench/scalapack.py b/numbench/scalapack.py
index 827417a..c639ef9 100644
--- a/numbench/scalapack.py
+++ b/numbench/scalapack.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 import os, btlbase, shlex, subprocess as sp
 
 numproc = 4

diff --git a/numbench/testdescr.py b/numbench/testdescr.py
index 1185c01..3db919b 100644
--- a/numbench/testdescr.py
+++ b/numbench/testdescr.py
@@ -1,3 +1,20 @@
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
 testdescr = {
 # (C)BLAS
 'axpy' : 'y = a*x + y',

diff --git a/setup.py b/setup.py
index d7a98a1..d850b17 100644
--- a/setup.py
+++ b/setup.py
@@ -1,5 +1,23 @@
 #!/usr/bin/env python
 
+#=====================================================
+# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
+#=====================================================
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+
 from distutils.core import setup
 
 setup(name='Numbench',



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/auto-numerical-bench:master commit in: numbench/, /
@ 2012-02-28 12:05 Andrea Arteaga
  0 siblings, 0 replies; 4+ messages in thread
From: Andrea Arteaga @ 2012-02-28 12:05 UTC (permalink / raw
  To: gentoo-commits

commit:     d6e2443b1bf4bac6e9ec836f6155d9d26e0a0d48
Author:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
AuthorDate: Tue Feb 28 12:03:41 2012 +0000
Commit:     Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
CommitDate: Tue Feb 28 12:03:41 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/auto-numerical-bench.git;a=commit;h=d6e2443b

Removed useless files and deprecated modules.

---
 cblastests.in               |   12 --
 fftwtests.in                |    5 -
 lapacktests.in              |    9 --
 numbench/basemodule.py      |  287 -------------------------------------------
 numbench/benchchilds.py     |   30 -----
 numbench/blas.py            |   23 ----
 numbench/blas_accuracy.py   |  164 ------------------------
 numbench/blasbase.py        |   82 ------------
 numbench/btlbase.py         |  194 -----------------------------
 numbench/cblas.py           |   23 ----
 numbench/fftw.py            |   86 -------------
 numbench/lapack.py          |   70 -----------
 numbench/lapack_accuracy.py |  169 -------------------------
 numbench/metis.py           |  184 ---------------------------
 numbench/scalapack.py       |   88 -------------
 15 files changed, 0 insertions(+), 1426 deletions(-)

diff --git a/cblastests.in b/cblastests.in
deleted file mode 100644
index 670ddc4..0000000
--- a/cblastests.in
+++ /dev/null
@@ -1,12 +0,0 @@
-# Testing different implementations of CBLAS
-
-# cblas-reference is a wrapper for blas: test this with different blas implementations
-reference-eigen sci-libs/cblas-reference-20110218 blas:eigen
-reference-openblas sci-libs/cblas-reference-20110218 blas:openblas-threads
-reference-acml sci-libs/cblas-reference-20110218 blas:acml64-gfortran
-
-# Other implementations are not wrappers
-# Test them using gcc-4.6.1 and enabling vectorization
-gsl gsl-1.15-r1 CC=gcc-4.6.1 CFLAGS="-O3 -pipe -march=native -msse3 -msse4.1 -msse4.2"
-goto sci-libs/gotoblas2-1.13 CC=gcc-4.6.1 CFLAGS="-O3 -pipe -march=native -msse3 -msse4.1 -msse4.2" USE=incblas TARGET=NEHALEM
-openblas sci-libs/openblas CC=gcc-4.6.1 CFLAGS="-O3 -pipe -march=native -msse3 -msse4.1 -msse4.2" USE=incblas TARGET=NEHALEM
\ No newline at end of file

diff --git a/fftwtests.in b/fftwtests.in
deleted file mode 100644
index 04a905d..0000000
--- a/fftwtests.in
+++ /dev/null
@@ -1,5 +0,0 @@
-# Testing FFTW with different gcc versions and enabling vectorization
-
-gcc-4.6.1 sci-libs/fftw-3.2.2-r1 CC=gcc-4.6.1 CFLAGS="-O3 -march=native -msse2 -msse3 -mssse3 -msse4.1 -msse4.2"
-gcc-4.5.2 sci-libs/fftw-3.2.2-r1 CC=gcc-4.5.2 CFLAGS="-O3 -march=native -msse2 -msse3 -mssse3 -msse4.1 -msse4.2"
-gcc-4.3.6 sci-libs/fftw-3.2.2-r1 CC=gcc-4.3.6 CFLAGS="-O3 -march=native -msse2 -msse3 -mssse3 -msse4.1 -msse4.2"
\ No newline at end of file

diff --git a/lapacktests.in b/lapacktests.in
deleted file mode 100644
index f427ebb..0000000
--- a/lapacktests.in
+++ /dev/null
@@ -1,9 +0,0 @@
-# Testing different implementations of LAPACK
-
-# lapack-reference relies on blas: test this with different blas implementations
-reference_eigen sci-libs/lapack-reference-3.3.1-r1 blas:eigen
-reference_openblas sci-libs/lapack-reference-3.3.1-r1 blas:openblas-threads
-
-# Testing other full LAPACK implementations enabling vectorization
-atlas sci-libs/atlas-3.9.41 CFLAGS="-O3 -march=native -msse3 -msse4.1 -msse4.2"
-acml sci-libs/acml-4.4.0-r1 -acml32-gfortran -acml32-gfortran-openmp
\ No newline at end of file

diff --git a/numbench/basemodule.py b/numbench/basemodule.py
deleted file mode 100644
index 3e7beb7..0000000
--- a/numbench/basemodule.py
+++ /dev/null
@@ -1,287 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-from os.path import join as pjoin, basename, dirname
-import subprocess as sp
-import shlex, os, sys
-import shutil as shu
-
-import benchconfig as cfg
-from htmlreport import HTMLreport
-import basemodule
-from benchutils import mkdir, run_cmd
-from benchprint import Print
-import utils.benchpkgconfig as pc
-from testdescr import testdescr
-
-try:
-    if not locals().has_key('initialized'):
-        initialized = True
-        import matplotlib
-        matplotlib.use('Agg')
-        import matplotlib.pyplot as plt
-        import numpy as np
-        with_images = True
-except ImportError:
-    sys.stderr.write('Error: matplotlib and numpy are needed' + \
-      'in order to generate the reports!\n')
-    sys.stderr.write('Continue anyway.\n\n')    
-    with_images = False
-
-
-class BaseModule:
-    def __init__(self, args):
-        self.summary = False
-        self.summary_only = False
-        
-        self._initialize()
-        
-        passargs = []
-        for i in args:
-            if i in ('-S', '--summary-only'):
-                self.summary_only = True
-                continue
-            elif i in ('-s', '--summary'):
-                self.summary = True
-                continue
-            else:
-                passargs += [i]
-        
-        self._parse_args(passargs)
-    
-    @classmethod
-    def printHelp(cls):
-        print "Usage: numbench " + cfg.modulename + " [options] [tests]"
-        print
-        print "Generic options:"
-        print "   -s -summary"
-        print "      Generate a summary image that contains all tests results"
-        print "      and show it on the HTML report page."
-        print
-        print "   -S -summary-only"
-        print "      Only generate the summary image and skip all other plots."
-        print
-        
-    # Alternatives-2 version
-    def get_impls(self, root):
-        output = sp.Popen(
-          ['eselect', '--no-color', '--brief', self.libname, 'list'],
-          env={'ROOT' : root}, stdout=sp.PIPE).communicate()[0]
-        output = output.strip()
-        if '(none found)' in output:
-            return []
-        else:
-            return [i.split()[0] for i in output.split('\n')] 
-        
-    # Alternatives-2 version
-    def instructionsFor(self, impl):
-        Print("# eselect " + self.libname + " set " + impl)
-           
-    def getTest(self, root, impl, testdir, logdir):
-        TestClass = self._testClass()
-        t = TestClass(root, impl, testdir, logdir)
-        t.libname = self.libname
-        t.tests = self.tests
-        t.files = self.files
-        return t
-    
-    def save_results(self, results, plottype='plot', ylabel="MFlops"):
-        if not with_images:
-            Print("Report generation skipped - missing libraries")
-            return
-        
-        try:
-            plt.figure()
-        except:
-            Print("Unable to generate plots")
-            Print("Please make sure that X is running and $DISPLAY is set")
-            return
-        
-        # Copy inputfile and logs
-        shu.copytree(cfg.logdir, pjoin(cfg.reportdir, 'log'))
-        baseinfile = basename(cfg.inputfile)
-        shu.copy2(cfg.inputfile, pjoin(cfg.reportdir, baseinfile))
-        
-        if plottype == 'plot': plotf = plt.plot
-        elif plottype == 'semilogx': plotf = plt.semilogx
-        elif plottype == 'semilogy': plotf = plt.semilogy
-        elif plottype == 'loglog': plotf = plt.loglog
-        else:
-            raise Exception('Unrecognized plot type: "' + plottype + '"')
-    
-        # Re-order the result dictionary
-        newresults = {}
-        for test in self.tests:
-            newresults[test] = {}
-            for nameimpl in results:
-                nameimplstr = pjoin(*nameimpl)
-                if results[nameimpl] == None:
-                    continue
-                resdat = results[nameimpl][test]
-                newresults[test][nameimplstr] = resdat
-        
-        # Begin the HTML report
-        htmlfname = pjoin(cfg.reportdir, 'index.html')
-        html = HTMLreport(htmlfname)
-        
-        # Generate summary - a single image with all plots
-        if self.summary or self.summary_only:
-            # Save summary figure
-            sprows = (len(self.tests)+1)/2
-            plt.figure(figsize=(16,6*sprows), dpi=300)
-            plt.subplots_adjust(wspace=.4, hspace=.4)
-            for i, test in enumerate(self.tests, 1):
-                plt.subplot(sprows, 2, i)
-                plt.title(testdescr[test])
-                for impl in newresults[test]:
-                    x,y = np.loadtxt(newresults[test][impl], unpack=True)
-                    plotf(x,y, label=impl, hold=True)
-                if self.summary_only:
-                    plt.legend(loc='best')
-                plt.xlabel('size')
-                plt.ylabel(ylabel)
-                plt.grid(True)
-            fname = pjoin(cfg.reportdir, 'summary.png')
-            plt.savefig(fname, format='png', bbox_inches='tight', \
-              transparent=True)
-            html.addFig("Summary", image=os.path.basename(fname), width='90%')
-            Print('Summary figure saved: ' + fname)
-                
-        # Generate plots
-        if not self.summary_only:
-            for test in self.tests:
-                plt.figure(figsize=(12,9), dpi=300)
-                for impl in newresults[test]:
-                    x,y = np.loadtxt(newresults[test][impl], unpack=True)
-                    plotf(x,y, label=impl, hold=True)
-                plt.legend(loc='best')
-                plt.xlabel('size')
-                plt.ylabel(ylabel)
-                plt.grid(True)
-                fname = pjoin(cfg.reportdir, test+".png")
-                plt.savefig(fname, format='png', bbox_inches='tight', \
-                  transparent=True)
-                html.addFig(testdescr[test], image=os.path.basename(fname))
-                Print('Figure ' + fname + ' saved')
-        
-        html.close()
-        Print('HTML report generated: ' + htmlfname)
-
-class CompilationError(Exception):
-    def __init__(self, logfile):
-        self.logfile = logfile
-
-
-class BaseTest:
-    libname = None
-    tests = None
-    files = None
-    
-    def __init__(self, root, impl, testdir, logdir):
-        self.root = root
-        self.impl = impl
-        self.testdir = testdir
-        self.logdir = pjoin(logdir, impl)
-        self.compileenv = {}
-        self.runenv = {}
-        
-        mkdir(self.logdir)
-        
-        self.libdir = cfg.libdir
-        while self.libdir[0] == '/':
-            self.libdir = self.libdir[1:]
-        self.libdir = pjoin(self.root, self.libdir)
-        
-    # Base version
-    def _generateResults(self):
-        return dict(zip(self.tests, self.files))
-           
-    # Alternatives-2 version with pkg-config
-    def _get_flags(self):
-        # 1. Run with no requires
-        pfile = pc.getFile(self.libname, self.impl, self.root)
-        flags = pc.run(pfile, self.root, False)
-        logfile = file(pjoin(self.logdir, 'pkg-config.log'), 'w')
-        print >> logfile, "File:", pfile
-        print >> logfile, "Result:", flags
-        
-        # 2. Get requires
-        requires = pc.requires(pfile)
-        print >> logfile, "Requires:", requires
-        
-        # 3.Substitute requires and add flags
-        for r in requires:
-            if r in self.changes.keys():
-                pfile = pc.getFile(r, self.changes[r])
-                flags += ' ' + pc.run(pfile)
-            else:
-                flags += ' ' + pc.run(r)
-        print >> logfile, "Third run:", flags
-        logfile.close()
-        
-        return shlex.split(flags)
-    
-    def run_test(self, changes={}):
-        self.changes = changes
-        
-        # Convenient renames and definition of report files
-        name = self.libname
-        root = self.root
-        testdir = self.testdir
-        self.files = [pjoin(testdir,f) for f in self.files]
-        if cfg.libdir[0] == '/':
-            libdir = root+cfg.libdir
-        else:
-            libdir = pjoin(root, cfg.libdir)
-        
-        # Create dir. If all results already exist use them and do not perform
-        # the tests, otherwise remove every old results.
-        runtests = False
-        if os.path.exists(testdir):
-            runtests = not all([os.path.exists(i) for i in self.files])
-        else:
-            os.makedirs(testdir)
-            runtests = True
-        if not runtests:
-            Print("Not testing: results exist")
-            return self._generateResults()
-        for i in self.files:
-            if os.path.exists(i): os.remove(i)
-        
-        # Compile test suite
-        try:
-            returncode, exe, logfile = self._compileTest()
-            if returncode != 0:
-                raise CompilationError(logfile)
-        except CompilationError as e:
-            Print("Compilation failed")
-            Print("See log: " + e.logfile)
-            return
-        Print("Compilation successful")
-        
-        # Run test
-        logfile = pjoin(self.logdir, name+"_run.log")
-        retcode = self._executeTest(exe, logfile=logfile)
-        if retcode != 0:
-            Print("Test failed")
-            Print("See log: " + logfile)
-            return
-        Print("Test successful")
-                
-        # Return
-        return self._generateResults()
-    

diff --git a/numbench/benchchilds.py b/numbench/benchchilds.py
deleted file mode 100644
index 1686639..0000000
--- a/numbench/benchchilds.py
+++ /dev/null
@@ -1,30 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-try:
-    copy = procs
-    del copy
-except:
-    procs = []
-    
-def terminate():
-    for p in procs:
-        if p.poll() is None:
-            p.kill()
-
-def append(proc):
-    procs.append(proc)
\ No newline at end of file

diff --git a/numbench/blas.py b/numbench/blas.py
deleted file mode 100644
index afdaa19..0000000
--- a/numbench/blas.py
+++ /dev/null
@@ -1,23 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import blasbase
-
-class Module(blasbase.BLASBase):
-    def _initialize(self):
-        self.libname = "blas"
-        blasbase.BLASBase._initialize(self)
\ No newline at end of file

diff --git a/numbench/blas_accuracy.py b/numbench/blas_accuracy.py
deleted file mode 100644
index f194d31..0000000
--- a/numbench/blas_accuracy.py
+++ /dev/null
@@ -1,164 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import subprocess as sp
-import shlex, os
-from os.path import join as pjoin
-
-from benchutils import mkdir, run_cmd
-from benchprint import Print
-from htmlreport import HTMLreport
-import basemodule
-import benchconfig as cfg
-import benchchildren
-
-class Module(basemodule.BaseModule):
-    
-    def _initialize(self):
-        self.libname = 'blas'
-        self.avail=['axpy', 'matrix_vector', 'trisolve_vector', 'matrix_matrix']
-    
-    def _parse_args(self, args):     
-        # Parse arguments
-        tests = []
-        for i in args:
-            if i in self.avail:
-                tests.append(i)
-                continue
-            raise Exception("Argument not recognized: " + i)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, then do everything
-        if len(self.tests) == 0:
-            self.tests = self.avail
-         
-        # Generate list of dat (result) files, relative to the testdir
-        self.files = [pjoin('accuracy_%s_%s.dat' % (op, self.libname)) \
-          for op in self.tests]
-        
-    @staticmethod
-    def _testClass():
-        return BLAS_accuracyTest
-
-    
-    def save_results(self, results):
-        basemodule.BaseModule.save_results(self, results, 'loglog')
-            
-class BLAS_accuracyTest(basemodule.BaseTest):
-    
-    compileenv = {}
-    runenv = {}
-        
-    def _compileTest(self):
-        self.compileenv = {}
-        
-        # Flags and envvars lists
-        includes = [pjoin(self.root, 'usr/include')]
-        libraries = []
-        libdirs = [self.libdir]
-        defines = ['NDEBUG']
-        flags = []
-        
-        ## Interpret flags        
-        for flag in self._get_flags() + \
-          shlex.split(run_cmd(['portageq', 'envvar', 'CXXFLAGS']).strip()):
-            flag = flag.strip()
-            if flag[:2] == '-l':
-                libraries.append(flag[2:])
-            elif flag[:2] == '-L':
-                libdirs.append(flag[2:])
-            elif flag[:2] == '-I':
-                includes.append(flag[2:])
-            else:
-                flags.append(flag)
-        
-        # Set compile environment
-        self.compileenv['INCLUDE_PATH'] = ':'.join(includes)
-        self.compileenv['LIBRARY_PATH'] = ':'.join(libdirs)
-        self.compileenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        self.runenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        
-        exe = pjoin(self.testdir, "test")
-        source = pjoin(cfg.btldir, "accuracy/main_blas.cpp")
-    
-        # Retrieve compiler
-        cxx = 'g++'
-        cxx_portage = run_cmd(['portageq', 'envvar', 'CXX']).strip()
-        if cxx_portage != '':
-            cxx = cxx_portage
-        if os.environ.has_key('CXX'):
-            cxx = os.environ['CXX']
-        
-        # Form command line arguments
-        args = [cxx, source, '-o', exe]
-        args += ['-I'+I for I in includes]
-        args += ['-l'+l for l in libraries]
-        args += ['-L'+L for L in libdirs]
-        args += ['-D'+D for D in defines]
-        args += flags
-    
-        # Open logfile or redirect to PIPE
-        logfile = file(pjoin(self.logdir, "compile.log"), 'w')
-        logfile.write(' '.join([n+'='+v for n,v in self.compileenv.items()]))
-        logfile.write(' ' + ' '.join(args) + '\n' + 80*'-' + '\n')
-        logfile.flush()
-        
-        # Execute
-        proc=sp.Popen(args,stdout=logfile,stderr=sp.STDOUT,env=self.compileenv)
-        proc.wait()
-        
-        # Close, return
-        logfile.close()
-        return proc.returncode, exe, logfile.name
-    
-    
-    def _executeTest(self, exe, logfile):
-        # Log dynamic link
-        lddlogfile = file(pjoin(self.logdir, 'ldd.log'), 'w')
-        sp.Popen(['ldd', '-v', exe], stdout=lddlogfile, env=self.runenv).wait()
-        
-        # Open pipe
-        logfile = file(logfile, 'w')
-        args = [exe] + self.tests
-        logfile.write(' '.join([n+'='+v for n,v in self.runenv.items()]) + ' ')
-        logfile.write(' '.join(args) + '\n')
-        logfile.write(80*'-' + '\n')
-        proc = sp.Popen(args, bufsize=1, stdout=sp.PIPE, stderr=sp.PIPE, 
-          env=self.runenv, cwd=self.testdir)
-        benchchildren.append(proc)
-        
-        # Interpret output
-        Print.down()
-        while True:
-            line = proc.stdout.readline()
-            if not line:
-                break
-            logfile.write(line)
-            if len(line.strip()) == 0:
-                continue
-            if line[0] != ' ':
-                Print.up()
-                Print(line.strip().split()[-1])
-                Print.down()
-            else:
-                Print(line.strip())
-        Print.up()          
-        logfile.close()      
-        proc.wait()
-        return proc.returncode

diff --git a/numbench/blasbase.py b/numbench/blasbase.py
deleted file mode 100644
index c08987f..0000000
--- a/numbench/blasbase.py
+++ /dev/null
@@ -1,82 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import os, btlbase
-import subprocess as sp
-import shlex
-from os.path import join as pjoin
-
-avail1 = ['axpy', 'axpby', 'rot']
-avail2 = ['matrix_vector','atv','symv', 'ger', 'syr2',
-          'trisolve_vector']
-avail3 = ['matrix_matrix', 'aat', 'trisolve_matrix', 'trmm']
-
-class BLASBase(btlbase.BTLBase):
-    
-    avail1 = avail1
-    avail2 = avail2
-    avail3 = avail3
-    avail = avail1 + avail2 + avail3
-        
-    def _initialize(self):
-        pass
-    
-    def _parse_args(self, args):
-        passargs = []
-        # Parse arguments
-        tests = []
-        for i in args:
-            if i == '1':
-                tests += self.avail1
-                continue
-            if i == '2':
-                tests += self.avail2
-                continue
-            if i == '3':
-                tests += self.avail3
-                continue
-            if i in self.avail:
-                tests.append(i)
-                continue
-            passargs.append(i)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, then choose four standard tests
-        if len(self.tests) == 0:
-            self.tests = ['axpy', 'matrix_vector', \
-              'trisolve_vector', 'matrix_matrix']
-        
-        btlbase.BTLBase._parse_args(self, passargs)
-        
-    @staticmethod
-    def _testClass():
-        return BLASTest
-
-
-class BLASTest(btlbase.BTLTest):
-    @staticmethod
-    def _btl_source():
-        return "libs/BLAS/main.cpp"
-    
-    @staticmethod
-    def _btl_includes():
-        return ["libs/BLAS"]
-    
-    def _btl_defines(self):
-        return ["CBLASNAME="+self.libname, self.libname.upper()+"_INTERFACE"]
\ No newline at end of file

diff --git a/numbench/btlbase.py b/numbench/btlbase.py
deleted file mode 100644
index 23f1c51..0000000
--- a/numbench/btlbase.py
+++ /dev/null
@@ -1,194 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import sys, os, shlex
-import subprocess as sp
-from os.path import join as pjoin
-
-from benchutils import mkdir, run_cmd
-from benchprint import Print
-from htmlreport import HTMLreport
-import basemodule
-import benchconfig as cfg
-import benchchildren
-from testdescr import testdescr
-
-class BTLBase(basemodule.BaseModule):
-    
-    @classmethod
-    def printHelp(cls):
-        basemodule.BaseModule.printHelp()
-        
-        print "Tests:"
-        for i in cls.avail:
-            print "   " + i + ":"
-            print "     " + testdescr[i]
-            print
-    
-    def _parse_args(self, args):
-        # Generate list of dat (result) files, relative to the testdir
-        self.files = [pjoin('bench_%s_%s.dat' % (op, self.libname)) \
-          for op in self.tests]
-        
-        for i in args:
-            if i[:2] == '-N':
-                BTLTest.N = i[2:]
-                continue
-            raise Exception("Argument not recognized: " + i)
-    
-    def save_results(self, results):
-        basemodule.BaseModule.save_results(self, results, 'semilogx')     
-        
-    
-class BTLTest(basemodule.BaseTest):
-    
-    N = None
-    
-    def _compileTest(self):
-        self.compileenv = {}
-        self.runenv = {}
-        
-        # Includes
-        includes = [pjoin(cfg.btldir, i) for i in \
-        ('actions', 'generic_bench', 'generic_bench/utils', 'libs/STL') + \
-        tuple(self._btl_includes())] + [pjoin(self.root, 'usr/include')]
-        
-        # Libraries
-        libraries = ['rt']
-        
-        # Libdirs
-        libdirs = [self.libdir]
-        
-        # Defines
-        defines = ['NDEBUG'] + self._btl_defines()
-        defines = self._btl_defines()
-        
-        # Flags
-        flags = []
-        
-        ## Interpret flags        
-        for flag in self._get_flags() + \
-          shlex.split(run_cmd(['portageq', 'envvar', 'CXXFLAGS']).strip()):
-            flag = flag.strip()
-            if flag[:2] == '-l':
-                libraries.append(flag[2:])
-            elif flag[:2] == '-L':
-                libdirs.append(flag[2:])
-            elif flag[:2] == '-I':
-                includes.append(flag[2:])
-            else:
-                flags.append(flag)
-        
-        # Set compile environment
-        self.compileenv['INCLUDE_PATH'] = ':'.join(includes)
-        self.compileenv['LIBRARY_PATH'] = ':'.join(libdirs)
-        self.compileenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        self.runenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        # PATH
-        envpath = ':'.join([pjoin(self.root, l) for l in ('bin', 'usr/bin')])
-        if (os.environ.has_key('PATH')):
-            envpath += ':' + os.environ['PATH']
-        self.compileenv['PATH'] = envpath
-        self.runenv['PATH'] = envpath
-        
-        exe = pjoin(self.testdir, "test")
-    
-        # Retrieve compiler
-        cxx = 'g++'
-        cxx_portage = run_cmd(['portageq', 'envvar', 'CXX']).strip()
-        if cxx_portage != '':
-            cxx = cxx_portage
-        if os.environ.has_key('CXX'):
-            cxx = os.environ['CXX']
-        
-        # Form command line arguments
-        args = [cxx, pjoin(cfg.btldir, self._btl_source()), '-o', exe]
-        args += ['-I'+I for I in includes]
-        args += ['-l'+l for l in libraries]
-        args += ['-L'+L for L in libdirs]
-        args += ['-D'+D for D in defines]
-        args += flags
-    
-        # Open logfile or redirect to PIPE
-        logfile = file(pjoin(self.logdir, "compile.log"), 'w')
-        logfile.write(' '.join([n+'='+v for n,v in self.compileenv.items()]))
-        logfile.write(' ' + ' '.join(args) + '\n' + 80*'-' + '\n')
-        logfile.flush()
-        
-        # Execute
-        proc=sp.Popen(args,stdout=logfile,stderr=sp.STDOUT,env=self.compileenv)
-        proc.wait()
-        
-        # Close, return
-        logfile.close()
-        return proc.returncode, exe, logfile.name
-    
-    def _executeTest(self, exe, logfile, preargs=[]):
-        # Log dynamic link
-        lddlogfile = file(pjoin(self.logdir, 'ldd.log'), 'w')
-        sp.Popen(['ldd', '-v', exe], stdout=lddlogfile, env=self.runenv).wait()
-        
-        # Open pipe
-        logfile = file(logfile, 'w')
-        args = preargs + [exe] + list(self.tests)
-        if self.N is not None:
-            args.append('-N' + self.N)
-        logfile.write(' '.join( \
-          [n + '="'+v+'"' for n,v in self.runenv.items()]  ) + ' ')
-        logfile.write(' '.join(args) + '\n')
-        logfile.write(80*'-' + '\n')
-        proc = sp.Popen(args, bufsize=1, stdout=sp.PIPE, stderr=sp.PIPE, 
-          env=self.runenv, cwd=self.testdir)
-        benchchildren.append(proc)
-        
-        # Interpret output
-        while True:
-            # Each operation test begins with a line on stderr
-            errline = proc.stderr.readline()
-            if not errline:
-                break
-            logfile.write(errline)
-            resfile = errline.split()[-1]
-            testname = resfile[6:-5-len(self.libname)]
-            Print(resfile)
-            
-            # Many different sizes for each operation test
-            Print.down()
-            cur = 0
-            tot = 1
-            while cur != tot:
-                outline = proc.stdout.readline()
-                # If the line is void, something gone wrong
-                if not outline:
-                    Print.up()
-                    Print('Execution error')
-                    return 1
-                logfile.write(outline)
-                logfile.flush()
-                
-                # Interpret line
-                outline = outline.strip()
-                (cur, tot) = shlex.split(outline)[-1][1:-1].split('/')
-                cur = int(cur); tot = int(tot)
-                Print(outline)
-                
-                
-            Print.up()
-        logfile.close()
-        proc.wait()
-        Print("Execution finished with return code " + str(proc.returncode))
-        return proc.returncode

diff --git a/numbench/cblas.py b/numbench/cblas.py
deleted file mode 100644
index ad33663..0000000
--- a/numbench/cblas.py
+++ /dev/null
@@ -1,23 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import blasbase
-
-class Module(blasbase.BLASBase):
-    def _initialize(self):
-        self.libname = "cblas"
-        blasbase.BLASBase._initialize(self)
\ No newline at end of file

diff --git a/numbench/fftw.py b/numbench/fftw.py
deleted file mode 100644
index ec30508..0000000
--- a/numbench/fftw.py
+++ /dev/null
@@ -1,86 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import os, btlbase
-
-class Module(btlbase.BTLBase):
-    def _initialize(self):
-        self.libname = "fftw"
-        self.avail = (
-          "FFTW_1D_Forward_Measure", "FFTW_1D_Forward_Estimate",
-          "FFTW_1D_Backward_Measure", "FFTW_1D_Backward_Estimate",
-          
-          "FFTW_2D_Forward_Measure", "FFTW_2D_Forward_Estimate",
-          "FFTW_2D_Backward_Measure", "FFTW_2D_Backward_Estimate",
-          
-          "FFTW_3D_Forward_Measure", "FFTW_3D_Forward_Estimate",
-          "FFTW_3D_Backward_Measure", "FFTW_3D_Backward_Estimate"
-        )
-    
-    def _parse_args(self, args):
-        passargs = []
-        
-        # Parse arguments
-        tests = []
-        for i in args:
-            if i in self.avail:
-                tests.append(i)
-                continue
-            passargs.append(i)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, run everything
-        if len(self.tests) == 0:
-            self.tests = self.avail
-        
-        btlbase.BTLBase._parse_args(self, passargs)
-        
-    @staticmethod
-    def get_impls(root):
-        return ['fftw', 'fftw_threads']
-        
-    def instructionsFor(self, impl):
-        Print("Use command 'pkg-config --cflags --libs " + impl + \
-              "' when compiling")
-    
-    @staticmethod
-    def _testClass():
-        return FFTWTest
-    
-    
-    
-class FFTWTest(btlbase.BTLTest):
-        
-    def _get_flags(self):
-        if self.impl == 'fftw':
-            return ['-lfftw3', '-lm', '-g3']
-        elif self.impl == 'fftw_threads':
-            return ['-lfftw3_threads', '-lm']
-        
-    @staticmethod
-    def _btl_source():
-        return "libs/FFTW/main.cpp"
-    
-    @staticmethod
-    def _btl_includes():
-        return ["libs/FFTW"]
-    
-    @staticmethod
-    def _btl_defines():
-        return []
\ No newline at end of file

diff --git a/numbench/lapack.py b/numbench/lapack.py
deleted file mode 100644
index f440903..0000000
--- a/numbench/lapack.py
+++ /dev/null
@@ -1,70 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import os, btlbase
-import subprocess as sp
-import shlex
-
-class Module(btlbase.BTLBase):
-    
-    libname = "lapack"
-    avail = ['general_solve', 'least_squares', 'lu_decomp', \
-          'cholesky', 'qr_decomp', 'svd_decomp', 'syev', 'stev', 'symm_ev']
-    
-    def _initialize(self):
-        pass
-    
-    def _parse_args(self, args):
-        passargs = []
-        
-        # Parse arguments
-        tests = []
-        for i in args:
-            if i in self.avail:
-                tests.append(i)
-                continue
-            passargs.append(i)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, run everything
-        if len(self.tests) == 0:
-            self.tests = ['lu_decomp', 'cholesky', 'qr_decomp', 'svd_decomp',\
-                          'syev', 'stev']
-        
-        btlbase.BTLBase._parse_args(self, passargs)
-    
-    @staticmethod
-    def _testClass():
-        return LapackTest
-    
-    
-    
-class LapackTest(btlbase.BTLTest):
-    @staticmethod
-    def _btl_source():
-        return "libs/LAPACK/main.cpp"
-    
-    @staticmethod
-    def _btl_includes():
-        return ["libs/BLAS", "libs/LAPACK"]
-    
-    @staticmethod
-    def _btl_defines():
-        return ["LAPACKNAME=lapack"]
-    
\ No newline at end of file

diff --git a/numbench/lapack_accuracy.py b/numbench/lapack_accuracy.py
deleted file mode 100644
index 3e04aa3..0000000
--- a/numbench/lapack_accuracy.py
+++ /dev/null
@@ -1,169 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import subprocess as sp
-import shlex, os
-from os.path import join as pjoin
-
-from benchutils import mkdir, run_cmd
-from benchprint import Print
-from htmlreport import HTMLreport
-import basemodule
-import benchconfig as cfg
-import benchchildren
-
-class Module(basemodule.BaseModule):
-    
-    def _initialize(self):
-        self.libname = 'lapack'
-        self.avail=['lu_decomp', 'cholesky', 'svd_decomp', 'qr_decomp', \
-                    'syev', 'stev']
-    
-    def _parse_args(self, args):     
-        # Parse arguments
-        tests = []
-        for i in args:
-            if i in self.avail:
-                tests.append(i)
-                continue
-            raise Exception("Argument not recognized: " + i)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, then do everything
-        if len(self.tests) == 0:
-            self.tests = self.avail
-         
-        # Generate list of dat (result) files, relative to the testdir
-        self.files = [pjoin('accuracy_%s_%s.dat' % (op, self.libname)) \
-          for op in self.tests]
-        
-    @staticmethod
-    def _testClass():
-        return LAPACK_accuracyTest
-
-    
-    def save_results(self, results):
-        basemodule.BaseModule.save_results(self, results, 'plot', \
-          'Relative error')
-            
-class LAPACK_accuracyTest(basemodule.BaseTest):
-    
-    compileenv = {}
-    runenv = {}
-        
-    def _compileTest(self):
-        self.compileenv = {}
-        
-        # Flags and envvars lists
-        includes = [pjoin(self.root, 'usr/include'),
-                    pjoin(cfg.btldir, 'accuracy'),
-                    pjoin(cfg.btldir, 'libs', 'LAPACK'),
-                    pjoin(cfg.btldir, 'generic_bench', 'utils')]
-        libraries = []
-        libdirs = [self.libdir]
-        defines = ['NDEBUG']
-        flags = []
-        
-        ## Interpret flags        
-        for flag in self._get_flags() + \
-          shlex.split(run_cmd(['portageq', 'envvar', 'CXXFLAGS']).strip()):
-            flag = flag.strip()
-            if flag[:2] == '-l':
-                libraries.append(flag[2:])
-            elif flag[:2] == '-L':
-                libdirs.append(flag[2:])
-            elif flag[:2] == '-I':
-                includes.append(flag[2:])
-            else:
-                flags.append(flag)
-        
-        # Set compile environment
-        self.compileenv['INCLUDE_PATH'] = ':'.join(includes)
-        self.compileenv['LIBRARY_PATH'] = ':'.join(libdirs)
-        self.compileenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        self.runenv['LD_LIBRARY_PATH'] = ':'.join(libdirs)
-        
-        exe = pjoin(self.testdir, "test")
-        source = pjoin(cfg.btldir, "accuracy/lapack/main_lapack.cpp")
-    
-        # Retrieve compiler
-        cxx = 'g++'
-        cxx_portage = run_cmd(['portageq', 'envvar', 'CXX']).strip()
-        if cxx_portage != '':
-            cxx = cxx_portage
-        if os.environ.has_key('CXX'):
-            cxx = os.environ['CXX']
-        
-        # Form command line arguments
-        args = [cxx, source, '-o', exe]
-        args += ['-I'+I for I in includes]
-        args += ['-l'+l for l in libraries]
-        args += ['-L'+L for L in libdirs]
-        args += ['-D'+D for D in defines]
-        args += flags
-    
-        # Open logfile or redirect to PIPE
-        logfile = file(pjoin(self.logdir, "compile.log"), 'w')
-        logfile.write(' '.join([n+'='+v for n,v in self.compileenv.items()]))
-        logfile.write(' ' + ' '.join(args) + '\n' + 80*'-' + '\n')
-        logfile.flush()
-        
-        # Execute
-        proc=sp.Popen(args,stdout=logfile,stderr=sp.STDOUT,env=self.compileenv)
-        proc.wait()
-        
-        # Close, return
-        logfile.close()
-        return proc.returncode, exe, logfile.name
-    
-    
-    def _executeTest(self, exe, logfile):
-        # Log dynamic link
-        lddlogfile = file(pjoin(self.logdir, 'ldd.log'), 'w')
-        sp.Popen(['ldd', '-v', exe], stdout=lddlogfile, env=self.runenv).wait()
-        
-        # Open pipe
-        logfile = file(logfile, 'w')
-        args = [exe] + self.tests
-        logfile.write(' '.join([n+'='+v for n,v in self.runenv.items()]) + ' ')
-        logfile.write(' '.join(args) + '\n')
-        logfile.write(80*'-' + '\n')
-        proc = sp.Popen(args, bufsize=1, stdout=sp.PIPE, stderr=logfile, 
-          env=self.runenv, cwd=self.testdir)
-        benchchildren.append(proc)
-        
-        # Interpret output
-        Print.down()
-        while True:
-            line = proc.stdout.readline()
-            if not line:
-                break
-            logfile.write(line)
-            if len(line.strip()) == 0:
-                continue
-            if line[0] != ' ':
-                Print.up()
-                Print(line.strip())
-                Print.down()
-            else:
-                Print(line[1:-1])
-        Print.up()
-        logfile.close()
-        proc.wait()
-        return proc.returncode

diff --git a/numbench/metis.py b/numbench/metis.py
deleted file mode 100644
index 4c7c36b..0000000
--- a/numbench/metis.py
+++ /dev/null
@@ -1,184 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import os, shlex, numpy as np, subprocess as sp
-from os.path import realpath, exists as pexists, join as pjoin
-from random import randint
-
-import basemodule
-import benchconfig as cfg
-from benchutils import mkdir
-from benchprint import Print
-import benchchildren
-
-inputsdir = pjoin(cfg.testsdir, 'metis-input')
-mkdir(inputsdir)
-
-avail_graph = ['pmetis-8', 'kmetis-8', 'pmetis-64', 'kmetis-64']
-avail_mesh = []
-avail_matrix = []
-
-class Module(basemodule.BaseModule):
-    
-    #classmethod
-    def _initialize(cls):
-        cls.avail = avail_graph + avail_mesh + avail_matrix
-    
-    def _parse_args(self, args):
-        tests = []
-        
-        # Parse arguments
-        for i in args:
-            if i in self.avail:
-                tests.append(i)
-            else:
-                raise Exception("Argument not recognized: " + i)
-                
-        if len(tests) == 0:
-            # If not test provided, perform all
-            self.tests = self.avail
-        else:
-            # Sort tests
-            self.tests = [i for i in self.avail if i in tests]
-    
-    @staticmethod
-    def get_impls(*args, **kwargs):
-        return ('metis',)
-        
-    def instructionsFor(self, impl):
-        Print("Nothing to do")
-    
-    def save_results(self, results):
-        basemodule.BaseModule.save_results(self, results, 'loglog', 'Seconds')
-    
-    def getTest(self, root, impl, testdir, logdir):
-        t = MetisTest(root, testdir, logdir, self.tests)
-        return t
-    
-
-class MetisTest:
-    sizes = None
-    
-    def __init__(self, root, testdir, logdir, tests):
-        self.root = root
-        self.testdir = testdir
-        self.logdir = logdir
-        self.tests = tests
-        mkdir(logdir)
-        mkdir(testdir)
-        
-    @classmethod
-    def _getSizes(cls):
-        if cls.sizes is None:
-            cls.sizes = [int(i) for i in np.logspace(3, 6, 100)]
-        return cls.sizes
-    
-    def _generateFiles(self):
-        Print("Generating input files...")
-        # Graph
-        if len([i for i in self.tests if i in avail_graph]) != 0:
-            for size in self._getSizes():
-                fname = pjoin(inputsdir, 'input_%i.graph' % size)
-                if not pexists(fname):
-                    writeGraph(size, fname)
-        Print("Done")
-                    
-        
-    def run_test(self, changes={}):
-        self._generateFiles()
-        result = {}
-        
-        for t in [i for i in self.tests if i in avail_graph]:
-            Print('Doing ' + t)
-            Print.down()
-            res = []
-            
-            for s,size in enumerate(self._getSizes(), 1):
-                inputfile = pjoin(inputsdir, 'input_%i.graph' % size)
-                
-                # Setting environment
-                env = os.environ.copy()
-                envpath = env.has_key('PATH') and env['PATH'] or ''
-                env['PATH'] = ':'.join([pjoin(self.root, p) for p in \
-                  ('bin', 'usr/bin')]) + ':' + envpath
-                envlib = env.has_key('LD_LIBARY_PATH') and \
-                  env['LD_LIBARY_PATH'] or ''
-                env['LD_LIBRARY_PATH'] = ':'.join([pjoin(self.root,p) for p in \
-                  ('usr/lib', 'usr/lib64', 'usr/lib32')]) + ':' + envlib
-                  
-                # Get executable
-                exe, parts = t.split('-')
-                exe = pjoin(self.root, 'usr/bin', exe)
-                
-                # Check dynamic linking
-                logf = file(pjoin(self.logdir, 'ldd.log'), 'w')
-                p = sp.Popen(\
-                  ['ldd', '-v', exe], stdout=logf, stderr=sp.STDOUT, env=env
-                )
-                p.wait()
-                
-                # Execute
-                logname = pjoin(self.logdir, t + '_%i.log' % size)
-                cmd = [exe, inputfile, parts]
-                pr = sp.Popen(cmd, stdout=sp.PIPE, stderr=sp.STDOUT, env=env)
-                benchchildren.append(pr)
-                lines = pr.communicate()[0].split('\n')
-                
-                # Interpret output
-                for i,line in enumerate(lines):
-                    if line[:18] == "Timing Information":
-                        begin_timing = i+1
-                        break
-                    
-                lines = [i[:-1] for i in lines[begin_timing+1:]]
-                for l in lines:
-                    if l.strip()[:13] == "Partitioning:":
-                        time = float(shlex.split(l)[1])
-                        break
-                res.append((size,time))
-                Print("size: %6i    %2.3f sec.  (%i/%i)" % (size, time, s, 100))
-            
-            Print.up()
-            
-            # Write sizes / times to result file
-            resfname = pjoin(self.testdir, t+'.dat')
-            resfs = file(resfname, 'w')
-            for i in res:
-                print >> resfs, i[0], i[1]
-            resfs.close()
-            result[t] = resfname
-        return result
-            
-            
-def writeGraph(size, filename):
-    edges = [[] for i in xrange(size)]
-    nedges = 0
-    for e1 in xrange(len(edges)):
-        n = 0
-        tot = randint(1, min(size / 4, 5))
-        while n < tot:
-            e2 = randint(0, size - 1)
-            if e2 not in edges[e1] and e1 != e2:
-                edges[e1].append(e2)
-                edges[e2].append(e1)
-                n += 1
-                nedges += 1
-    fs = file(filename, 'w')
-    print >> fs, size, nedges
-    for s in edges:
-        print >> fs, ' '.join([str(i+1) for i in s])
-    fs.close()

diff --git a/numbench/scalapack.py b/numbench/scalapack.py
deleted file mode 100644
index c639ef9..0000000
--- a/numbench/scalapack.py
+++ /dev/null
@@ -1,88 +0,0 @@
-#=====================================================
-# Copyright (C) 2011 Andrea Arteaga <andyspiros@gmail.com>
-#=====================================================
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-import os, btlbase, shlex, subprocess as sp
-
-numproc = 4
-
-class Module(btlbase.BTLBase):
-    def _initialize(self):
-        self.libname = "scalapack"
-        self.avail = ['axpy', 'matrix_vector', 'lu_decomp', 'cholesky',
-          'qr_decomp', 'svd_decomp', 'symm_ev']
-    
-    def _parse_args(self, args):
-        passargs = []
-        
-        # Parse arguments
-        tests = []
-        skip = 0
-        
-        for i, a in enumerate(args):
-            if skip != 0:
-                skip -= 1
-                continue
-            if a == '-n':
-                skip += 1
-                numproc = args[i+1]
-                continue
-            if a in self.avail:
-                tests.append(a)
-                continue
-            passargs.append(a)
-        
-        # Sort tests
-        self.tests = [i for i in self.avail if i in tests]
-        
-        # If no test is specified, then choose four standard tests
-        if len(self.tests) == 0:
-            self.tests = self.avail
-        
-        btlbase.BTLBase._parse_args(self, passargs)
-        
-    @staticmethod
-    def _testClass():
-        return ScaLAPACKTest
-
-
-class ScaLAPACKTest(btlbase.BTLTest):    
-#    def __init__(self, *args, **kwargs):
-#        os.environ['CXX'] = 'mpic++'
-#        btlbase.BTLTest.__init__(self, *args, **kwargs)
-        
-    def _get_flags(self):
-        proc = sp.Popen(['mpic++', '-showme'], stdout=sp.PIPE)
-        out = proc.communicate()[0]
-        if proc.returncode != 0:
-            raise Exception("An MPI implementation is needed in order to" \
-              + " run the scalapack tests.")
-        return shlex.split(out)[1:] + btlbase.BTLTest._get_flags(self)
-    
-    def _executeTest(self, exe, logfile):
-        btlbase.BTLTest._executeTest(self, exe, logfile, \
-          ['mpirun', '-n', str(numproc)])
-    
-    @staticmethod
-    def _btl_source():
-        return "libs/PBLAS/main.cpp"
-    
-    @staticmethod
-    def _btl_includes():
-        return ["libs/"+i for i in ("BLAS", "LAPACK", "BLACS", "PBLAS", "STL")]
-    
-    def _btl_defines(self):
-        return ["PBLASNAME="+self.libname]
\ No newline at end of file



^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-02-28 12:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-21 18:12 [gentoo-commits] proj/auto-numerical-bench:master commit in: numbench/, / Andrea Arteaga
  -- strict thread matches above, loose matches on Subject: below --
2012-02-28 12:05 Andrea Arteaga
2011-08-22 18:02 Andrea Arteaga
2011-08-16 23:38 Andrea Arteaga

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox