GPU-Omega refers to the CUDA-enabled GPU implementation of Omega TK. GPU-Omega takes advantage of a GPU during torsion driving for accelerated conformer generation. To make use of GPU-Omega conformer generation please follow the guidelines below.
GPU-Omega is not available in the C# version of the toolkit.
For all torsion driving sampling modes except
densemodes, if a GPU is detected at runtime, torsion driving will be carried out on the GPU by default. To turn this feature off use
The following code shows how to turn off GPU-omega prior to conformer generation using
Example of turning off GPU-Omega
OEOmegaOptions omegaOptsSparse = new OEOmegaOptions(); omegaOptsSparse.GetTorDriveOptions().SetUseGPU(false); OEOmega omega = new OEOmega(omegaOptsSparse); omega.call(mol);
GPU-Omega uses the default
OEMMFFSheffieldFFType.MMFF94Smod_NOESTATforcefield. If attempting to use an alternative forcefield conformer generation will fall back to the CPU. As a result of this, GPU-Omega is not compatible with default settings of
OEOmegaSampling.Densesampling mode. To take advantage of a GPU with
densesampling mode set
OEOmegaIsGPUReadyutility function is provided for detecting available GPUs on a system.
The following code demonstrates how to query the system for an available GPU and then set the force field to default in order to use the GPU for
densemode conformer generation:
Example of detecting a GPU and changing the force field for dense mode conformer generation
OEOmegaOptions omegaOptsDense = new OEOmegaOptions(OEOmegaSampling.Dense); if (oeomegalib.OEOmegaIsGPUReady()) omegaOptsDense.GetTorDriveOptions().SetForceField(OEOmegaForceFieldType.MMFF94Smod_NOESTAT); OEOmega omegaDense = new OEOmega(omegaOptsDense); if(omegaDense.call(mol)) oechem.OEWriteMolecule(ofs, mol);
GPU-Omega does not support the distance geometry method of torsion driving and therefore is incompatible with