// File: /workspace/github_cpp_makefile_star2_O2/richardposner[P]BioNetFit2/src/code/Swarm.cpp
// Function: Swarm::generateMPICommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
string Swarm::generateMPICommand(string cmd) {

	//sbatch << "mpirun -prepend-rank -np 1 " << runCmd << " load " << sConf_ << " : -np " << options.swarmSize << " " << runCmd << " particle 0 run " << sConf_ << endl;
	string newCmd = "mpirun -nooversubscribe ";
	if (options.hostfile.size()) {
		newCmd += "-hostfile " + options.hostfile + " ";
	}
	cout<<"Swarm::generateMPICommand may need some modifications 654\n";
	newCmd += "-tag-output -np 1 " + cmd + " -a load -c " + sConf_[0] + " : -nooversubscribe ";
	if (options.hostfile.size()) {
		newCmd += "-hostfile " + options.hostfile + " ";
	}
	cout<<"Swarm::generateMPICommand may need some modifications 654\n";
	newCmd += "-tag-output -np " + toString(options.swarmSize) + " " + cmd + " -t particle -p 0 -a run -c" + sConf_[0];

	if (options.saveClusterOutput) {
		newCmd += " > " + options.outputDir + "/" + options.jobName + "_cluster_output/" + options.jobName + " 2>&1";
	}
	return newCmd;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0xc8, %rsp
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x60867(%rip), %rsi     # 0xde323
leaq 0x8(%rsp), %rdx
callq 0x33402
leaq 0x17c0(%r14), %r12
cmpq $0x0, 0x17c8(%r14)
je 0x7db22
leaq 0x6085e(%rip), %rsi     # 0xde33c
leaq 0x28(%rsp), %rdi
movq %r12, %rdx
callq 0x3338b
leaq 0x61b1b(%rip), %rdx     # 0xdf60d
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x3336c
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x294d0
leaq 0x8(%rsp), %rdi
callq 0x295a0
leaq 0x28(%rsp), %rdi
callq 0x295a0
movq 0xe846f(%rip), %rdi     # 0x165f98
leaq 0x60817(%rip), %rsi     # 0xde347
callq 0x289f0
leaq 0x60c1b(%rip), %rsi     # 0xde757
leaq 0x48(%rsp), %rdi
movq %r15, %rdx
callq 0x3338b
leaq 0x60832(%rip), %rdx     # 0xde382
leaq 0x68(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x3336c
movq 0x1938(%r14), %rdx
leaq 0x28(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x334ce
leaq 0x60813(%rip), %rdx     # 0xde38f
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x3336c
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x294d0
leaq 0x8(%rsp), %rdi
callq 0x295a0
leaq 0x28(%rsp), %rdi
callq 0x295a0
leaq 0x68(%rsp), %rdi
callq 0x295a0
leaq 0x48(%rsp), %rdi
callq 0x295a0
cmpq $0x0, 0x17c8(%r14)
je 0x7dc15
leaq 0x6076b(%rip), %rsi     # 0xde33c
leaq 0x28(%rsp), %rdi
movq %r12, %rdx
callq 0x3338b
leaq 0x61a28(%rip), %rdx     # 0xdf60d
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x3336c
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x294d0
leaq 0x8(%rsp), %rdi
callq 0x295a0
leaq 0x28(%rsp), %rdi
callq 0x295a0
movq 0xe837c(%rip), %rdi     # 0x165f98
leaq 0x60724(%rip), %rsi     # 0xde347
callq 0x289f0
movl 0x1620(%r14), %esi
leaq 0x88(%rsp), %rdi
callq 0x9e9c3
leaq 0x60761(%rip), %rsi     # 0xde3a4
leaq 0xa8(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0x4933b
leaq 0x619ae(%rip), %rdx     # 0xdf60d
leaq 0x48(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x3336c
leaq 0x68(%rsp), %rdi
leaq 0x48(%rsp), %rsi
movq %r15, %rdx
callq 0x334ce
leaq 0x6072b(%rip), %rdx     # 0xde3b5
leaq 0x28(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x3336c
movq 0x1938(%r14), %rdx
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x334ce
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x294d0
leaq 0x8(%rsp), %rdi
callq 0x295a0
leaq 0x28(%rsp), %rdi
callq 0x295a0
leaq 0x68(%rsp), %rdi
callq 0x295a0
leaq 0x48(%rsp), %rdi
callq 0x295a0
leaq 0xa8(%rsp), %rdi
callq 0x295a0
leaq 0x88(%rsp), %rdi
callq 0x295a0
cmpb $0x1, 0x1770(%r14)
jne 0x7ddec
leaq 0x1500(%r14), %rdx
leaq 0x5ecae(%rip), %rsi     # 0xdc9c8
leaq 0x88(%rsp), %rdi
callq 0x3338b
leaq 0x5fc89(%rip), %rdx     # 0xdd9b7
leaq 0xa8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x3336c
addq $0x14c0, %r14           # imm = 0x14C0
leaq 0x48(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
movq %r14, %rdx
callq 0x334ce
leaq 0x6066b(%rip), %rdx     # 0xde3d1
leaq 0x68(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x3336c
leaq 0x28(%rsp), %rdi
leaq 0x68(%rsp), %rsi
movq %r14, %rdx
callq 0x334ce
leaq 0x58d6a(%rip), %rdx     # 0xd6af8
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x3336c
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x294d0
leaq 0x8(%rsp), %rdi
callq 0x295a0
leaq 0x28(%rsp), %rdi
callq 0x295a0
leaq 0x68(%rsp), %rdi
callq 0x295a0
leaq 0x48(%rsp), %rdi
callq 0x295a0
leaq 0xa8(%rsp), %rdi
callq 0x295a0
leaq 0x88(%rsp), %rdi
callq 0x295a0
movq %rbx, %rax
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
jmp 0x7de3c
jmp 0x7de4b
jmp 0x7de5a
jmp 0x7de69
jmp 0x7de78
jmp 0x7de92
jmp 0x7ded7
jmp 0x7de1b
jmp 0x7de2a
jmp 0x7ded7
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x295a0
jmp 0x7de2d
movq %rax, %r14
leaq 0x28(%rsp), %rdi
jmp 0x7dece
jmp 0x7ded7
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x295a0
jmp 0x7de4e
movq %rax, %r14
leaq 0x28(%rsp), %rdi
callq 0x295a0
jmp 0x7de5d
movq %rax, %r14
leaq 0x68(%rsp), %rdi
callq 0x295a0
jmp 0x7de6c
movq %rax, %r14
leaq 0x48(%rsp), %rdi
callq 0x295a0
jmp 0x7de7b
movq %rax, %r14
leaq 0xa8(%rsp), %rdi
callq 0x295a0
leaq 0x88(%rsp), %rdi
jmp 0x7dece
movq %rax, %r14
jmp 0x7de88
jmp 0x7ded7
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x295a0
jmp 0x7deab
movq %rax, %r14
leaq 0x28(%rsp), %rdi
callq 0x295a0
jmp 0x7deba
movq %rax, %r14
leaq 0x68(%rsp), %rdi
callq 0x295a0
jmp 0x7dec9
movq %rax, %r14
leaq 0x48(%rsp), %rdi
callq 0x295a0
jmp 0x7deda
jmp 0x7ded7
movq %rax, %r14
movq %rbx, %rdi
callq 0x295a0
movq %r14, %rdi
callq 0x292f0