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

Newest version of IFX seg faults on run that used to work

caplanr
New Contributor I
426 Views

Hi,

 

I recently updated my Intel driver and OneAPI HPC SDK.

I am running on an Intel Arc B580 GPU.

My system has Ubuntu 22.04 with kernel: 6.13.12-zabbly+

My IFX version is:  ifx (IFX) 2025.2.1 20250806

My MPI is /opt/intel/oneapi/mpi/2021.16

 

I am running the code HipFT which can be obtained here:  github.com/predsci/hipft

I am using the latest commit.

 

The compiler flags I am using are:

-O3 -xHost -fp-model precise -fopenmp-target-do-concurrent -fiopenmp

-fopenmp-targets=spir64 -fopenmp-do-concurrent-maptype-modifier=present

 

The code uses Fortran's "do concurrent" to offload computation to the GPU, and uses OpenMP Target directives to manually manage the CPU-GPU data transfers.  See https://ieeexplore.ieee.org/document/10820592 for details.

 

The code compiles fine.

 

The code runs correctly for the testsuite runs included in the git repo (these are small runs).

 

However, for the example run in "/examples/flux_transport_1rot_flowAa_diff_r8" the code seg faults with:

 

forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
libc.so.6 00007F2C41042520 Unknown Unknown Unknown
hipft 000000000042821D Unknown Unknown Unknown
hipft 000000000041E8F4 Unknown Unknown Unknown
hipft 000000000040FAFE Unknown Unknown Unknown
hipft 000000000040E8BA Unknown Unknown Unknown
hipft 000000000040E72D Unknown Unknown Unknown
libc.so.6 00007F2C41029D90 Unknown Unknown Unknown
libc.so.6 00007F2C41029E40 __libc_start_main Unknown Unknown
hipft 000000000040E645 Unknown Unknown Unknown

 

This run uses more VRAM than the testsuite runs, but otherwise is running the same algorithms.

 

The run used to work as shown in the paper linked above (it also works on NVIDIA GPUs with the same amount of VRAM).

 

To reproduce this, compile the hdf5 library with the IFX compiler and then set the paths to the library in the build configuration file (see conf/intel_gpu_psi.conf for an example).

Then, build the code with "build.sh <CONFFILE>" and then the code can be run in the examples/flux_transport_1rot_flowAa_diff_r8 directory with "mpiexec -np 1 ../bin/hipft "

 

Thanks!

 

 - Ron

 

 

0 Kudos
0 Replies
Reply