> In theory one could load only the plugins needed and in that way save startup 
> time and memory. However in OB, once you load one plugin all plugins are 
> loaded (one by one, making it slow).

Sounds like a great project. If you or anyone else wants to improve the plugin 
loading code to load on demand, please let me know.

Open Babel is a purely volunteer project, so features are added / coded when 
people have a need and write the code.

It's been ages since I benchmarked the plugin loading code (i.e., well over 10 
years) but my conclusion back then was that:
- it's a meaningful time delay for short tasks, but those are fast anyway
- when you're repeating short tasks (e.g., using the obabel binary repeatedly 
in a shell script) most of the plugins get cached by modern OS
- for long tasks, it's not the time-limiting step

There were two reasons for them:
- they're much easier to write than adding to a monolithic library. (Does 
anyone want 100 API calls for different formats, etc.?)
- they can be offloaded as needed by the OS

I'm sure someone could code up an index/cache to improve plugin loading. Please 
do. 

In the meantime, as you note, it's possible to compile static and/or hack the 
build as you wish.

-Geoff

_______________________________________________
OpenBabel-Devel mailing list
OpenBabel-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to