Error using OpenMP with Community Edition 19.4

Hi All,

I just downloaded and installed the Community Edition 19.4 on various linux machines (mostly Intel, but also a few AMDs). My usual command to compile for one CPU is:

pgf90 -Mextend -fast -Mfprelaxed -Mipa=fast,inline -mcmodel=medium

This works, apart from a warning about Mipa not being available on the target. However, when I try to compile for multi-CPU (using OpenMP):

pgf90 -Mextend -fast -Mfprelaxed -Mipa=fast,inline -mcmodel=medium -mp

I get errors. For example:

*** Error in `/usr/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm’: malloc(): memory corruption: 0x0000000001553310 ***

The CPU in this particular computer is:

Intel® Xeon® CPU E5-2680 v2 @ 2.80GHz

Our newest linux machine has this CPU:

Intel® Xeon® W-2155 CPU @ 3.30GHz

The error message I get on this machine is much longer:

pgf90-Warning–Mipa is not supported for this target

*** Error in `/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm’: malloc(): memory corruption: 0x00000000010612e0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x740ef)[0x2b30b6b210ef]
/lib64/libc.so.6(+0x79646)[0x2b30b6b26646]
/lib64/libc.so.6(+0x7ba3f)[0x2b30b6b28a3f]
/lib64/libc.so.6(__libc_malloc+0x50)[0x2b30b6b2a3d0]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4c1a0c]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x823754]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5ebd31]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5ec06e]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e094d]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e0e99]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e3fb0]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5cb11b]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4ce091]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4cdb7b]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x81f4bd]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x2b30b6acd725]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x404fad]
======= Memory map: ========
00400000-009b5000 r-xp 00000000 08:03 3806734 /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
00bb4000-00c28000 rwxp 005b4000 08:03 3806734 /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
00c28000-00c8b000 rwxp 00000000 00:00 0
00fb7000-010d4000 rwxp 00000000 00:00 0 [heap]
2b30b6468000-2b30b6489000 r-xp 00000000 08:03 655362 /lib64/ld-2.22.so
2b30b6489000-2b30b648c000 r–p 00000000 00:00 0 [vvar]
2b30b648c000-2b30b648e000 r-xp 00000000 00:00 0 [vdso]
2b30b648e000-2b30b64b2000 rwxp 00000000 00:00 0
2b30b64b8000-2b30b6511000 rwxp 00000000 00:00 0
2b30b6689000-2b30b668a000 r-xp 00021000 08:03 655362 /lib64/ld-2.22.so
2b30b668a000-2b30b668b000 rwxp 00022000 08:03 655362 /lib64/ld-2.22.so
2b30b668b000-2b30b668c000 rwxp 00000000 00:00 0
2b30b668c000-2b30b668e000 r-xp 00000000 08:03 655376 /lib64/libdl-2.22.so
2b30b668e000-2b30b688e000 —p 00002000 08:03 655376 /lib64/libdl-2.22.so
2b30b688e000-2b30b688f000 r-xp 00002000 08:03 655376 /lib64/libdl-2.22.so
2b30b688f000-2b30b6890000 rwxp 00003000 08:03 655376 /lib64/libdl-2.22.so
2b30b6890000-2b30b68a8000 r-xp 00000000 08:03 655400 /lib64/libpthread-2.22.so
2b30b68a8000-2b30b6aa7000 —p 00018000 08:03 655400 /lib64/libpthread-2.22.so
2b30b6aa7000-2b30b6aa8000 r-xp 00017000 08:03 655400 /lib64/libpthread-2.22.so
2b30b6aa8000-2b30b6aa9000 rwxp 00018000 08:03 655400 /lib64/libpthread-2.22.so
2b30b6aa9000-2b30b6aad000 rwxp 00000000 00:00 0
2b30b6aad000-2b30b6c48000 r-xp 00000000 08:03 655370 /lib64/libc-2.22.so
2b30b6c48000-2b30b6e48000 —p 0019b000 08:03 655370 /lib64/libc-2.22.so
2b30b6e48000-2b30b6e4c000 r-xp 0019b000 08:03 655370 /lib64/libc-2.22.so
2b30b6e4c000-2b30b6e4e000 rwxp 0019f000 08:03 655370 /lib64/libc-2.22.so
2b30b6e4e000-2b30b6e52000 rwxp 00000000 00:00 0
2b30b6e52000-2b30b6e68000 r-xp 00000000 08:03 655419 /lib64/libgcc_s.so.1
2b30b6e68000-2b30b7067000 —p 00016000 08:03 655419 /lib64/libgcc_s.so.1
2b30b7067000-2b30b7068000 r-xp 00015000 08:03 655419 /lib64/libgcc_s.so.1
2b30b7068000-2b30b7069000 rwxp 00016000 08:03 655419 /lib64/libgcc_s.so.1
2b30b8000000-2b30b8021000 rwxp 00000000 00:00 0
2b30b8021000-2b30bc000000 —p 00000000 00:00 0
7ffd789d8000-7ffd789fb000 rwxp 00000000 00:00 0 [stack]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
pgf90-Fatal-/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm TERMINATED by signal 6
Arguments to /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm geneticELC.for -opt 2 -terse 1 -inform warn -nostatic -x 19 0x400000 -quad -x 59 4 -x 15 2 -x 49 0x400004 -x 51 0x20 -x 57 0x4c -x 58 0x10000 -x 124 0x1000 -tp skylake -x 57 0xfb0000 -x 58 0x78031040 -x 70 0x6c00 -x 47 0x400000 -x 47 0x08 -x 48 4608 -x 49 0x100 -stdinc /opt/pgi/linux86-64-llvm/19.4/include-gcc48:/opt/pgi/linux86-64-llvm/19.4/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include:/usr/local/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed:/usr/lib64/gcc/x86_64-suse-linux/4.8/…/…/…/…/x86_64-suse-linux/include:/usr/include -cmdline ‘+pgf90 geneticELC.for -Mextend -fast -Mvect=simd -Mflushz -Mcache_align -Mfprelaxed -Mipa=fast,inline -mcmodel=medium -mp -o geneticELC_par’ -def unix -def __unix -def unix -def linux -def __linux -def linux -def __NO_MATH_INLINES -def LP64 -def __x86_64 -def x86_64 -def LONG_MAX=9223372036854775807L -def ‘SIZE_TYPE=unsigned long int’ -def ‘PTRDIFF_TYPE=long int’ -def extension= -def amd_64__amd64 -def __k8 -def k8 -def MMX -def SSE -def SSE2 -def SSE3 -def SSSE3 -def PGLLVM -def extension= -nofreeform -extend -vect 48 -x 54 1 -x 70 0x40000000 -x 70 0x40000000 -x 68 0x1 -y 163 0xc0000000 -x 189 0x10 -x 53 2 -quad -x 119 0x10000000 -x 15 0x40014 -x 56 2 -x 68 0x1 -mp -x 69 0x200 -x 69 0x400 -x 69 2 -stbfile /tmp/pgf90ZWuqzKDJsAyX.stb -modexport /tmp/pgf90lWuqHhQKHH_N.cmod -modindex /tmp/pgf90JWuqPdBB_9rn.cmdx -output /tmp/pgf90BWuqrsJDw_j9.ilm

