Class: ServerScripts::Executor::IntelMPI

Inherits:
MPIProgram show all
Defined in:
lib/server_scripts/executor/mpi_program.rb

Instance Attribute Summary collapse

Attributes inherited from MPIProgram

#env, #npernode, #nprocs

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ IntelMPI

Returns a new instance of IntelMPI.



37
38
39
40
# File 'lib/server_scripts/executor/mpi_program.rb', line 37

def initialize(*args)
  super
  @vtune_fname = "DEFAULT_VTUNE"
end

Instance Attribute Details

#enable_itacObject

Returns the value of attribute enable_itac.



34
35
36
# File 'lib/server_scripts/executor/mpi_program.rb', line 34

def enable_itac
  @enable_itac
end

#vtune_fnameObject

Returns the value of attribute vtune_fname.



35
36
37
# File 'lib/server_scripts/executor/mpi_program.rb', line 35

def vtune_fname
  @vtune_fname
end

Instance Method Details

#run_cmdObject



42
43
44
45
46
47
48
49
50
# File 'lib/server_scripts/executor/mpi_program.rb', line 42

def run_cmd
  hydra = @enable_itac ? "mpiexec.hydra -trace" : "mpiexec.hydra"
  cmd = "#{hydra} -ppn #{@npernode} -np #{@nprocs} "
  if @enable_itac
    cmd += "amplxe-cl -trace-mpi –collect hpc-performance –r #{@vtune_fname} "
  end

  cmd
end