[Swift-commit] r6542 - SwiftTutorials/OHBM_2013-06-16
wilde at ci.uchicago.edu
wilde at ci.uchicago.edu
Thu Jun 13 10:13:05 CDT 2013
Author: wilde
Date: 2013-06-13 10:13:05 -0500 (Thu, 13 Jun 2013)
New Revision: 6542
Added:
SwiftTutorials/OHBM_2013-06-16/TODO
SwiftTutorials/OHBM_2013-06-16/apps.beagle
SwiftTutorials/OHBM_2013-06-16/makedata.sh
Modified:
SwiftTutorials/OHBM_2013-06-16/README
SwiftTutorials/OHBM_2013-06-16/align.sh
SwiftTutorials/OHBM_2013-06-16/apps
SwiftTutorials/OHBM_2013-06-16/genatlas.swift
SwiftTutorials/OHBM_2013-06-16/sites.xml
SwiftTutorials/OHBM_2013-06-16/swift.properties
Log:
Misc changes; updated README; add beagle and midway site defs; adjust properties.
Modified: SwiftTutorials/OHBM_2013-06-16/README
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/README 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/README 2013-06-13 15:13:05 UTC (rev 6542)
@@ -18,16 +18,30 @@
module load swift
+To generate test data directories:
+
+ ./makedata data_100 100 # create 100 anatomical image volumes in directory data_100
+
To run:
# On localhost:
- swift genatlas.swift
+ swift genatlas.swift # processes data/ directory by default
+ swift genatlas.swift -d=data_100 # process data_100/ directory
# With most parallel work on midway westmere parition:
swift -tc.file apps.midway genatlas.swift
+ # Choices for -tc.file are:
+
+ apps # default, runs on localhost
+ apps.beagle # on beagle, 8 nodes
+ apps.midway # on midway westmere, 1 node
+ apps.amazon # on Amazon EC2 - needs start-coaster-service, see below
+ apps.UC3 # submits to UC3, needs apps to be sent.
+
+
The output files of the workflow are placed under output/,
intermediate files under work/.
Added: SwiftTutorials/OHBM_2013-06-16/TODO
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/TODO (rev 0)
+++ SwiftTutorials/OHBM_2013-06-16/TODO 2013-06-13 15:13:05 UTC (rev 6542)
@@ -0,0 +1,5 @@
+timeseries:
+
+/scratch/midway/wilde/ds107/ds107/sub001/model/model001
+
+
Modified: SwiftTutorials/OHBM_2013-06-16/align.sh
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/align.sh 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/align.sh 2013-06-13 15:13:05 UTC (rev 6542)
@@ -1,7 +1,6 @@
#!/bin/sh
-AIR5=/home/wilde/software/AIR5.3.0
-fsl=/project/wilde/software/fsl-5.0.4/fsl
+#AIR5=/home/wilde/software/AIR5.3.0
# Arguments: referenceImage (in) anatomicalImage (in) reslicedImage (out)
@@ -23,6 +22,8 @@
+fsl=/project/wilde/software/fsl-5.0.4/fsl
+
clean=y
if [ $clean = y ]; then
Modified: SwiftTutorials/OHBM_2013-06-16/apps
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/apps 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/apps 2013-06-13 15:13:05 UTC (rev 6542)
@@ -1,4 +1,5 @@
-localhost sh /bin/sh
+localhost sh /bin/sh null null env::AIR5=/home/wilde/software/AIR5.3.0
+#localhost sh /bin/sh
localhost softmean /home/wilde/software/AIR5.3.0/bin/softmean
localhost slicer /project/wilde/software/fsl-5.0.4/fsl/bin/slicer null null env::FSLOUTPUTTYPE=NIFTI
localhost convert convert
Added: SwiftTutorials/OHBM_2013-06-16/apps.beagle
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/apps.beagle (rev 0)
+++ SwiftTutorials/OHBM_2013-06-16/apps.beagle 2013-06-13 15:13:05 UTC (rev 6542)
@@ -0,0 +1,4 @@
+beagle sh /bin/sh null null env::AIR5=/lustre/beagle/wilde/software/AIR5.3.0
+localhost softmean /home/wilde/software/AIR5.3.0/bin/softmean
+localhost slicer /project/wilde/software/fsl-5.0.4/fsl/bin/slicer null null env::FSLOUTPUTTYPE=NIFTI
+localhost convert convert
Modified: SwiftTutorials/OHBM_2013-06-16/genatlas.swift
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/genatlas.swift 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/genatlas.swift 2013-06-13 15:13:05 UTC (rev 6542)
@@ -5,18 +5,13 @@
file image;
};
-app (Volume alignedVol) align (file alignScript, Volume reference, Volume input)
+app (Volume alignedVol) align (file script, Volume reference, Volume input)
{
- sh @alignScript @filename(reference.image) @filename(input.image) @filename(alignedVol.image);
+ sh @script @filename(reference.image) @filename(input.image) @filename(alignedVol.image);
}
app (Volume atlas) softmean (Volume v[])
{
- softmean @filename(atlas.header) "y" "null" imageNames(v);
-}
-
-app (Volume atlas) softmeanORIG (Volume v[])
-{
softmean @filename(atlas.header) "y" "null" @filenames(v);
}
@@ -30,12 +25,13 @@
convert @i @o;
}
+string dataDir = @arg("d","data");
+file alignScript<"align.sh">;
+
Volume referenceVolume<ext; exec="volmapper",name="data/reference">;
-Volume inputVolumes []<ext; exec="volmapper",prefix="data/anatomy">;
+Volume inputVolumes []<ext; exec="volmapper",prefix=@strcat(dataDir,"/anatomy")>;
Volume outputVolumes[];
-file alignScript<"align.sh">;
-
foreach v, i in inputVolumes {
Volume aligned<ext; exec="volmapper",name=@strcat("work/aligned",i)>;
aligned = align(alignScript,referenceVolume, v);
@@ -54,16 +50,19 @@
zSlice = convert(slicer(atlasVolume,"z"));
+/******* The following code to be removed
-
-
-
string testNames[] = imageNames(outputVolumes);
foreach n, i in testNames {
tracef("testNames[%i] = %s\n", i, n);
}
+app (Volume atlas) softmeanALT (Volume v[]) # A better version
+{
+ softmean @filename(atlas.header) "y" "null" imageNames(v); # puts only the .img on command line
+}
+
(string onames[]) imageNames (Volume v[])
{
string names[] = @filenames(v);
@@ -75,3 +74,4 @@
}
}
+*******/
\ No newline at end of file
Added: SwiftTutorials/OHBM_2013-06-16/makedata.sh
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/makedata.sh (rev 0)
+++ SwiftTutorials/OHBM_2013-06-16/makedata.sh 2013-06-13 15:13:05 UTC (rev 6542)
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+datadir=${1:-data_10}
+nfiles=${2:-10}
+
+rm -rf $datadir
+mkdir $datadir
+cp data/anatomy1.{hdr,img} $datadir
+
+n=0
+( cd $datadir
+ mv anatomy1.hdr s.hdr
+ mv anatomy1.img s.img
+ for id in $(seq -w 000 999); do
+ n=$((n+1))
+ if [ $n -gt $nfiles ]; then
+ break;
+ else
+ ln s.img anatomy$id.img
+ ln s.hdr anatomy$id.hdr
+ fi
+ done
+ rm s.{img,hdr}
+)
Property changes on: SwiftTutorials/OHBM_2013-06-16/makedata.sh
___________________________________________________________________
Added: svn:executable
+ *
Modified: SwiftTutorials/OHBM_2013-06-16/sites.xml
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/sites.xml 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/sites.xml 2013-06-13 15:13:05 UTC (rev 6542)
@@ -5,6 +5,7 @@
<profile namespace="karajan" key="initialScore">10000</profile>
<filesystem provider="local"/>
<workdirectory>/scratch/midway/{env.USER}/swiftwork</workdirectory>
+ <profile namespace="swift" key="stagingMethod">file</profile>
<profile namespace="karajan" key="jobThrottle">.03</profile> <!-- eg .11 -> 12 -->
</pool>
@@ -38,4 +39,24 @@
<profile namespace="karajan" key="initialScore">10000</profile>
</pool>
+ <pool handle="beagle">
+ <execution provider="coaster" jobmanager="ssh-cl:pbs" url="login.beagle.ci.uchicago.edu"/>
+ <profile namespace="globus" key="jobsPerNode">24</profile>
+ <profile namespace="globus" key="lowOverAllocation">100</profile>
+ <profile namespace="globus" key="highOverAllocation">100</profile>
+ <profile namespace="globus" key="providerAttributes">pbs.aprun;pbs.mpp;depth=24</profile>
+ <!-- to use a beage reservation, eg:
+ <profile namespace="globus" key="providerAttributes">pbs.aprun;pbs.mpp;depth=24;pbs.resource_list=advres=wilde.1768</profile>
+ -->
+ <profile namespace="globus" key="maxtime">3600</profile>
+ <profile namespace="globus" key="maxWalltime">00:05:00</profile>
+ <profile namespace="globus" key="userHomeOverride">/lustre/beagle/{env.USER}/swiftwork</profile>
+ <profile namespace="globus" key="slots">20</profile>
+ <profile namespace="globus" key="maxnodes">1</profile>
+ <profile namespace="globus" key="nodeGranularity">1</profile>
+ <profile namespace="karajan" key="jobThrottle">4.80</profile>
+ <profile namespace="karajan" key="initialScore">10000</profile>
+ <workdirectory>/tmp/{env.USER}/swiftwork</workdirectory>
+ </pool>
+
</config>
Modified: SwiftTutorials/OHBM_2013-06-16/swift.properties
===================================================================
--- SwiftTutorials/OHBM_2013-06-16/swift.properties 2013-06-13 13:43:03 UTC (rev 6541)
+++ SwiftTutorials/OHBM_2013-06-16/swift.properties 2013-06-13 15:13:05 UTC (rev 6542)
@@ -3,12 +3,12 @@
tc.file=apps
status.mode=provider
-use.provider.staging=false
+use.provider.staging=true
use.wrapper.staging=false
wrapperlog.always.transfer=true
execution.retries=0
lazy.errors=false
-provider.staging.pin.swiftfiles=false
+provider.staging.pin.swiftfiles=true
sitedir.keep=true
file.gc.enabled=false
#tcp.port.range=50000,51000
More information about the Swift-commit
mailing list