Community
cancel
Showing results for 
Search instead for 
Did you mean: 
663 Views

Intel Fortran support for AMD Athlon Silver 3050U

Jump to solution

A college class is using software that my organization develops. It is a computational fluid dynamics program compiled with Intel Fortran 19u4, Intel MPI, MKL libraries, OpenMP. We've been releasing this software for 20 years and it runs on Windows, Mac, and Linux. Recently, some complaints have come in about the code not running with AMD processors, in the most recent example, the AMD Athlon Silver 3050U chip which was just released in Jan 2020. We do not use any special options specific to any architecture, and I assume that means that we should be compatible with SSE2. Does anyone have any similar experience running big, floating-point intensive Fortran/MPI/OpenMP codes on AMD?

1 Solution
Steve_Lionel
Black Belt Retired Employee
552 Views

If the program runs but is just unresponsive, I wouldn't pursue the Event Viewer. I suggested that back when you said the program didn't run at all. 

I am wondering if there is an MPI issue at work here. I have no idea how to debug MPI, but there is a whole other forum here devoted to that.  Or... at least there used to be. In the new forum hierarchy, I can't find it. Oh, how intuitive. It's Intel® oneAPI HPC Toolkit

I suggest you discard the notion that it is CPU-related, as there's no evidence of that.

View solution in original post

12 Replies
Steve_Lionel
Black Belt Retired Employee
649 Views

What does "not running" mean? Is there some error message? If you are not using -x or /Qx, then there should be no issues at all.

The only thing I can think of is that, maybe, some FP instruction on this processor model delivers different results than on other processors, and the code is sensitive to that. In the 15 years I worked for Intel in compiler support, I never once heard a complaint that a generically compiled program failed to run on AMD processors.

629 Views

No error message. The application just doesn't run. The odd thing is that the only people in the class who can run our program have AMD. Sorry that I can't provide more info. We're not using any -x options. We do use -ipo, and we do link to the Intel MPI libs and MKL and OpenMP. 

Yes, a processor might return different results, but that usually just ends up in some seg fault or similar error. In this case, the program just hangs.

I have a support ticket in on this as well. but unfortunately I'm not really able to provide much more info other than the code just doesn't run. 

Arjen_Markus
Valued Contributor III
613 Views

Could it be that some DLL is missing in the installation on these AMD machines? I have seen this behaviour when some runtime DLL could not be found. No error message in the command window or a message box, the program simply stops immediately. If you start it from a file manager like Windows Explorer you may get a somewhat informative message box, but you can also use tools like Dependency Walker.

598 Views

Thanks for the info. We distribute the Intel run-time libs with our compiled executable. Would an AMD processor need something in addition to these. I'll look into the Dependency Walker. Never heard of if, but I'll see if it helps.

Steve_Lionel
Black Belt Retired Employee
582 Views

"Doesn't run" - you mean they start the program and it silently exits? This has nothing to do with the compiler. I have seen occasional reports of this symptom caused by programs with too much (close to or over) 2GB code and static data, which Windows can't handle. It can also be that antivirus software thinks the program is suspicious and kills it.

I would have them check the Windows event log for application errors from that program name and see what is there.

I doubt missing DLLs are the issue, as Windows would definitely complain about those.

577 Views

What I am hearing from the students is that the program just hangs, producing no output. The test case is fairly small, so I don't think memory is the issue. I'll see if they can find the event log. Thanks.

Steve_Lionel
Black Belt Retired Employee
575 Views

Ah, that is different from "not running". Does this program look for input from the terminal? Does Task Manager show it is using a lot of CPU time?

The description of the symptoms keep shifting, so it's hard to provide you with useful tips.

570 Views

Sorry, I am getting the info second hand myself. I guess what I'm looking for is a way to diagnose the problem. You mentioned event logs. If I open the Windows Event Viewer, where would a command line application that does not run show up? Under "Windows Logs > Application"?

Greg_T_
Valued Contributor I
567 Views

Hi Kevin,

When one of our programs runs with strange behavior, such as the "hang up", I'll ask clients how they are starting the program.  Are they using a double-click on a desktop short cut, or from the Start menu, or a double-click on the exe in the install directory?

I'll also ask clients to open a console (CMD) window, change directory to the install directory, then type in the exe name to start the program.  Sometimes the console window may report error messages that are not seen elsewhere.

Regards, Greg T.

560 Views

Normally our users run the program from the command line:

fds input_file.txt

where fds is the name of our exe, and there is a environment variable that sets the path to the installation directory. With recent versions of the Intel compiler, we must do

mpiexec -n 1 -localonly fds input_file.txt

because we use MPI to run across computers, but many still run on a single computer, hence the -localonly option. Normally, when things go wrong, we get at least some error statement, even if its not readily understood. In this instance with the Athlon processor, nothing is written out good or bad, and the user just control Cs out of it. I'm trying to figure out a way to figure out what is going on. Trouble is, I don't have an AMD computer and I can't play around with debugger options. 

Steve_Lionel
Black Belt Retired Employee
553 Views

If the program runs but is just unresponsive, I wouldn't pursue the Event Viewer. I suggested that back when you said the program didn't run at all. 

I am wondering if there is an MPI issue at work here. I have no idea how to debug MPI, but there is a whole other forum here devoted to that.  Or... at least there used to be. In the new forum hierarchy, I can't find it. Oh, how intuitive. It's Intel® oneAPI HPC Toolkit

I suggest you discard the notion that it is CPU-related, as there's no evidence of that.

View solution in original post

547 Views

Yes, you're probably right. There has been a change in functionality in the past revision cycle of Intel Fortran and MPI. Used to be that we could just run our program at the command line, but now we must invoke mpiexec. This might have something to do with it. 

Thanks for your help.

Reply