diff --git a/tags/drap-v1.91/bin/submitJob b/tags/drap-v1.91/bin/submitJob
index ca2315965ed2732d57e375efc7b1d9f8438f6017..d4cc85b0ef33bf88e74d678aba504eb3a0eea2d8 100755
--- a/tags/drap-v1.91/bin/submitJob
+++ b/tags/drap-v1.91/bin/submitJob
@@ -90,8 +90,11 @@ if ($command) {
 }
 
 (my $h_vmem = $opt->{resources}) =~ s/.*h_vmem=(\d+)G.*/$1/;
-($h_vmem ||= $opt->{options}) =~ s/.*h_vmem=(\d+)G.*/$1/;
-$opt->{queue} ||= $h_vmem && $h_vmem > $node_max_mem ? $mem_queue : $default_queue;
+(my $n_cpu) = $opt->{resources} =~ /.*-pe parallel_\w+ (\d+).*/;
+($h_vmem = $opt->{options}) =~ s/.*h_vmem=(\d+)G.*/$1/ unless ($h_vmem);
+($n_cpu) = $opt->{options} =~ /.*-pe parallel_\w+ (\d+).*/ unless ($n_cpu);
+$n_cpu ||= 1;
+$opt->{queue} ||= $h_vmem && $h_vmem * $n_cpu > $node_max_mem ? $mem_queue : $default_queue;
 $opt->{sync} = 'y' if (defined($opt->{sync}));
 my @arguments;
 foreach my $option (@sge_opt_order) {
diff --git a/trunk/bin/submitJob b/trunk/bin/submitJob
index ca2315965ed2732d57e375efc7b1d9f8438f6017..d4cc85b0ef33bf88e74d678aba504eb3a0eea2d8 100755
--- a/trunk/bin/submitJob
+++ b/trunk/bin/submitJob
@@ -90,8 +90,11 @@ if ($command) {
 }
 
 (my $h_vmem = $opt->{resources}) =~ s/.*h_vmem=(\d+)G.*/$1/;
-($h_vmem ||= $opt->{options}) =~ s/.*h_vmem=(\d+)G.*/$1/;
-$opt->{queue} ||= $h_vmem && $h_vmem > $node_max_mem ? $mem_queue : $default_queue;
+(my $n_cpu) = $opt->{resources} =~ /.*-pe parallel_\w+ (\d+).*/;
+($h_vmem = $opt->{options}) =~ s/.*h_vmem=(\d+)G.*/$1/ unless ($h_vmem);
+($n_cpu) = $opt->{options} =~ /.*-pe parallel_\w+ (\d+).*/ unless ($n_cpu);
+$n_cpu ||= 1;
+$opt->{queue} ||= $h_vmem && $h_vmem * $n_cpu > $node_max_mem ? $mem_queue : $default_queue;
 $opt->{sync} = 'y' if (defined($opt->{sync}));
 my @arguments;
 foreach my $option (@sge_opt_order) {