Changes between Version 15 and Version 16 of Public/User_Guide/JUBE


Ignore:
Timestamp:
Aug 5, 2016, 5:44:16 PM (8 years ago)
Author:
Cristina Manzano
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Public/User_Guide/JUBE

    v15 v16  
    331331
    332332and all jobs have in their sandbox a soft link called "shared" pointing to ./benchmarks_modules_test/benchmark_id/execute_shared.
     333
     3345) Analyse
     335
     336{{{
     337    <analyzer name="analyse" >
     338      <use from="MAXW-DGTD_specs.xml">pattern</use>
     339      <analyse step="execute">
     340        <file>exe/maxdg3DP$k.out</file>
     341        <file>job.log</file>
     342      </analyse>
     343    </analyzer>
     344}}}
     345
     346After the job has run, you can analyse the results with:
     347
     348{{{
     349jube2 analyse benchmarks_modules_test --id jube_id
     350}}}
     351
     352The analyse step will look for the corresponding patterns in the output files, in this case exe/maxdg3DP$k.out and job.log, and the data will be stored inside the benchmark directory. The patterns to look for are specified in the MAXW-DGTD_specs.xml file:
     353
     354{{{
     355  <patternset name="pattern">
     356    <pattern name="fluxpvector" unit="W" type="float">\s*Flux of the Poynting vector :\s+$jube_pat_wrd\s*</pattern>
     357
     358    <pattern name="attau" unit="m" type="float">\s*AT TAU =\s+$jube_pat_wrd\s*</pattern>
     359    <pattern name="t" unit="nsec" type="float">\s*T =\s+$jube_pat_wrd\s*</pattern>
     360    <pattern name="iterations" unit="" type="int">\s*USING\s+$jube_pat_wrd\s*</pattern>
     361    <pattern name="maxcputime" unit="sec" type="float">\s*MAX CPU TIME    :\s+$jube_pat_wrd\s*</pattern>
     362    <pattern name="realtime" unit="sec" type="float">\s*REAL TIME       :\s+$jube_pat_wrd\s*</pattern>
     363    <pattern name="timetosolution" unit="sec" type="float">\s*TIME TO SOLUTION:\s+$jube_pat_wrd\s*</pattern>
     364    <pattern name="iotime" unit="sec" type="float">\s*I/O TIME        :\s+$jube_pat_wrd\s*</pattern>
     365    <pattern name="electrtime" unit="sec" type="float">\s*ELECTR TIME     :\s+$jube_pat_wrd\s*</pattern>
     366    <pattern name="omptime" unit="sec" type="float">\s*OMP TIME        :\s+$jube_pat_wrd\s*</pattern>
     367    <pattern name="tfluxelectr" unit="sec" type="float">\s*T FLUX ELECTR   :\s+$jube_pat_wrd\s*</pattern>
     368    <pattern name="tfluxmagnet" unit="sec" type="float">\s*T FLUX MAGNET   :\s+$jube_pat_wrd\s*</pattern>
     369    <pattern name="tupelectr" unit="sec" type="float">\s*T UP ELECTR     :\s+$jube_pat_wrd\s*</pattern>
     370    <pattern name="tupmagnet" unit="sec" type="float">\s*T UP MAGNET     :\s+$jube_pat_wrd\s*</pattern>
     371    <pattern name="tfourier" unit="sec" type="float">\s*T FOURIER       :\s+$jube_pat_wrd\s*</pattern>
     372
     373    <pattern name="starttime" type="string" >\(start\)$jube_pat_bl($jube_pat_wrd$jube_pat_bl$jube_pat_wrd)</pattern>
     374    <pattern name="stoptime"  type="string" >^\s*\(finished\)\s*(.*)\s*\(</pattern>
     375  </patternset>
     376}}}
     377
     378If there are multiple matches inside a single file you can add a reduce option. Normally only the first match will be extracted. See https://apps.fz-juelich.de/jsc/jube/jube2/docu/glossar.html#term-pattern-tag for more information.
     379
     3806) Result
     381
     382{{{
     383    <result>
     384      <use>analyse</use>
     385      <table name="result" style="pretty" sort="jube_wp_id">
     386        <column>modules</column>
     387        <column>iopath</column>
     388        <column>iotime</column>
     389        <column>starttime</column>
     390        <column>stoptime</column>
     391      </table>
     392    </result>
     393
     394}}}
     395
     396The last part is the result table creation. Here you have to use an existing analyser. The <column> contains a pattern or a parameter name. sort is the optional sorting order (separated by ,). The style attribute can be csv or pretty to get different ASCII representations. To create the result table you have to write:
     397
     398{{{
     399jube2 result benchmarks_modules_test --id jube_id
     400}}}
     401
     402The result table will be written to STDOUT and into a result.dat file inside ./benchmarks_modules_test/benchmark_id/result.