\subsection{Installing \gromacs{}}
Finally, \verb+make install+ will install \gromacs{} in the
-directory given in \verb+GMX_INSTALL_PREFIX+. If this is an system
+directory given in \verb+CMAKE_INSTALL_PREFIX+. If this is an system
directory, then you will need permission to write there, and you
should use super-user privileges only for \verb+make install+ and
not the whole procedure.
{
assert(gpu_info);
assert(gpu_opt);
- if (idx < 0 && idx >= gpu_opt->ncuda_dev_use)
- {
- return -1;
- }
+ assert(idx >= 0 && idx < gpu_opt->ncuda_dev_use);
return gpu_info->cuda_dev[gpu_opt->cuda_dev_use[idx]].id;
}
}
}
- return (bPert ? ilsortFE_UNSORTED : ilsortNO_FE);
+ return bPert;
}
void gmx_sort_ilist_fe(t_idef *idef, const real *qA, const real *qB)
#endif
-/* Returns if the are bonded interactions for free energy calculations */
+/* Returns if there are perturbed bonded interactions */
gmx_bool gmx_mtop_bondeds_free_energy(const gmx_mtop_t *mtop);
/* Sort all the bonded ilists in idef to have the perturbed ones at the end
physicalnode_id_hash = gmx_physicalnode_id_hash();
- gpu_id = get_gpu_device_id(&hwinfo->gpu_info, &hw_opt->gpu_opt, cr->nodeid);
+ gpu_id = get_gpu_device_id(&hwinfo->gpu_info, &hw_opt->gpu_opt, cr->rank_pp_intranode);
dd = cr->dd;
const real *tab_coul_V;
#endif
/* Thread-local working buffers for force and potential lookups */
- int ti0_array[2*GMX_SIMD_WIDTH_HERE-1], *ti0 = NULL;
- int ti1_array[2*GMX_SIMD_WIDTH_HERE-1], *ti1 = NULL;
- int ti2_array[2*GMX_SIMD_WIDTH_HERE-1], *ti2 = NULL;
- int ti3_array[2*GMX_SIMD_WIDTH_HERE-1], *ti3 = NULL;
+ int ti0_array[2*GMX_SIMD_WIDTH_HERE], *ti0 = NULL;
+ int ti1_array[2*GMX_SIMD_WIDTH_HERE], *ti1 = NULL;
+ int ti2_array[2*GMX_SIMD_WIDTH_HERE], *ti2 = NULL;
+ int ti3_array[2*GMX_SIMD_WIDTH_HERE], *ti3 = NULL;
#ifdef CALC_ENERGIES
- gmx_mm_pr mhalfsp_S;
+ gmx_mm_pr mhalfsp_S;
#endif
#endif
gmx_select_gpu_ids(fplog, cr, &hwinfo->gpu_info, bForceUseGPU,
&hw_opt->gpu_opt);
}
+ else
+ {
+ /* Ignore (potentially) manually selected GPUs */
+ hw_opt->gpu_opt.ncuda_dev_use = 0;
+ }
/* check consistency of CPU acceleration and number of GPUs selected */
gmx_check_hw_runconf_consistency(fplog, hwinfo, cr, hw_opt, bUseGPU);