--- a +++ b/asv_bench/benchmarks/spatial.py @@ -0,0 +1,34 @@ +import os +import oddt +from oddt.spatial import distance + +test_data_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), '..', '..') + +class BenchDistance(object): + """Spatial functions""" + + def setup(self): + self.mols = list(oddt.toolkit.readfile('sdf', '%s/tests/data/dude/xiap/actives_docked.sdf' % test_data_dir))[:10] + self.protein = list(oddt.toolkit.readfile('pdb', '%s/tests/data/dude/xiap/receptor_rdkit.pdb' % test_data_dir))[0] + + def time_distance_protein(self): + distance(self.protein.coords, self.protein.coords) + + def peakmem_distance_protein(self): + distance(self.protein.coords, self.protein.coords) + + def time_distance_mol(self): + for mol in self.mols: + distance(mol.coords, mol.coords) + + def peakmem_distance_mol(self): + for mol in self.mols: + distance(mol.coords, mol.coords) + + def time_distance_complex(self): + for mol in self.mols: + distance(mol.coords, self.protein.coords) + + def peakmem_distance_complex(self): + for mol in self.mols: + distance(mol.coords, self.protein.coords)