[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [IMP-dev] performance of Connectivity restraint



Also make sure that NDEBUG is defined (with the current svn it is with build=fast), not sure if it was for release or not.

Also, run it with gprof to see where the time is being spent. Is it in the harmonic evaluation? Or in the actual shortest paths.

On Jan 27, 2009, at 7:20 PM, Keren Lasker wrote:

just for the records,
Ben suggested compiling with release=true, which reduced the running time to ~7 seconds. I still think we should consider a faster implementation. Maybe use geometric hashing to query close particles in space.
On Jan 26, 2009, at 9:43 PM, Keren Lasker wrote:

hi all,

I am writing a test case for adding hierarchy support in DOMINO, and it seems that the connectivity restraint works incredibly sssllllooowww between two proteins each of ~100 residues.

i=0
ub = IMP.core.HarmonicUpperBound(1.0, 0.1)
ss= IMP.core.DistancePairScore(ub)
r= IMP.core.ConnectivityRestraint(ss)
ps = IMP.Particles()
ps_refined=[]
for j in xrange(2):
ps_refined.append(IMP.core.hierarchy_get_leaves(self.h_particles[i +j]))
   ps.append(self.particles[i+j])
for e in ps_refined:
    r.add_particles(e)

beg  = time.time()
r.evaluate(None)
end = time.time()
dt    = end - beg
print 'connectivity restraint calculation took %9.6f Seconds' % (dt)

The evaluate function takes ~20 seconds.

am I missing something here? is there a faster implementation using some external library ?

thanks,
Keren.


_______________________________________________
IMP-dev mailing list

https://salilab.org/mailman/listinfo/imp-dev

_______________________________________________
IMP-dev mailing list

https://salilab.org/mailman/listinfo/imp-dev