Problem by using OpenMP within a Fortran modul

Discussion in 'Windows 64bit' started by alex-lurk, Sep 22, 2009.

  1. alex-lurk


    Sep 22, 2009
    Likes Received:
    Dear all,

    I'm using OpenMP to parallelize a part of an old Fortran modul to increase the performance (to make it quicker).
    Within the Fortran modul I create 4 threads by using the OpenMP direktive "SECTIONS".
    The 4 sections are independent of each other.
    But after activating (switching on) OpenMP in the development environment the Fortran modul don't provide the same results like without OpenMP.
    I get this strange behaviour with and without the "SECTIONS" direktive, it's only necessary to enable (switching on) OpenMP.
    If I disable (switching off) OpenMP the modul works correct.

    I get this wrong behaviour for all the following versions:
    - Win32 Release,
    - Win32 Debug,
    - X64 Release and
    - X64 Debug

    In the following you can find the most important technical data:
    - Development environment: Microsoft Visual Studio 2005 Professional
    - Compiler: Intel Fortran Compiler 9.1
    - Operating system: Microsoft Windows Server 2003, Standard x64
    - Processor: AMD Opteron with 4 CPUs

    The following OpenMP settings are made within Microsoft Visual Studio:
    - Setting "Configuration->Fortran->Preprocessor":
    OpenMP Conditional Compilation: Yes
    - Setting "Configuration->Fortran->Language:
    Process OpenMP Directives: Generate parallel Code
    - Setting "Configuration->Linker->System":
    SubSystem: Console
    Heap Reserve Size: 256000000
    Heap Commit Size: 128000000
    Stack Reserve Size: 256000000
    Stack Commit Size: 128000000
    Enable Large Adresses: Support Adresses Larger Than 2 GB
    Terminal Server: Default

    Has someone an idea what's wrong?
    Or have had someone the same behaviour and knows a solution?

    Thanks for your help!

    Many greetings from Germany,
    alex-lurk, Sep 22, 2009
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.