!**************************************************************************************

     General Information
     -------------------

This is a benchmark workload for DFT code FLEUR.
The workload consists of several test systems:

 !---------------------------------------------------------------------------------------------------!
 ! Name  ! # k-points ! real/complex ! # atoms ! # val.electrons !   nvd   !  LOs  !  lmax  !  Kmax  ! 
 !---------------------------------------------------------------------------------------------------!
 ! DyTiO !     48     !      c       !    20   !       256       !   1967  !   +   !   10   !   4.2  !
 ! NaCl  !      1     !      c       !    64   !       192       !   6217  !   -   !   10   !   3.5  !
 ! AuAg  !      1     !      c       !   108   !      1188       !  15468  !   -   !   10   !   4.2  !
 ! CoCu  !      1     !      c, spins!   144   !      1536       !  13307  !   -   !   10   !   4.1  !
 ! CuAg  !      1     !      c       !   256   !      2816       !  23724  !   -   !   10   !   4.1  !
 !  Si   !      1     !      r       !   512   !      2048       !  55632  !   -   !    8   !   3.6  !
 ! GaAs  !      1     !      c       !   512   !      7168       !  60391  !   +   !    8   !   3.6  !
 ! TiO   !      1     !      c       !   995   !      7294       !  65813  !   +   !    6   !   3.5  !
 ! TiO2  !      1     !      c       !   1078  !      8628       ! 101858  !   +   !    8   !   4.3  !
 !---------------------------------------------------------------------------------------------------!

To run this workload you definitely need JUBE and FLEUR.
You also might need HDF5 and ELPA libraries.
The release MaXR2.0 is default for this workload. 
Other versions should also work, but the automatic time extraction from output files may fail.


!*****************************************************************************************************

      Quick Start (for JURECA, JUQUEEN or CLAIX)
      ---------------------------------

1. Make sure you have FLEUR and JUBE installed.

2. Provide the path to and arguments of your executable in the file "./executable.xml"

3. Change directory.  
   $ cd fleur_BlaBla ("BlaBla" being the test case of interest)

4. Run the benchmark.
   $ jube run fleur.xml --tag jureca      ! on JURECA
   $ jube run fleur.xml --tag jureca_boo  ! on JURECA booster
   $ jube run fleur.xml --tag juqueen     ! on JUQUEEN
   $ jube run fleur.xml --tag claix       ! on CLAIX, usual nodes
   $ jube run fleur.xml --tag rwth        ! on CLAIX, old bull cluster

5. You can check if the job is ready by
   $ jube continue FLEUR_bench

6. Run the analysis of output data:
   $ jube analyse FLEUR_bench

7. Get the table with the time measurenments:
   $ jube result FLEUR_bench -i last 



!**************************************************************************************

       Not-That-Quick Start
       -------------------- 

The directory "platforms" contains script prototypes for specific machines. 
Known machines are JURECA, JURECA booster, JUQUEEN (Forschungszentrum Juelich), 
CLAIX (RWTH cluster) and RWTH (old RWTH cluster).

The file "executable.xml" contains information about your executable.
You have to set the path to your executable (variable "executable").
If you are using executable with arguments, add them to the variable "args_exec".
If you are using CLAIX and you want to use ELPA library, provide the path to it in the variable "LD_elpa_path"
If you are using one of the known machines, use the provided tags (--tag jureca/claix/rwth).
If you are using another machine, you have to configure the prototypes , put them in the "platform" directory,
and add the corresponding tag.

The directories "fleur_BlaBla" contain scripts and data relevant for the test system "BlaBla"

If you are using one of the known machines, 
please check if you are happy with the modules and evironment in the batch job prototype (../platforms/MACHINE/batch_job.in).

Parameters of you job are set in the file "job_congig.xml".
      "timelimit_hm"   is the time limit in hours:minutes
      "nodes"          is the number of nodes   
      "taskspernode"   is the number of MPI processes per node
      "threadspertask" is the number of OpenMP threads per MPI process
      "memoryptask"    is the memory limit per MPI process (relevant for CLAIX)
      "tasks"          is the whole number of MPI processes, will be calculated
If you set several values to the same parameter, the benchmark will run multiple times to iterate over all possible parameter combinations.

How to start the batch jobs:
on JURECA
$ jube run fleur.xml --tag jureca
on JURECA booster
$ jube run fleur.xml --tag jureca_boo
on JUQUEEN
$ jube run fleur.xml --tag juqueen
on CLAIX
$ jube run fleur.xml --tag claix
on CLAIX, old bull cluster
$ jube run fleur.xml --tag rwth

Jube will create a directory FLEUR_bench.
Every benchmark get its id.
For example, data produced for the benchmark with id 1 cam be found in the directory fleur_BlaBla/FLEUR_bench/000001

You can check if the batch jobs are ready:
$ jube continue FLEUR_bench

If you started several benchmarks with the same test system, use its id:
$ jube continue FLEUR_bench -i id

How to analyse the data:
$ jube analyse FLEUR_bench [-i id]

How to get the timing table:
$ jube result FLEUR_bench [-i id] 



!**************************************************************************************
          
         Contact
         -------


If you have some questions or suggestions, please do not hesitate to contact me:

       u.alekseeva@fz-juelich.de


!**************************************************************************************

U.Alekseeva  ////  November  2017
