Index: /issm/trunk/src/c/modules/Solverx/Solverx.cpp
===================================================================
--- /issm/trunk/src/c/modules/Solverx/Solverx.cpp	(revision 5978)
+++ /issm/trunk/src/c/modules/Solverx/Solverx.cpp	(revision 5979)
@@ -56,4 +56,6 @@
 	 * using the petscrc string recover in the parameters: */
 	#ifdef _SERIAL_
+		
+		parameters->FindParam(&petscrc,PetscRcEnum);
 		PetscOptionsInsertMultipleString(petscrc);
 
Index: /issm/trunk/src/m/model/LaunchQueueJob.m
===================================================================
--- /issm/trunk/src/m/model/LaunchQueueJob.m	(revision 5978)
+++ /issm/trunk/src/m/model/LaunchQueueJob.m	(revision 5979)
@@ -30,6 +30,8 @@
 	issmscpout(md.cluster.name,md.cluster.executionpath,md.cluster.login,md.cluster.port,{[md.runtimename '.tar.gz']});
 
-	disp('launching solution sequence on remote cluster');
-	issmssh(md.cluster.name,md.cluster.login,md.cluster.port,LaunchCommand(md.cluster,md.runtimename,md.name));
+	if strcmpi(options.upload,'off'),
+		disp('launching solution sequence on remote cluster');
+		issmssh(md.cluster.name,md.cluster.login,md.cluster.port,LaunchCommand(md.cluster,md.runtimename,md.name));
+	end
 
 else
Index: /issm/trunk/src/m/model/process_solve_options.m
===================================================================
--- /issm/trunk/src/m/model/process_solve_options.m	(revision 5978)
+++ /issm/trunk/src/m/model/process_solve_options.m	(revision 5979)
@@ -34,4 +34,5 @@
 outoptions.analysis_type=analysis_type;
 outoptions.sub_analysis_type=sub_analysis_type;
+outoptions.upload=getfieldvalue(options,'upload','off');
 
 %  process qmu arguments
Index: /issm/trunk/src/m/model/solveparallel.m
===================================================================
--- /issm/trunk/src/m/model/solveparallel.m	(revision 5978)
+++ /issm/trunk/src/m/model/solveparallel.m	(revision 5979)
@@ -24,22 +24,25 @@
 LaunchQueueJob(md,options);
 
-%Do we return, or just wait for results?
-if (md.waitonlock~=0 &  ~strcmpi(options.batch,'yes')),
-	%we wait for the done file
-	islock=waitonlock(md);
-	if islock==0,
-		%no results to be loaded
-		disp('The results must be loaded manually with md=loadresultsfromcluster(md).');
-	else
-		%load results
-		displaystring(md.verbose,'loading results from cluster');
-		md=loadresultsfromcluster(md);
+if ~strcmpi(options.upload,'on'), %did we even try to run? if so, wait on lock
+
+	%Do we return, or just wait for results?
+	if (md.waitonlock~=0 &  ~strcmpi(options.batch,'yes')),
+		%we wait for the done file
+		islock=waitonlock(md);
+		if islock==0,
+			%no results to be loaded
+			disp('The results must be loaded manually with md=loadresultsfromcluster(md).');
+		else
+			%load results
+			displaystring(md.verbose,'loading results from cluster');
+			md=loadresultsfromcluster(md);
+		end
+	end
+
+	%post processes qmu results if necessary
+	if md.qmu_analysis,
+		system(['rm -rf qmu' num2str(GetPId)]);
 	end
 end
 
-%post processes qmu results if necessary
-if md.qmu_analysis,
-	system(['rm -rf qmu' num2str(GetPId)]);
-end
 
-
