In the list of full releases there are a number of newer files than what is listed on the pyrosseta.org/dow.
Are these also stable releases? What does the monolith mode mean? (as in mode=release.branch=release.monolith.html) And what is the namespace mode?
Thank you for satisying my curiosity,
Also are there perhaps md5 checksum somewhere that I can use to verify the integrity of the downloads?
There is a few types of builds and here what various parameters mean:
- branch=release-rXXXXX.tar.bz2. Name of the Git branch from which this binary was build. The 'release' mean stable and 'devel' mean developer release. Number after 'r' is revision number (later builds have higher number)
- mode=release or mode=debug: Type of build. Debug builds have debug information included in them plus some asserts. This build is slower but allow developer to catch some errors. For production mode please use release build.
- monolith or namespace build:
- Namespace build have one dynamic lib per one C++ namespace. This build will require to explicitly import all namespace that you planning to use. It have also considerably slower start up time compare to monolith build when a lot of namespaces is used.
- Monolith build have just one dynamic lib that contain all PyRosetta. This allow much faster imports on NFS filesystems and require only one import statement. This will be the mainstream build type in the future
Thank you very much for your swift reply!
Also, thank you for developing PyRosetta. It looks very promising and I'm looking forward to using it.
PS: Does that meean there will be no more "namespace" releases? The monolith-r22 release takes quite a while to load (approx 30s); since I'm just playing and not using that many namespaces yet (and restarting the terminal often) im using the namespace-r21which where "import rosetta; rosetta.init()" takes about 3s.
So you recommend the monolith build instead of the namespace build? What if I am using only a small number of namespaces?
I recommend the namespace build instead of the monolith build. Some people have problems with monolith, some do not. I would recommend trying both on your system - observe both the memory use and the load time for import and init.
As Jared pointed out Monolith build uses more memory but 'import' command will be much faster especially on NFS file system. So if you need to use PyRosetta in HPC environment Monolith probably a best choice. And on Desktop namespace build will give similar results but with less memory consumption.