<?xml version="1.0"?>

<moduleArgs>
    <version>
	    <flag attr="$Id$"/>
    </version>
    <defaultMinThreads>
        <minthreads attr="14"/>
    </defaultMinThreads>
    <reducedMinThreads>
        <minthreads attr="6"/>
    </reducedMinThreads>
    <largeNodeBigMem>
        <flag attr="-maxmem"     val0="248" display="Large+BigMem job maximum memory (Gb)" tab="MQR:ASSEMBLE" group="Global memory options" default0="256" description="Maximum RAM memory in Gb to use for large+bigmem (Assembly,alignmol,alignmolvref,SV) job"/>
	<flag attr="-maxmemIncrease" val0="16"/>
	<flag attr="-maxvirtmem" val0="0" />
    </largeNodeBigMem>
    <largeNodeMem2>
        <flag attr="-maxmem"     val0="248" display="Large jobs maximum memory (Gb)" tab="MQR:ASSEMBLE" group="Global memory options" default0="256" description="Maximum amount of RAM memory in Gb to use for merge jobs"/>
	<flag attr="-maxmemIncrease" val0="16"/>
	<flag attr="-maxvirtmem" val0="0" />
    </largeNodeMem2>
    <largeNodeMem>
        <flag attr="-maxmem"     val0="120" display="Large job maximum memory (Gb)" tab="MQR:ASSEMBLER" group="Global memory options" default0="128" description="Maximum RAM memory in Gb to use for large jobs : 1 Characterize OR autoNoise job OR 2 mediumHost jobs (large refine jobs with pipeline option -f)"/>
	<flag attr="-maxmemIncrease" val0="8"/>
	<flag attr="-maxvirtmem" val0="0" />
    </largeNodeMem>
    <tinyNodeMem>
        <flag attr="-maxmem"     val0="32" display="Small jobs maximum total memory (Gb)" tab="ASSEMBLE" group="Global memory options" default0="32" description="Total RAM memory in Gb to use for 4 small Refine jobs"/>
	<flag attr="-maxmemIncrease" val0="1"/>
	<flag attr="-maxvirtmem" val0="0" />
    </tinyNodeMem>
    <splitNodeMem>
        <flag attr="-maxmem"     val0="32" display="Pairwise jobs maximum memory (Gb)" tab="ASSEMBLE" group="Global memory options" default0="32" description="Total RAM memory in Gb to use for 2 pairwise or 1 stage0 jobs"/>
	<flag attr="-maxmemIncrease" val0="1"/>
	<flag attr="-maxvirtmem" val0="0" />
    </splitNodeMem>
    <largeJobMem>
        <flag attr="-pe" val0="smplargest" val1="$halfthreadsP1"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </largeJobMem>
    <largeJob>
        <flag attr="-pe" val0="smplarge" val1="$numthreadsM1"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </largeJob>
    <largeHostJob>
        <flag attr="-pe" val0="smplargest" val1="$halfthreadsP1"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </largeHostJob>
    <mediumHostJob>
    	<flag attr="-p" val0="-500"/>
        <flag attr="-pe" val0="smplarge" val1="$halfthreadsM1"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </mediumHostJob>
    <job1>
        <flag attr="-pe" val0="smp" val1="1"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </job1>
    <job48>
  	<flag attr="-p" val0="-500"/>
        <flag attr="-pe" val0="smp" val1="$numthreads"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </job48>
    <job24>
    	<flag attr="-p" val0="-1000"/>
        <flag attr="-pe" val0="smp" val1="$halfthreads"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </job24>
    <job12>
    	<flag attr="-p" val0="-1000"/>
        <flag attr="-pe" val0="smp" val1="$sixththreads"/>
        <flag attr="-ac" val0="status=$status_log_filename"/>
    </job12>
    <sampleChar>
      <include val0="largeJob"/>
    </sampleChar>
    <hash>
      <include val0="largeJob"/>
    </hash>
    <splitting>
      <include val0="largeJob"/>
    </splitting>
    <autoNoise0>
      <include val0="largeJob"/>
    </autoNoise0>
    <autoNoise1>
      <include val0="largeJob"/>
    </autoNoise1>
    <pairwise>
      <include val0="job24"/>
    </pairwise>
    <cmapMerge>
      <include val0="job1"/>
    </cmapMerge>
    <assembly>
      <include val0="largeJobMem"/>
    </assembly>
    <refineA>
      <include val0="job12"/>
    </refineA>
    <refineAMinThreads>
      <include val0="defaultMinThreads"/>
    </refineAMinThreads>
    <refineB>
      <include val0="job12"/>
    </refineB>
    <refineB0>
      <include val0="job24"/>
    </refineB0>
    <refineB1>
      <include val0="job12"/>
    </refineB1>
    <refineB1MinThreads>
       <include val0="defaultMinThreads"/>
    </refineB1MinThreads>
    <refineNGS>
      <include val0="job12"/>
    </refineNGS>
    <refineFinal>
      <include val0="job12"/>
    </refineFinal>
    <refineFinal0>
      <include val0="job24"/>
    </refineFinal0>
    <refineFinal1>
      <include val0="job12"/>
    </refineFinal1>
    <refineFinal1MinThreads>
       <include val0="defaultMinThreads"/>
    </refineFinal1MinThreads>
    <extension>
      <include val0="job12"/>
    </extension>
    <extension0>
      <include val0="job24"/>
    </extension0>
    <extension1>
      <include val0="job12"/>
    </extension1>
    <extension1MinThreads>
       <include val0="reducedMinThreads"/>
    </extension1MinThreads>
    <merge>
      <include val0="largeJobMem"/>
    </merge>
    <characterizeDefault>
      <flag attr="-p" val0="-500"/>
      <include val0="largeHostJob"/>
    </characterizeDefault>
    <characterizeStrict>
      <flag attr="-p" val0="-1000"/>
      <include val0="largeHostJob"/>
    </characterizeStrict>
    <alignmol>
      <include val0="largeJobMem"/>
    </alignmol>
    <alignmolvref>
      <flag attr="-p" val0="-1000"/>
      <include val0="largeJobMem"/>
    </alignmolvref>
    <svdetect>
      <include val0="largeJobMem"/>
    </svdetect>
    <svdetectMinThreads>
       <include val0="defaultMinThreads"/>
    </svdetectMinThreads>
</moduleArgs>
