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

Code coverage using ifx

Paul_Levold
Principiante
1.850 Visualizações
Is it possible to do code coverage analysis when using the new ifx compiler? There's a guide [1] for generating code coverage data, but the compiler arguments seems to only be supported by the old ifort compiler.

[1] https://www.intel.com/content/www/us/en/docs/fortran-compiler/developer-guide-reference/2023-0/code-coverage-tool.html
0 Kudos
10 Respostas
Barbara_P_Intel
Funcionário
1.793 Visualizações

I checked with the compiler team. Code coverage is not available with ifx.

 

Fran-Martinez
Principiante
1.024 Visualizações

Is there any indication when the compiler team will implement this feture in IFX?

Since IFORT is no longer available, it is a problem to properly implement detailed unit tests.

Shiquan_Su
Moderador
1.008 Visualizações

Hi, Fran:

We try to survey our customer community about different feature requests. If possible, would you please let us know your company/institute name, and the name of the app you plan to apply the code coverage functionality to? Is there a public website for your target app? Thanks,

 

Shiquan

Fran-Martinez
Principiante
736 Visualizações

Hi, Shiquan,

I am more of a private user. I used to work in a company where Fortran was a key lnguage for space system applicaiton development and I am certain that they suffer the same issue with the code coverage using IFX.

There are some libraries in Github (https://github.com/ffadrique) that include all unit tests that I have always used to analyse the code coverage. I have another couple of libraries in the pipeline that I will only publish when I can complete the unit testing.

Cheers,

Fran

Devorah_H_Intel
Moderador
1.020 Visualizações

This feature is planned for ifx 2026.

Mark_Lewy
Contribuidor valorado I
874 Visualizações

Interesting - LLVM compilers provide source code coverage capability from the command line.  Are you saying that ifx is not able to use this yet, or is the aim to provide reporting similar to ifort in OneAPI 2026?

Devorah_H_Intel
Moderador
831 Visualizações

ifx is not able to use it, and the aim is to provide a code coverage feature similar to ifort. 

Mark_Lewy
Contribuidor valorado I
797 Visualizações

Thanks for the clarification @Devorah_H_Intel 

 

For the OP, @Paul_Levold , a couple of suggestions:

If you still have OneAPI 2025.0 (or earlier) installed, you could still use IFORT and its code coverage tool.

Alternatively, you could try using GNU Fortran and the gcov tool to provide code coverage.

It's a good idea to get your code building with alternative compilers anyway, because they can pick up bugs in your code that the other compiler doesn't.

Fran-Martinez
Principiante
736 Visualizações

Hi,

indeed, I use gfortran with gcov for the unit test coverage, but this forces me to maintain two environments, which is a bit of an unnecessary burden. Still useful for portability and debugging.

JohnNichols
Colaborador valorado III
717 Visualizações

When code coverage or speed is "Can we do an entire cycle in 8.192 seconds, 16834 divided by 2000 steps per second?" if yes, then it does not matter, if not change the FFT engine first. 

Some people have simple lives. 

And then the data tells you what happens when a large truck hits a larger bridge.  The bridge moves.  No idea about the truck. 

Amesa-Trans.jpg

Responder