coderunner 0.13.5 → 0.13.6
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/coderunner.gemspec +3 -3
- data/lib/coderunner/system_modules/hopper.rb +4 -4
- data/lib/coderunner/system_modules/loki.rb +11 -8
- metadata +23 -73
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.13.
|
1
|
+
0.13.6
|
data/coderunner.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "coderunner"
|
8
|
-
s.version = "0.13.
|
8
|
+
s.version = "0.13.6"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Edmund Highcock"]
|
12
|
-
s.date = "2013-08-
|
12
|
+
s.date = "2013-08-14"
|
13
13
|
s.description = "CodeRunner is a framework for the automated running and analysis of simulations. It automatically generates any necessary input files, organises the output data and analyses it. Because it is a modular system, it can easily be customised to work with any system and any simulation code. One of its greatest strengths is that it is independent of any one simulation code; thus it can easily plot and compare the data from different codes."
|
14
14
|
s.email = "edmundhighcock@sourceforge.net"
|
15
15
|
s.executables = ["coderunner"]
|
@@ -89,7 +89,7 @@ Gem::Specification.new do |s|
|
|
89
89
|
s.require_paths = ["lib"]
|
90
90
|
s.required_ruby_version = Gem::Requirement.new(">= 1.9.1")
|
91
91
|
s.rubyforge_project = "coderunner"
|
92
|
-
s.rubygems_version = "1.8.
|
92
|
+
s.rubygems_version = "1.8.11"
|
93
93
|
s.summary = "A framework for the automated running and analysis of simulations."
|
94
94
|
|
95
95
|
if s.respond_to? :specification_version then
|
@@ -8,11 +8,11 @@ class CodeRunner
|
|
8
8
|
end
|
9
9
|
def batch_script
|
10
10
|
nodes, ppn = @nprocs.split(/x/)
|
11
|
-
|
11
|
+
eputs "Warning: Underuse of nodes (#{ppn} cores per node instead of #{max_ppn})" if ppn.to_i < max_ppn
|
12
12
|
raise "Please specify project" unless @project
|
13
|
-
|
13
|
+
raise "Error: cores per node cannot excede #{max_ppn}" if ppn.to_i > max_ppn
|
14
14
|
# raise "Error: project (i.e. budget) not specified" unless @project
|
15
|
-
ppn ||=
|
15
|
+
ppn ||= max_ppn
|
16
16
|
if @wall_mins
|
17
17
|
ep @wall_mins
|
18
18
|
hours = (@wall_mins / 60).floor
|
@@ -34,7 +34,7 @@ class CodeRunner
|
|
34
34
|
cd $PBS_O_WORKDIR
|
35
35
|
echo "workdir: $PBS_O_WORKDIR"
|
36
36
|
|
37
|
-
echo "Submitting #{nodes}x#{ppn} job on
|
37
|
+
echo "Submitting #{nodes}x#{ppn} job on Hopper for project #@project..."
|
38
38
|
|
39
39
|
|
40
40
|
EOF
|
@@ -6,13 +6,17 @@ class CodeRunner
|
|
6
6
|
def max_ppn
|
7
7
|
8
|
8
8
|
end
|
9
|
+
|
10
|
+
def mpi_prog
|
11
|
+
"mpiexec -n #{nprocstot}"
|
12
|
+
end
|
13
|
+
|
9
14
|
def batch_script
|
10
15
|
nodes, ppn = @nprocs.split(/x/)
|
11
|
-
|
12
|
-
raise "Please specify project" unless @project
|
13
|
-
|
16
|
+
eputs "Warning: Underuse of nodes (#{ppn} cores per node instead of #{max_ppn})" if ppn.to_i < max_ppn
|
17
|
+
# raise "Please specify project" unless @project
|
18
|
+
raise "Error: cores per node cannot excede #{max_ppn}" if ppn.to_i > max_ppn
|
14
19
|
# raise "Error: project (i.e. budget) not specified" unless @project
|
15
|
-
ppn ||= 4
|
16
20
|
if @wall_mins
|
17
21
|
ep @wall_mins
|
18
22
|
hours = (@wall_mins / 60).floor
|
@@ -24,17 +28,16 @@ class CodeRunner
|
|
24
28
|
<<EOF
|
25
29
|
#!/bin/bash --login
|
26
30
|
#PBS -N #{executable_name}.#{job_identifier}
|
27
|
-
#PBS -l
|
28
|
-
#PBS -l mppnppn=#{ppn}
|
31
|
+
#PBS -l nodes=#{nodes}:ppn=#{ppn}
|
29
32
|
#{@wall_mins ? "#PBS -l walltime=#{sprintf("%02d:%02d:%02d", hours, mins, secs)}" : ""}
|
30
33
|
#{@project ? "#PBS -A #@project" : ""}
|
31
|
-
#PBS -q #{@runner.debug ? "debug" : "
|
34
|
+
#PBS -q #{@runner.debug ? "debug" : "default"}
|
32
35
|
|
33
36
|
### start of jobscript
|
34
37
|
cd $PBS_O_WORKDIR
|
35
38
|
echo "workdir: $PBS_O_WORKDIR"
|
36
39
|
|
37
|
-
echo "Submitting #{nodes}x#{ppn} job on
|
40
|
+
echo "Submitting #{nodes}x#{ppn} job on Loki for project #@project..."
|
38
41
|
|
39
42
|
|
40
43
|
EOF
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coderunner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.13.
|
4
|
+
version: 0.13.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-08-
|
12
|
+
date: 2013-08-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: graphkit
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &75222940 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.2.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 0.2.0
|
24
|
+
version_requirements: *75222940
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: parallelpipes
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &75221570 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: 1.0.0
|
38
33
|
type: :runtime
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: 1.0.0
|
35
|
+
version_requirements: *75221570
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: rubyhacks
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &75220500 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: 0.1.1
|
54
44
|
type: :runtime
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 0.1.1
|
46
|
+
version_requirements: *75220500
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: gsl
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &75443950 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: 1.12.0
|
70
55
|
type: :runtime
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: 1.12.0
|
57
|
+
version_requirements: *75443950
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: gsl_extras
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &75440580 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,15 +65,10 @@ dependencies:
|
|
85
65
|
version: 0.3.0
|
86
66
|
type: :runtime
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: 0.3.0
|
68
|
+
version_requirements: *75440580
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: hostmanager
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &75439830 !ruby/object:Gem::Requirement
|
97
72
|
none: false
|
98
73
|
requirements:
|
99
74
|
- - ! '>'
|
@@ -101,15 +76,10 @@ dependencies:
|
|
101
76
|
version: 0.1.0
|
102
77
|
type: :runtime
|
103
78
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>'
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: 0.1.0
|
79
|
+
version_requirements: *75439830
|
110
80
|
- !ruby/object:Gem::Dependency
|
111
81
|
name: shoulda
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &75438680 !ruby/object:Gem::Requirement
|
113
83
|
none: false
|
114
84
|
requirements:
|
115
85
|
- - ! '>='
|
@@ -117,15 +87,10 @@ dependencies:
|
|
117
87
|
version: '0'
|
118
88
|
type: :development
|
119
89
|
prerelease: false
|
120
|
-
version_requirements:
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
90
|
+
version_requirements: *75438680
|
126
91
|
- !ruby/object:Gem::Dependency
|
127
92
|
name: rdoc
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
+
requirement: &75437620 !ruby/object:Gem::Requirement
|
129
94
|
none: false
|
130
95
|
requirements:
|
131
96
|
- - ~>
|
@@ -133,15 +98,10 @@ dependencies:
|
|
133
98
|
version: '3.12'
|
134
99
|
type: :development
|
135
100
|
prerelease: false
|
136
|
-
version_requirements:
|
137
|
-
none: false
|
138
|
-
requirements:
|
139
|
-
- - ~>
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '3.12'
|
101
|
+
version_requirements: *75437620
|
142
102
|
- !ruby/object:Gem::Dependency
|
143
103
|
name: bundler
|
144
|
-
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirement: &75436770 !ruby/object:Gem::Requirement
|
145
105
|
none: false
|
146
106
|
requirements:
|
147
107
|
- - ! '>'
|
@@ -149,15 +109,10 @@ dependencies:
|
|
149
109
|
version: 1.0.0
|
150
110
|
type: :development
|
151
111
|
prerelease: false
|
152
|
-
version_requirements:
|
153
|
-
none: false
|
154
|
-
requirements:
|
155
|
-
- - ! '>'
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: 1.0.0
|
112
|
+
version_requirements: *75436770
|
158
113
|
- !ruby/object:Gem::Dependency
|
159
114
|
name: jeweler
|
160
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirement: &75463010 !ruby/object:Gem::Requirement
|
161
116
|
none: false
|
162
117
|
requirements:
|
163
118
|
- - ~>
|
@@ -165,12 +120,7 @@ dependencies:
|
|
165
120
|
version: 1.8.4
|
166
121
|
type: :development
|
167
122
|
prerelease: false
|
168
|
-
version_requirements:
|
169
|
-
none: false
|
170
|
-
requirements:
|
171
|
-
- - ~>
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
version: 1.8.4
|
123
|
+
version_requirements: *75463010
|
174
124
|
description: CodeRunner is a framework for the automated running and analysis of simulations.
|
175
125
|
It automatically generates any necessary input files, organises the output data
|
176
126
|
and analyses it. Because it is a modular system, it can easily be customised to
|
@@ -271,7 +221,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
271
221
|
version: '0'
|
272
222
|
requirements: []
|
273
223
|
rubyforge_project: coderunner
|
274
|
-
rubygems_version: 1.8.
|
224
|
+
rubygems_version: 1.8.11
|
275
225
|
signing_key:
|
276
226
|
specification_version: 3
|
277
227
|
summary: A framework for the automated running and analysis of simulations.
|