I was able to compile without problems (both for single CPU and multi-CPU) using version 18.4, on all machines. The executables still seem to work, but it would be nice to have the -mp option work.

Jerry

Hi All,

An addendum: The error persists even if I omit the “-mcmodel=medium” flag and all optimizing flags:

*** Error in `/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm’: malloc(): memory corruption: 0x0000000001a3f170 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x740ef)[0x2ab7e55830ef]
/lib64/libc.so.6(+0x79646)[0x2ab7e5588646]
/lib64/libc.so.6(+0x7ba3f)[0x2ab7e558aa3f]
/lib64/libc.so.6(__libc_malloc+0x50)[0x2ab7e558c3d0]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4c1a0c]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x823754]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5ebd31]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5ec06e]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e094d]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e0e99]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5e3fb0]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x5cb11b]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4ce091]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x4cdb7b]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x81f4bd]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x2ab7e552f725]
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm[0x404fad]
======= Memory map: ========
00400000-009b5000 r-xp 00000000 08:03 3806734 /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
00bb4000-00c28000 rwxp 005b4000 08:03 3806734 /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
00c28000-00c8b000 rwxp 00000000 00:00 0
01995000-01ab2000 rwxp 00000000 00:00 0 [heap]
2ab7e4eca000-2ab7e4eeb000 r-xp 00000000 08:03 655362 /lib64/ld-2.22.so
2ab7e4eeb000-2ab7e4f0f000 rwxp 00000000 00:00 0
2ab7e4f15000-2ab7e4f6e000 rwxp 00000000 00:00 0
2ab7e50eb000-2ab7e50ec000 r-xp 00021000 08:03 655362 /lib64/ld-2.22.so
2ab7e50ec000-2ab7e50ed000 rwxp 00022000 08:03 655362 /lib64/ld-2.22.so
2ab7e50ed000-2ab7e50ee000 rwxp 00000000 00:00 0
2ab7e50ee000-2ab7e50f0000 r-xp 00000000 08:03 655376 /lib64/libdl-2.22.so
2ab7e50f0000-2ab7e52f0000 —p 00002000 08:03 655376 /lib64/libdl-2.22.so
2ab7e52f0000-2ab7e52f1000 r-xp 00002000 08:03 655376 /lib64/libdl-2.22.so
2ab7e52f1000-2ab7e52f2000 rwxp 00003000 08:03 655376 /lib64/libdl-2.22.so
2ab7e52f2000-2ab7e530a000 r-xp 00000000 08:03 655400 /lib64/libpthread-2.22.so
2ab7e530a000-2ab7e5509000 —p 00018000 08:03 655400 /lib64/libpthread-2.22.so
2ab7e5509000-2ab7e550a000 r-xp 00017000 08:03 655400 /lib64/libpthread-2.22.so
2ab7e550a000-2ab7e550b000 rwxp 00018000 08:03 655400 /lib64/libpthread-2.22.so
2ab7e550b000-2ab7e550f000 rwxp 00000000 00:00 0
2ab7e550f000-2ab7e56aa000 r-xp 00000000 08:03 655370 /lib64/libc-2.22.so
2ab7e56aa000-2ab7e58aa000 —p 0019b000 08:03 655370 /lib64/libc-2.22.so
2ab7e58aa000-2ab7e58ae000 r-xp 0019b000 08:03 655370 /lib64/libc-2.22.so
2ab7e58ae000-2ab7e58b0000 rwxp 0019f000 08:03 655370 /lib64/libc-2.22.so
2ab7e58b0000-2ab7e58b4000 rwxp 00000000 00:00 0
2ab7e58b4000-2ab7e58ca000 r-xp 00000000 08:03 655419 /lib64/libgcc_s.so.1
2ab7e58ca000-2ab7e5ac9000 —p 00016000 08:03 655419 /lib64/libgcc_s.so.1
2ab7e5ac9000-2ab7e5aca000 r-xp 00015000 08:03 655419 /lib64/libgcc_s.so.1
2ab7e5aca000-2ab7e5acb000 rwxp 00016000 08:03 655419 /lib64/libgcc_s.so.1
2ab7e8000000-2ab7e8021000 rwxp 00000000 00:00 0
2ab7e8021000-2ab7ec000000 —p 00000000 00:00 0
7ffd5ecdb000-7ffd5ecfd000 rwxp 00000000 00:00 0 [stack]
7ffd5ed23000-7ffd5ed26000 r–p 00000000 00:00 0 [vvar]
7ffd5ed26000-7ffd5ed28000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
pgf90-Fatal-/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm TERMINATED by signal 6
Arguments to /opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm
/opt/pgi/linux86-64-llvm/19.4/bin/pgf901-llvm geneticELC.for -opt 1 -terse 1 -inform warn -nostatic -x 19 0x400000 -quad -x 59 4 -x 15 2 -x 49 0x400004 -x 51 0x20 -x 57 0x4c -x 58 0x10000 -x 124 0x1000 -tp skylake -x 57 0xfb0000 -x 58 0x78031040 -x 47 0x08 -x 48 4608 -x 49 0x100 -stdinc /opt/pgi/linux86-64-llvm/19.4/include-gcc48:/opt/pgi/linux86-64-llvm/19.4/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include:/usr/local/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed:/usr/lib64/gcc/x86_64-suse-linux/4.8/…/…/…/…/x86_64-suse-linux/include:/usr/include -cmdline ‘+pgf90 geneticELC.for -mp -o geneticELC_par’ -def unix -def __unix -def unix -def linux -def __linux -def linux -def __NO_MATH_INLINES -def LP64 -def __x86_64 -def x86_64 -def LONG_MAX=9223372036854775807L -def ‘SIZE_TYPE=unsigned long int’ -def ‘PTRDIFF_TYPE=long int’ -def extension= -def amd_64__amd64 -def __k8 -def k8 -def MMX -def SSE -def SSE2 -def SSE3 -def SSSE3 -def PGLLVM -def extension= -nofreeform -vect 48 -x 54 1 -x 70 0x40000000 -x 70 0x40000000 -x 68 0x1 -y 163 0xc0000000 -x 189 0x10 -mp -x 69 0x200 -x 69 0x400 -x 69 2 -stbfile /tmp/pgf908F1q0-wdPzAe.stb -modexport /tmp/pgf90CF1qu_omJFYk.cmod -modindex /tmp/pgf908F1q0Wgmo3kY.cmdx -output /tmp/pgf90CF1quv0onzcc.ilm

Jerry

Hi Jerome,

Do you have a reproducing example you could post or send to PGI Customer Service (trs@pgroup.com)?

Also, can you try adding “-Mnollvm” to see if it’s a general issue or a problem specific to the new LLVM back-end?

Thanks,
Mat

Hi Mat,

I tried this:

pgf90 -mcmodel=medium -mp -Mnollvm

and still no luck:

*** Error in `/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901’: free(): invalid next size (normal): 0x00000000013a0c30 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x740ef)[0x2b85bf5d10ef]
/lib64/libc.so.6(+0x79646)[0x2b85bf5d6646]
/lib64/libc.so.6(+0x7a393)[0x2b85bf5d7393]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x4c1ac4]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x5e065b]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x5e35e8]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x5caf6a]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x4ce24b]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x4cdd35]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x81bc1e]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x2b85bf57d725]
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901[0x404fad]
======= Memory map: ========
00400000-009b3000 r-xp 00000000 08:03 3806164 /opt/pgi/linux86-64-nollvm/19.4/bin/pgf901
00bb2000-00c26000 rwxp 005b2000 08:03 3806164 /opt/pgi/linux86-64-nollvm/19.4/bin/pgf901
00c26000-00c89000 rwxp 00000000 00:00 0
01370000-0147f000 rwxp 00000000 00:00 0 [heap]
2b85bef18000-2b85bef39000 r-xp 00000000 08:03 655362 /lib64/ld-2.22.so
2b85bef39000-2b85bef5b000 rwxp 00000000 00:00 0
2b85bef63000-2b85bef66000 rwxp 00000000 00:00 0
2b85befbc000-2b85bf007000 rwxp 00000000 00:00 0
2b85bf007000-2b85bf0b3000 rwxp 00000000 00:00 0
2b85bf139000-2b85bf13a000 r-xp 00021000 08:03 655362 /lib64/ld-2.22.so
2b85bf13a000-2b85bf13b000 rwxp 00022000 08:03 655362 /lib64/ld-2.22.so
2b85bf13b000-2b85bf13c000 rwxp 00000000 00:00 0
2b85bf13c000-2b85bf13e000 r-xp 00000000 08:03 655376 /lib64/libdl-2.22.so
2b85bf13e000-2b85bf33e000 —p 00002000 08:03 655376 /lib64/libdl-2.22.so
2b85bf33e000-2b85bf33f000 r-xp 00002000 08:03 655376 /lib64/libdl-2.22.so
2b85bf33f000-2b85bf340000 rwxp 00003000 08:03 655376 /lib64/libdl-2.22.so
2b85bf340000-2b85bf358000 r-xp 00000000 08:03 655400 /lib64/libpthread-2.22.so
2b85bf358000-2b85bf557000 —p 00018000 08:03 655400 /lib64/libpthread-2.22.so
2b85bf557000-2b85bf558000 r-xp 00017000 08:03 655400 /lib64/libpthread-2.22.so
2b85bf558000-2b85bf559000 rwxp 00018000 08:03 655400 /lib64/libpthread-2.22.so
2b85bf559000-2b85bf55d000 rwxp 00000000 00:00 0
2b85bf55d000-2b85bf6f8000 r-xp 00000000 08:03 655370 /lib64/libc-2.22.so
2b85bf6f8000-2b85bf8f8000 —p 0019b000 08:03 655370 /lib64/libc-2.22.so
2b85bf8f8000-2b85bf8fc000 r-xp 0019b000 08:03 655370 /lib64/libc-2.22.so
2b85bf8fc000-2b85bf8fe000 rwxp 0019f000 08:03 655370 /lib64/libc-2.22.so
2b85bf8fe000-2b85bf902000 rwxp 00000000 00:00 0
2b85bf902000-2b85bf918000 r-xp 00000000 08:03 655419 /lib64/libgcc_s.so.1
2b85bf918000-2b85bfb17000 —p 00016000 08:03 655419 /lib64/libgcc_s.so.1
2b85bfb17000-2b85bfb18000 r-xp 00015000 08:03 655419 /lib64/libgcc_s.so.1
2b85bfb18000-2b85bfb19000 rwxp 00016000 08:03 655419 /lib64/libgcc_s.so.1
2b85c0000000-2b85c0021000 rwxp 00000000 00:00 0
2b85c0021000-2b85c4000000 —p 00000000 00:00 0
7ffc20198000-7ffc201ba000 rwxp 00000000 00:00 0 [stack]
7ffc201bd000-7ffc201c0000 r–p 00000000 00:00 0 [vvar]
7ffc201c0000-7ffc201c2000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
pgf90-Fatal-/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901 TERMINATED by signal 6
Arguments to /opt/pgi/linux86-64-nollvm/19.4/bin/pgf901
/opt/pgi/linux86-64-nollvm/19.4/bin/pgf901 demcmcELC.for -opt 1 -terse 1 -inform warn -nostatic -x 19 0x400000 -quad -x 59 4 -x 15 2 -x 49 0x400004 -x 51 0x20 -x 57 0x4c -x 58 0x10000 -x 124 0x1000 -tp skylake -x 57 0xfb0000 -x 58 0x78031040 -x 47 0x08 -x 48 4608 -x 49 0x100 -x 120 0x200 -stdinc /opt/pgi/linux86-64-nollvm/19.4/include-gcc48:/opt/pgi/linux86-64-nollvm/19.4/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include:/usr/local/include:/usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed:/usr/lib64/gcc/x86_64-suse-linux/4.8/…/…/…/…/x86_64-suse-linux/include:/usr/include -cmdline ‘+pgf90 demcmcELC.for -Mnollvm -mcmodel=medium -mp -o demcmcELC_par’ -def unix -def __unix -def unix -def linux -def __linux -def linux -def __NO_MATH_INLINES -def LP64 -def __x86_64 -def x86_64 -def LONG_MAX=9223372036854775807L -def ‘SIZE_TYPE=unsigned long int’ -def ‘PTRDIFF_TYPE=long int’ -def extension= -def amd_64__amd64 -def __k8 -def k8 -def MMX -def SSE -def SSE2 -def SSE3 -def SSSE3 -nofreeform -vect 48 -x 54 1 -x 70 0x40000000 -y 163 0xc0000000 -x 189 0x10 -x 68 0x1 -mp -x 69 0x200 -x 69 0x400 -modexport /tmp/pgf90mFTbKOwXT0qF.cmod -modindex /tmp/pgf90SFTbeTlYikWL.cmdx -output /tmp/pgf90mFTbKliRiSl4.ilm

The same command without the “-mp” flag works.

I can send over some code in a few hours.

Jerry

Hi Mat,

I got a little sidetracked, but I managed to send the code over to the address you gave. By the way, I wrote a few trivial codes that used openMP directives (these are FORTRAN codes), and those all compiled just fine. So the problem kicks in somewhere between ~20 lines of code and ~100,000 lines of code, or more likely, between having a few arrays and having several hundred.

Jerry

Thanks Jerry!

Alex forwarded me your example and I was able to reproduce the error. I’ve add a problem report (TPR#27115) and sent it to our compiler engineers for investigation.

My best guess is that we’re having trouble with the huge number of private, firstprivate, and shared variables, and/or passing these variables to the aptly named ‘monster’ subroutine. Unfortunately, I was not able find a work-around.

Best Regards,
Mat

Hi Mat,

Thanks for the reply. As I noted, previous versions were able to compile the codes, so something broke along the way.

Meanwhile, the license file for the 18.4 Community Edition has expired. Is there any way I could download the 18.10 Community Edition, or somehow have the 18.4 license extended?

Jerry

Hi Jerry,

I’ve asked Alex to contact you via email to see what we can do.

-Mat

We’ve fixed this double-free issue with 20.1