JUBE-2.2.2/ 0000775 0001750 0001750 00000000000 13426052212 012127 5 ustar sebi sebi 0000000 0000000 JUBE-2.2.2/setup.py 0000664 0001750 0001750 00000011760 13426051426 013654 0 ustar sebi sebi 0000000 0000000 # JUBE Benchmarking Environment
# Copyright (C) 2008-2019
# Forschungszentrum Juelich GmbH, Juelich Supercomputing Centre
# http://www.fz-juelich.de/jsc/jube
#
# 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 3 of the License, or
# 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, see .
# For installation you can use:
#
# python setup.py install --user
#
# to install it into your .local folder. .local/bin must be inside your $PATH.
# You can also change the folder by using --prefix instead of --user
add_opt = dict()
try:
from setuptools import setup
import sys
SHARE_PATH = ""
add_opt["install_requires"] = list()
if sys.hexversion < 0x02070000:
add_opt["install_requires"].append("argparse")
except ImportError:
from distutils.core import setup
SHARE_PATH = "share/jube"
import os
def rel_path(directory, new_root=""):
"""Return list of tuples (directory, list of files)
recursively from directory"""
setup_dir = os.path.join(os.path.dirname(__file__))
cwd = os.getcwd()
result = list()
if setup_dir != "":
os.chdir(setup_dir)
for path_info in os.walk(directory):
root = path_info[0]
filenames = path_info[2]
files = list()
for filename in filenames:
path = os.path.join(root, filename)
if (os.path.isfile(path)) and (filename[0] != "."):
files.append(path)
if len(files) > 0:
result.append((os.path.join(new_root, root), files))
if setup_dir != "":
os.chdir(cwd)
return result
config = {'name': 'JUBE',
'description': 'JUBE Benchmarking Environment',
'author': 'Forschungszentrum Juelich GmbH',
'url': 'www.fz-juelich.de/jube',
'download_url': 'www.fz-juelich.de/jube',
'author_email': 'jube.jsc@fz-juelich.de',
'version': '2.2.2',
'packages': ['jube2','jube2.result_types','jube2.util'],
'package_data': {'jube2': ['help.txt']},
'data_files': ([(os.path.join(SHARE_PATH, 'docu'),
['docs/JUBE.pdf']),
(SHARE_PATH, ['LICENSE','RELEASE_NOTES'])] +
rel_path("examples", SHARE_PATH) +
rel_path("contrib", SHARE_PATH) +
rel_path("platform", SHARE_PATH)),
'scripts': ['bin/jube', 'bin/jube-autorun'],
'long_description': (
"Automating benchmarks is important for reproducibility and "
"hence comparability which is the major intent when "
"performing benchmarks. Furthermore managing different "
"combinations of parameters is error-prone and often "
"results in significant amounts work especially if the "
"parameter space gets large.\n"
"In order to alleviate these problems JUBE helps performing "
"and analyzing benchmarks in a systematic way. It allows "
"custom work flows to be able to adapt to new architectures.\n"
"For each benchmark application the benchmark data is written "
"out in a certain format that enables JUBE to deduct the "
"desired information. This data can be parsed by automatic "
"pre- and post-processing scripts that draw information, "
"and store it more densely for manual interpretation.\n"
"The JUBE benchmarking environment provides a script based "
"framework to easily create benchmark sets, run those sets "
"on different computer systems and evaluate the results. It "
"is actively developed by the Juelich Supercomputing Centre "
"of Forschungszentrum Juelich, Germany."),
'license': 'GPLv3',
'platforms': 'Linux',
'classifiers': [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: End Users/Desktop",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: GNU General Public License v3 " +
"(GPLv3)",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 2.6",
"Topic :: System :: Monitoring",
"Topic :: System :: Benchmark",
"Topic :: Software Development :: Testing"],
'keywords': 'JUBE Benchmarking Environment'}
config.update(add_opt)
setup(**config)
JUBE-2.2.2/RELEASE_NOTES 0000664 0001750 0001750 00000035364 13426051426 014123 0 ustar sebi sebi 0000000 0000000 Release notes
*************
Version 2.2.2
=============
Release: 2019-02-04
* New "tag" handling: Tags can now be mixed by using boolean
operations ("+" for and, "|" for or), brackates are allowed as well.
Old "," separated lists of tags are automatically converted. See
Tagging
* Extend parameter update documentation. See Parameter update
* Platfrom files were renamed (system specific to queuing system
specific)
* Fix "$jube_wp_relpath" and "$jube_wp_abspath" if *JUBE* is
executed from a relative directory
* Fixed missing or wrong environment variable evaluation within
*JUBE* parameters
* Fix for derived pattern handling if no match for regular pattern
was found
* Fix default value handling for derived pattern
* Fix unicode decoding problems for environment variables
Version 2.2.1
=============
Release: 2018-06-22
* Allow separator selection when using the "jube info ... -c" option
* Fix internal handling if a script parameter or a template is
evaluated to an empty value
* Fix for different Python3 parsing conflicts
Version 2.2.0
=============
Release: 2017-12-21
* New feature: step cycles. See Step cycle
* New parameter "update_mode". See Parameter update
* Result creation by scanning multiple steps now automatically
creates a combined output
* Speed up of the *JUBE* internal management if a large number of
work packages is used
* *JUBE* 1 conversion tool is not available any more
* New general commandline option "--strict" stops *JUBE* if there is
a version mismatch
* Broken analysis files will now be ignored
* Fix combination of "active" and "shared"
* Fix sorting problem for multiple result columns
* Fix parameter problem, if the continue command is used and the
parameter holds a value having multiple lines
Version 2.1.4
=============
Release: 2016-12-20
* "--id" indices on the commandline can now be negative to count
from the end of the available benchmarks
* *JUBE* now allows a basic auto completion mechanism if using
*BASH*. To activate: "eval "$(jube complete)""
* Fix result sorting bug in Python3
* New "jube_benchmark_rundir" variable which holds the top level
*JUBE* directory (the absolute "outpath" directory)
* Fix CSV output format, if parameter contain linebreaks.
* "active" attribute can now be used in "", "" and
""
* New FAQ entry concerning multiple file analysis: Frequently Asked
Questions
* "" using "mode="shell"" or "mode="perl"" will now stop
program execution if an error occurs (similar to "mode="python"")
* "" specfic "work_dir" is now created automatically if needed
* "directory" attribute in "" and "" was renamed to
"source_dir" (old attribute name is still possible)
* "source_dir" now allows parameter substitution
* New attribute "target_dir" in "" and "" to specify the
target directory path prefix
Version 2.1.3
=============
Release: 2016-09-01
* Fix broken CSV table output style
* Fix "jube_wp_..." parameter handling bug, if these parameter are
used inside another script parameter
* Added new optional argument "suffix="..."" to the "" tag
* Parameter are allowed inside this argument string.
* The evaluated string will be attached to the default
workpackage directory name to allow users to find specific
directories in an easier way (e.g. "000001_stepname_suffix" ).
* The *XML* schema files can now be found inside the "contrib"
folder
* Added new advanced error handling
* JUBE will not stop any more if an error occurs inside a "run"
or "continue". The error will be marked and the corresponding
workpackage will not be touched anymore.
* There is also a "-e"/"--exit" option to overwrite this
behaviour to directly exit if there is an error.
Version 2.1.2
=============
Release: 2016-07-29
* The internal parameter handling is much faster now, especially if
a large number of parameter is used within the same step.
* Fix critical bug when storing environment variables. Environment
variables wasn't read correctly inside a step if this step was only
executed after a "jube continue" run.
* Fix bug inside a "" if it contains any linebreak
* Quotes are added automatically inside the "$jube_wp_envstr"
variable to support spaces in the environment variable argument list
* Combining "-u" and "tags" in a "jube result" run will not filter
the result branches anymore
* Allow lowercase "false" in bool expressions (e.g. the "active"
option)
* Fix bug when using *JUBE* in a *Python3.x* environment
* The "jube help" output was restructed to display separate key
columns instead of a keyword list
* "" can now contain a "default=..." attribute which set
their default value if the pattern can't be found or if it can't be
evaluated
* "null_value=..." was removed from the "" and ""-tag
because the new default attribute matches its behaviour
* Added first *JUBE* FAQ entries to the documentation: Frequently
Asked Questions
* New "active"-attribute inside a ""-tag. The attribute
enables or disables the corresponding step (and all following
steps). It can contain any bool expression and available parameter.
* Fix bug in "" handling if an alternative link name is used
which points to a sub directory
* Added new option "-c / --csv-parametrization" to "jube info"
command to show a workpackage specfic parametrisation by using the
CSV format (similar to the existing "-p" option)
* Allow Shell expansion in "" tags. "" now also support
the "*"
* Restructure internal "" and "" handling
* All example platform files were updated an simplified
Version 2.1.1
=============
Release: 2016-04-14
* *JUBE* will now show only the latest benchmark result by default,
" --id all" must be used to see all results
* Bool expressions can now be used directly in the ""
attribute
* Added "filter" attribute in "
" and "" to show only
specifix result entries (based on a bool expression)
* New "" and "" mode: "mode="shell""
* Allow multiline output in result tables
* Fix wrong group handling if "JUBE_GROUP_NAME" is used
* Scripting parameter (e.g. "mode="python"") can now handle $ to
allow access to environment variables
* Fix $$ bug ($$ were ignored when used within a parameter)
* Fix "$jube_wp_parent_..._id" bug if "$jube_wp_parent_..._id" is
used within another parameter
* Fix bug in std calculation when creating statistical result values
* Fix bug if tags are used within ""
Version 2.1.0
=============
Release: 2015-11-10
* Fix slow verbose mode
* Fix empty debug output file
* Fix broken command line "--include-path" option
* Allow recursive "" and "" handling
(additional include-pathes can now be included by using the
"" tag)
* Allow multiple "" and "" areas
* New "transpose="true"" attribute possible in "