wiki:Public/User_Guide/JUBE

Version 4 (modified by Cristina Manzano, 8 years ago) (diff)

Integrate applications in JUBE

Introduction

  • JUBE Benchmarking Environment: provides a script based framework to easily create benchmark sets, run those sets on different computer systems and evaluate the results.
  • Documentation: http://apps.fz-juelich.de/jsc/jube/jube2/docu/index.html
  • Current version available in the DEEP and DEEP-ER systems: 2.1.0
  • Example commands:
ssh user@deep

$ jube2 info benchmark_directory
$ jube2 status benchmark_directory [-i run_id]
$ jube2 run benchmark_xml_file [--tag tag1 tag2 ...]
$ jube2 analyse benchmark_directory [-i run_id]
$ jube2 result benchmark_directory [-i run_id]

Example application

ssh manzano@deep

cd /usr/local/deep-er/sdv-benchmarks/applications/MAXW-DGTD

Compile

See for instance the JUBE xml file of the example application:

vim MAXW-DGTD-jube-master-SDV.compile.xml

Important parts in the file are:

1) Platform

  <include-path>
    <path>/usr/local/jube2/platform/deep</path>
  </include-path>

Under /usr/local/jube2/platform/deep there are a series of files with default values for the DEEP and DEEP-ER systems:

deep-chainJobs.sh
submit.job.in
platform.xml

These files won't be modified but the default values can be overwritten in the JUBE xml file.

2) Source files

    <fileset name="sources">
      <copy>MAXW-DGTD.tar.gz</copy>
      <prepare>tar -xzf MAXW-DGTD.tar.gz</prepare>
    </fileset>

The source files will be copied to the work directory and untar before the compilation.

3) Parameterset

    <parameterset init_with="MAXW-DGTD_specs.xml" name="systemParameter">
      <parameter name="modules">intel/15.2.164 parastation/intel-5.1.4-1_1_g064e3f7</parameter>
      <parameter name="targetdir">$jube_benchmark_home/executable/k$k</parameter>
      <parameter name="FC" type="string" >mpif90</parameter>
      <parameter name="FFLAGS" type="string" >-align dcommons -openmp -no-opt-prefetch -O3 -r8 -axCORE-AVX2 -fpp</parameter>
    </parameterset>

The values in the set of parameters with name "systemParamter" will be initialized with the default values found in the file "MAXW-DGTD_specs.xml". This last file takes in turn some of the default values of platform.xml and overwrites them. See the file for more information.

4) Step compile

    <step name="compile">
      <use>sources</use>
      <use from="MAXW-DGTD_specs.xml">MAXW-DGTDMakefileFile</use>
      <use from="platform.xml">compileset</use>
      <use>systemParameter</use>
      <use>MAXW-DGTDParameter-head</use>
      <use from="MAXW-DGTD_specs.xml">MAXW-DGTDMakefileSub</use>
      <do>module purge; module load $modules; export LD_LIBRARY_PATH=/opt/parastation/mpi2/lib:/usr/local/deep-er/sdv-benchmarks/libraries/scr/lib:/direct/Software/Extoll/SDV/lib:/usr/local/parastation/pscom/lib64:$LD_LIBRARY_PATH; cd MAXW-DGTD; rm -f Makefile; cp -p ../Makefile.out Makefile; make $k</do>
    </step>