mpi

package
v0.0.0-...-6575c9b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2019 License: BSD-3-Clause Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IntelInstallPathPrefix = "compilers_and_libraries/linux/mpi/intel64"
)

Constants related to Intel MPI

Variables

This section is empty.

Functions

func CreateContainer

func CreateContainer(mpiCfg *Config, sysCfg *sys.Config) error

CreateContainer creates a container based on a MPI configuration

func GenerateDeffile

func GenerateDeffile(mpiCfg *Config, sysCfg *sys.Config) error

GenerateDeffile generates the definition file for a MPI container.

func GetExtraMpirunArgs

func GetExtraMpirunArgs(mpiCfg *Config) []string

GetExtraMpirunArgs returns all the required additional arguments required to use mpirun for a given configuration of MPI

func GetPathToMpirun

func GetPathToMpirun(mpiCfg *Config) string

GetPathToMpirun returns the path to mpirun based a configuration of MPI

func SetupIntelInstallScript

func SetupIntelInstallScript(mpiCfg *Config, sysCfg *sys.Config) error

SetupIntelInstallScript creates the install script for Intel MPI

Types

type Config

type Config struct {
	// MpiImplm is the MPI implementation ID (e.g., OMPI, MPICH)
	MpiImplm string
	// MpiVersion is the Version of the MPI implementation to use
	MpiVersion string
	// URL to use to download the tarball
	URL string

	// BuildDir is the path to the directory where to compile
	BuildDir string
	// InstallDirectory is the path to the directory where to install the compiled software
	InstallDir string
	// Deffile is the path to the definition file used to create MPI container
	DefFile string
	// ContainerName is the name of the container's image file
	ContainerName string
	// ContainerPath is the Path to the container image
	ContainerPath string
	// TestPath is the path to the test to run within the container
	TestPath string
	// Distro is the ID of the Linux distro to use in the container
	Distro string
	// ImageURL is the URL to use to pull an image
	ImageURL string
	// contains filtered or unexported fields
}

Config represents a configuration of MPI for a target platform

type ExecResult

type ExecResult struct {
	// Err is the Go error associated to the command execution
	Err error
	// Stdout is the messages that were displayed on stdout during the execution of the command
	Stdout string
	// Stderr is the messages that were displayed on stderr during the execution of the command
	Stderr string
}

ExecResult represents the result of the execution of a command

func InstallHost

func InstallHost(myCfg *Config, sysCfg *sys.Config) ExecResult

InstallHost installs a specific version of MPI on the host

func UninstallHost

func UninstallHost(mpiCfg *Config, sysCfg *sys.Config) ExecResult

UninstallHost uninstalls a version of MPI on the host that was previously installed by our tool

type Experiment

type Experiment struct {
	// MPIImnplm is the string identifying the MPI implementation, e.g., openmpi or mpich
	MPIImplm string
	// VersionHostMPI is the version of the MPI implementation to use on the host
	VersionHostMPI string
	// URLHostMPI is the URL to use for downloading MPI that is to be installed on the host
	URLHostMPI string
	// VersionContainerMPI is the version of the MPI implementation to use in the container
	VersionContainerMPI string
	// URLContainerMPI is the URL to use for downloading MPI that is to be installed in the container
	URLContainerMPI string
}

Experiment is a structure that represents the configuration of an experiment

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL