> My biggest concern is the runaway process that used up 26 GB of memory before 
> I killed it.  The molecules that take a very long time to canonicalize are 
> also problematic, but with the "timeout" feature, they're not deadly.  We 
> should verify that structures like ferrocenes, and buckyballs are handled in 
> a reasonable amount of time  since they're so common.

I will try to verify that the process was runaway on that one particular 
SMILES, and if so, what's causing the allocations. Apple's "Instruments" 
debugging feature is very useful, since you can follow the allocations over 
time.

You mentioned a timeout for ferrocenes and buckyballs. With graphene and 
nanotubes and buckyballs, most of the time is spent in the Kekule assignment. 
There's a timeout when we attempt to find the largest fused ring system, but 
not for the recursive expand_kekule function. This can consume a lot of stack 
space and time.

Do you think there's a good way to insert a timeout there? Obviously the 
recursion happens if you can't find a good bond assignment. When do we say 
timeout?

> PubChem is also a useful test case.  It's much larger but tends to have a lot 
> of redundancy because they include things like Zinc (which has multiple 
> automatically-generated stereoisomers for each of the input molecules) as 
> well as some "virtual libraries" (from suppliers who say they have in-stock 
> compounds but actually have never synthesized them).

I've been using ZINC, since I can get it as SDF and SMI. There seem to be a few 
cases with SMI that don't pop up with SDF. TJ seems to have been using PubChem.

So I think between the three test sets, we've got a good combination for a 
release criteria. As you say, the worst category is the time/memory hogs. So 
let's start there. Any ideas about limiting kekulize.cpp?

-Geoff
------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
OpenBabel-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to