Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28434 Discussions

Memory leaking using DIRECT access

JSmith
Beginner
1,036 Views

We are using Fortran Composer Version 2020 update 4 and are experiencing a lot of memory leakage related to the number of files we open using direct access.

The following code will demonstrate the problem, which only appears to happen in the release build when the UNIT number is 100 or more.

INTEGER*4 IUNIT, ILOOP

IUNIT = 100

DO ILOOP = 0, 20000
OPEN (UNIT = IUNIT, FILE = "C:\TestFiles\Empty.dat", ACCESS='DIRECT', RECL = 4)
CLOSE (IUNIT)
ENDDO

A UNIT number of 99 or less doesn't cause the memory leakage.

Is there a way to overcome this problem?

0 Kudos
1 Solution
Barbara_P_Intel
Moderator
776 Views

With the release of the new Fortran compiler 2021.3.0 earlier this month, this memory leak is fixed!  I rebuilt and looked at it with Inspector.  

@JSmith, can you please confirm?

 

View solution in original post

0 Kudos
5 Replies
Steve_Lionel
Honored Contributor III
993 Views

I can reproduce this using the 2021.1.2 compiler and Intel Inspector's memory leak analysis. The leak is about 440 bytes per iteration, happening during the OPEN call. But what I find most fascinating is that the leak occurs only when linking to the DLL form of the support libraries - if one links to the static libraries, no leak!

0 Kudos
JSmith
Beginner
966 Views

I have upgraded to the 2021.1.1 compiler now even with that and using the static libraries I am seeing a 440 bytes leakage (this has gone up from 432 bytes previously).

MemoryLeakage.JPG

This isn't reported by the Inspector as with the DLL version.

0 Kudos
Steve_Lionel
Honored Contributor III
946 Views

Interesting to know that Inspector doesn't see the leak with the static libraries. Let's hope an Intel support person picks this up.

0 Kudos
Barbara_P_Intel
Moderator
902 Views

I filed a bug report on the memory leak, CMPLRLIBS-33305.  I'll let you know when it's fixed.

 

Barbara_P_Intel
Moderator
777 Views

With the release of the new Fortran compiler 2021.3.0 earlier this month, this memory leak is fixed!  I rebuilt and looked at it with Inspector.  

@JSmith, can you please confirm?

 

0 Kudos
Reply