private String readHorovodConfig() {
        StringBuilder horovodConfig = new StringBuilder();
        if (conf.getBoolean(
                HboxConfiguration.HBOX_HOROVOD_MPI_THREADS_DISABLE,
                HboxConfiguration.DEFAULT_HBOX_HOROVOD_MPI_THREADS_DISABLE)) {
            horovodConfig.append("-x HOROVOD_MPI_THREADS_DISABLE=1 ");
        }
        String timelineFileName = conf.get(HboxConfiguration.HBOX_HOROVOD_TIMELINE);
        if (timelineFileName != null) {
            horovodConfig
                    .append("-x HOROVOD_TIMELINE=")
                    .append(timelineFileName)
                    .append(" ");
        }
        int fusionThreshold = conf.getInt(
                HboxConfiguration.HBOX_HOROVOD_FUSION_THRESHOLD,
                HboxConfiguration.DEFAULT_HBOX_HOROVOD_FUSION_THRESHOLD);
        if (fusionThreshold != -1) {
            horovodConfig
                    .append("-x HOROVOD_FUSION_THRESHOLD=")
                    .append(fusionThreshold)
                    .append(" ");
        }
        int cycleTime = conf.getInt(
                HboxConfiguration.HBOX_HOROVOD_CYCLE_TIME, HboxConfiguration.DEFAULT_HBOX_HOROVOD_CYCLE_TIME);
        if (cycleTime != -1) {
            horovodConfig.append("-x HOROVOD_CYCLE_TIME=").append(cycleTime).append(" ");
        }
        if (conf.getBoolean(
                HboxConfiguration.HBOX_HOROVOD_STALL_CHECK_DISABLE,
                HboxConfiguration.DEFAULT_HBOX_HOROVOD_STALL_CHECK_DISABLE)) {
            horovodConfig.append("-x HOROVOD_STALL_CHECK_DISABLE=1 ");
        }
        if (conf.getBoolean(
                HboxConfiguration.HBOX_HOROVOD_HIERARCHICAL_ALLREDUCE,
                HboxConfiguration.DEFAULT_HBOX_HOROVOD_HIERARCHICAL_ALLREDUCE)) {
            horovodConfig.append("-x HOROVOD_HIERARCHICAL_ALLREDUCE=1 ");
        }
        return horovodConfig.toString().trim();
    }
Extract orted command from mpiexec
With option -mca plm_rsh_agent /bin/echo -mca plm_base_verbose 1
For openmpinossh version, sample command syntax is "command:-mca ess env -mca orte_ess_jobid "<jobid>" -mca orte_ess_vpid <template> -mca orte_ess_num_procs 31 --hnp-uri "<jobid>.0;tcp://xx.xx.xx.xx:xxxx"
For openmpi-3.1.4 version, sample command syntax is "/usr/bin/ssh <template>  orted -mca ess "env" -mca ess_base_jobid "<jobid>" -mca ess_base_vpid "<template>" -mca ess_base_num_procs "2" -mca orte_node_regex "qt[x:x,x]ss@0(2)" -mca orte_hnp_uri "<jobid>.0;tcp://xx.xx.xx.xx:xxxx" -mca plm_base_verbose "1" -mca plm "rsh" -mca pmix "^s1,s2,cray,isolated""
@param mpiExecOutput
@return
core/src/main/java/net/qihoo/hbox/AM/ApplicationMaster.java