Hi all,
My question is related to integration of OpenMP in Fortran with some features in standard 2003/2008
In the document of latest 4.0 release it is stated that some features are not supported. The problem is : such features are in my opinion very important for new Object-Oriented paradigm as introduced in new standards.
I made some simple code containing type extension and pass atribute. The OpenMP work and a get speedup of 12x. ( on 12 cores !!!)
But in other complex cases ( with multiple classes and procedures pointers) I got unexpected access violation in runtime.
Before I investigate more, is any one had similar errors with OepnMP in context of OOP paradigm of Fortran 2003/2008.
Thanks
P.S. Here is the part of text related to my post, see for details the link: http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf
!==========================================================================================
ISO/IEC 1539-1:2004, Information Technology - Programming Languages - Fortran.
This OpenMP API specification refers to ISO/IEC 1539-1:2004 as Fortran 2003. The following features are not supported:
• IEEE Arithmetic issues covered in Fortran 2003 Section 14
• Allocatable enhancement • Parameterized derived types
• Finalization
• Procedures bound by name to a type
• The PASS attribute
• Procedures bound to a type as operators
• Type extension
• Overriding a type-bound procedure
• Polymorphic entities
• SELECT TYPE construct
• Deferred bindings and abstract types
• Controlling IEEE underflow
• Another IEEE class value
Where this OpenMP API specification refers to C, C++ or Fortran, reference is made to the base language supported by the implementation
!============================================================================================================