PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

Free OpenACC Webinar

quick_GeForce680_x64.exe is not a valid win32 application.
Goto page Previous  1, 2, 3, 4  Next
 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Accelerator Programming
View previous topic :: View next topic  
Author Message
Dolf



Joined: 22 Mar 2012
Posts: 127

PostPosted: Tue Sep 17, 2013 12:37 pm    Post subject: RE: Reply with quote

Hi Mat,

I had the company install windows 7 in their system, but still the code I sent them (which works perfect on my machine) is not working. The error message now is:
Quick5_GeForce680_x64.exe has stopped working.

so now, what do you think is the problem? why the .exe exits like that? did I miss something?
I told the IT tech to install latest display driver and they did, I provided them with the cudart64_50_35.dll to be installed in the same folder as the .exe is that it? do they need to install other software to make it work?
does it matter if they have Intel XEON processor? not Intel i7? this is one difference between my machine (which works) and their machine.
the other difference is I installed cuda development tools version 5 which comes with PVF 13.4 compiler, do they need to install it?

please advice.
Dolf
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6208
Location: The Portland Group Inc.

PostPosted: Tue Sep 17, 2013 2:22 pm    Post subject: Reply with quote

Hi Dolf,

Quote:
it matter if they have Intel XEON processor? not Intel i7? this is one difference between my machine (which works) and their machine
Xeon and i7 are just brand names. What you need to know is the processor model. If you had a model that supports AVX instruction and the customer doesn't, then yes, this can cause illegal instructions to be generated.

Granted, I don't know if this is the actual problem since "stopped working" is very generic. Though, you can try using the PGI Unified Binary feature and have the compiler target multiple architectures or target a generic 64-bit host processor (-tp=px-64).

Let me check with Annemarie to see if she has any other ideas.

- Mat
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6208
Location: The Portland Group Inc.

PostPosted: Tue Sep 17, 2013 3:04 pm    Post subject: Reply with quote

From Annemarie:

Hi Mat,

Couple thoughts. You’ve been on the right track with the redist exes. The “stopped working” messages that Dolf describes are probably happening because of missing DLLs at runtime. Is the user seeing that message launching the exe from a command prompt? By double-clicking the app in Windows Explorer? Sometimes launching from a command prompt yields more error information than just double-clicking the app.

Then I’d have them use depends to track down missing DLLs. Download the x86 version if the exe to be tested is 32-bit; otherwise have them download the x64 version:

http://www.dependencywalker.com/

Dolf could look at the results of his depends run versus the one his colleagues run.

Annemarie
Back to top
View user's profile
Dolf



Joined: 22 Mar 2012
Posts: 127

PostPosted: Tue Sep 17, 2013 3:43 pm    Post subject: RE: Reply with quote

Hi Annemarie and Mat,
thank you for the prompt response, I really appreciate your help.

Quote:
If you had a model that supports AVX instruction and the customer doesn't, then yes, this can cause illegal instructions to be generated
what does that mean? what is AVX?

Quote:
Then I’d have them use depends to track down missing DLLs. Download the x86 version if the exe to be tested is 32-bit; otherwise have them download the x64 version:
I did run dependency walker on my computer, it gave me the following error message:
Errors were detected when processing "quick5_geforce680.exe". see the log window for details.
error log:
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.

any thoughts?
do you think I am missing kernel32.dll ??
thanks,
Dolf
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6208
Location: The Portland Group Inc.

PostPosted: Thu Sep 19, 2013 9:51 am    Post subject: Reply with quote

Hi Dolf,

AVX is a set of newer processor instructions used for vectorization (See: http://en.wikipedia.org/wiki/Advanced_Vector_Extensions). If you build a binary with these instructions and then run the binary on another system with a processor that doesn't support them, you will get an illegal instruction error and you binary won't run.

It's highly doubtful that you're missing "kernel32.dll", more likely depends just isn't finding it. The important thing is to see what the differences are between running depends on your system and running it on the system where the exe won’t run.

- Mat
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Accelerator Programming All times are GMT - 7 Hours
Goto page Previous  1, 2, 3, 4  Next
Page 2 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group