C/C++ What are the pros and cons of different C++ compilers for scientific computing?

  • Thread starter Thread starter orstats
  • Start date Start date
  • Tags Tags
    C++ Compiler
AI Thread Summary
When considering a C++ compiler for numerical integration and Fast Fourier transforms on an Intel Duo core processor running MS OS, several options are discussed. The Intel C++ Compiler is highlighted for its potential advantages, particularly in optimization for specific processors. MS Visual Studio 2008 is noted for its improved standard compliance over earlier versions, while GCC is recognized for its strong optimization capabilities due to its output format allowing link-level function optimization. The importance of libraries, especially those optimized for the processor, is emphasized, as they can significantly impact performance. Ultimately, testing different compilers and optimization flags is recommended to determine the best fit for specific applications.
orstats
Messages
14
Reaction score
0
Hello:

I need to write some numerical integration and do Fast Fourier transforms in c++. I am running MS OS on Intel Duo core processors. Earlier post suggested downloading libraries such as MLK. Since I am running on Intel, I have found Intel's MLK library. I will need other libraries along the way. However, before that I need to choose a C++ compiler to download.

What are you suggestions? E.g., Intel C++ Compiler vs. MS Visual Studio 2005 vs. MS Visual Studio 2008 etc.

Because our problem may not be solved easily in MATLAB. We're moving into C++. Thank you!
 
Technology news on Phys.org
VS2008 compiler (version 9) has much better standard compliance than previous MS compilers. GCC always had very good optimisation because it's output format allowed link-level function optimisation. Intel's compiler should have an advantage.


What is probably mor elikely to have a bigger effect is the libraries - especially if they are optomisedfor a particular processor. Intel used to ship different versions of it's image libs which autodetected your processor.

You will have to do some testing to find out which is best for your app. With pipelines, cache effects and the number of possible optimisations in modern compilers you really have to test - even with different optimise flags on the same compiler.
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...
Back
Top