[FlopCpp] Re: Problem with FlopC under Visual Studio (woelliusm@aol.com)

hpwalton at comcast.net hpwalton at comcast.net
Fri Oct 20 15:45:56 EDT 2006


I suspect it has to do with how we build for visual c++.
- It doesn't use pre-compiled header files
- It makes heavy use of templates.

Doing either of those on code which was not originally developed in Visual studio using the "microsoft way" can lead to longer build times.  I can't go into details about what the microsoft way is because it won't necessarily be compatible with Linux...so the resulting discussion would be moot.  

Actually, I think you'll also find that the runtime in DEBUG mode will also be excessive.  MSVC8 added boundary checking in STL containers....which means that every single operator[] or operator* on iterators will result in quite a bit of code running and asserts being checked.

This, of course, collapses in "release" mode, so the runtime is at least fast.

What's basically happening is all the templates (which there are tons when using flopc++) get instantiated multiple times during compile and link.  Fun eh?

Sooo...strictly speaking it isn't "the compiler" since one could potentially get it faster...but at the price of making it difficult to use on Linux....

Or I could be wrong.

Cheers!
Philip

> Dear all, 
> 
> I'd like to ask a question about FlopC++ under Visual Studio. 
> When I build and run example "aircraft", which is part of Projectfile "FlopCpp" 
> (Folder \trunk\MSVisualStudio\v8\FlopCpp\), it takes a lot of time. It runs 
> fine, but building is very slow in compared to building under Linux. 
> Is it a problem of Visual Studio, that the code generation takes so much time? 
> 
> Thanks in advance, 
> 
> Christian 
> -------------- next part -------------- 
> An HTML attachment was scrubbed... 
> URL: 
> http://list.coin-or.org/pipermail/flopcpp/attachments/20061020/92ff87b6/attachme 
> nt-0001.html 
> 
> ------------------------------ 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.coin-or.org/pipermail/flopcpp/attachments/20061020/e99d89fe/attachment.html


More information about the FlopCpp mailing list