My tests don't show the serialization consuming a disproportionate amount of memory. But I haven't made an application which serializes 200 classes either. One interesting idea is to have the linker generate a *.map file (in release mode) to show the size of modules being created. On a project this size, I would probably create it as a group of Libraries just to make build and code management easier. If I build those libraries as DLLS, then I can really see where the code is going. However, this requires a little more care in organizing code to be sure that only code actually used in loaded. This is sort of a pain - even more so with the serialization library - but it makes a much better final product. Combining this with the polymorphic archive should result in (almost) no code duplication. However, doing this requires special care in seperating declarations from definitions. Robert Ramey Gokulakannan Somasundaram wrote:
Hi Robert, Thanks for the reply.
a) what compiler/platform are you using.
MSVC/Windows
b) 37 MB suggests that you're including the debug symbols. Assuming this is correct, how large is it when compiling for release. Does the size of the debug version really matter?
Yes it is in the debug mode and the size in Debug mode doesn't matter. In Release mode, it came down to 21MB. When i removed the BOOST_EXPORT, the size in DEBUG came down to 23MB.
And what does the release mode version come down to?
c) I'm doubtful that BOOST_EXPORT has this large an impact. How large was the executable before you exported the derived classes?
Still, i haven't formed the executable with serialization. I will let you know, within a day or two.
Please let me know, if you need any other details.
Thanks, Gokul.
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users