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

Issue running exe's on Windows 7 64-bit VM

Andrew_W_2
Novice
1,349 Views

Hi all

I have been using Intel Fortran Compiler XE 2011 with VS 2010 Pro for some time now on my Lenovo Thinkpad.  I've been running on 64-bit Windows 7 and have successfully compiled and ported applications to 32-bit Windows XP.  I recently moved to a Macbook Pro and am using VMWare Fusion to run Windows 7 (64-bit).  I've installed FCXE 2011 and VS2010 Pro without a hitch and can compile applications fine.  However, I cannot run my executables.  It always hangs and then errors out with a "Access violation writing location" error.  I even created a simple "HelloWorld" project, compiled, and it behaved in the same manner.  Also, applications that I compiled on my Thinkpad and ported to the VM hang and error out as well.  

Any ideas on why this might be happening?

Thanks

 

 

 

0 Kudos
1 Solution
Andrew_W_2
Novice
1,349 Views

Hi all,

I wanted to follow up on this issue in case someone else ran into the same problem. The issue was resolved by simply adding the following lines to the .vmx file:

monitor_control.enable_fullcpuid = TRUE

cpuid.4.4.eax = "0000:0000:0000:0000:0000:0000:0000:0000"

VMware tech support explained the issue as follows: "Basically the new processor has an additional cache and the VMX configuration change recommended hides that cache from the virtual machine. If hiding the additional cache resolved the issue, it indicates a defect with either your Operating System or your compiler or runtime libraries. I would expect that the same application running on the same Operating System directly on the host hardware would exhibit the same failure. Fortunately, with Fusion, you can configure your VM to lie about its deterministic cache parameters by adding the VMX parameter."

As an FYI here are my laptop specs so that the issue can by linked to a system configuration: Model Name: MacBook Pro Model Identifier: MacBookPro11,3 Processor Name: Intel Core i7 Processor Speed: 2.6 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB Memory: 16 GB Boot ROM Version: MBP112.0138.B11

Thanks

View solution in original post

0 Kudos
6 Replies
Steven_L_Intel1
Employee
1,349 Views

I wonder if linking with static libraries (Fortran > Libraries > Use Runtime Library > Multithread (/MT)) changes the behavior.

0 Kudos
Andrew_W_2
Novice
1,349 Views

Thanks, Steve.  I just tried your recommendation and the behavior has not changed.  

Btw, I'm compiling 32-bit (Win32) applications on my 64-bit Windows 7 VM.  I haven't had issues with this in the past on my Lenovo machine, but do you think that in some way this might be part of the problem?

 

0 Kudos
Steven_L_Intel1
Employee
1,349 Views

I have no idea. I do know we have many people successfully using the Windows compiler on VMs on a Mac, so don't know what your issue might be. Probably time to get VMware support involved.

0 Kudos
Andrew_W_2
Novice
1,349 Views

Sorry for the delayed response on this issue.  I have found that if I port the VM from Fusion to Windows in VMware Workstation 11 that my Intel Fortran executables will run.  Also, I've found that if I use Parallels on the Mac to build the VM the same error occurs.  I have contacted VMware and am waiting on a response.  Could there be an issue with the format or type of my hard drive (its an SSD)? It's just so bizarre.

0 Kudos
Steven_L_Intel1
Employee
1,349 Views

You're going to have to work this through VMware. I have never heard of an issue like this relating to type of hard drive. There may be some weird bit in your VM configuration, but that's far outside the scope of what we can help you with here.

0 Kudos
Andrew_W_2
Novice
1,350 Views

Hi all,

I wanted to follow up on this issue in case someone else ran into the same problem. The issue was resolved by simply adding the following lines to the .vmx file:

monitor_control.enable_fullcpuid = TRUE

cpuid.4.4.eax = "0000:0000:0000:0000:0000:0000:0000:0000"

VMware tech support explained the issue as follows: "Basically the new processor has an additional cache and the VMX configuration change recommended hides that cache from the virtual machine. If hiding the additional cache resolved the issue, it indicates a defect with either your Operating System or your compiler or runtime libraries. I would expect that the same application running on the same Operating System directly on the host hardware would exhibit the same failure. Fortunately, with Fusion, you can configure your VM to lie about its deterministic cache parameters by adding the VMX parameter."

As an FYI here are my laptop specs so that the issue can by linked to a system configuration: Model Name: MacBook Pro Model Identifier: MacBookPro11,3 Processor Name: Intel Core i7 Processor Speed: 2.6 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB Memory: 16 GB Boot ROM Version: MBP112.0138.B11

Thanks

0 Kudos
Reply