Multithreaded build VS2008 support multithreaded build with /MP [n]. nvcc adds /E though..

I use Visual Studio 2008. My program has grown somewhat in number of files and I figure that the compile time will be reduced by up’ing the number of compiler threads. This is done by adding /MP. The problem is that nvcc apparently add /E to the build command and /E suppress /MP… I don’t see /E in the compile macro/build rule…

Sample build command line:

[codebox]“C:\cuda\bin\nvcc.exe” -arch sm_10 -ccbin “C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin” -Xcompiler “/W3 /nologo /Od /Zi /MT” -I"\include" -maxrregcount=32 --compile -o “project.cu.obj” “project.vcproj”[/codebox]

Sample build command line (/MP added:

[codebox]“C:\cuda\bin\nvcc.exe” -arch sm_10 -ccbin “C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin” -Xcompiler “/W3 /nologo /Od /Zi /MT /MP 8” -I"\include" -maxrregcount=32 --compile -o “project.cu.obj” “project.vcproj”[/codebox]

Is it possible for nvcc not to add /E?

rgds

Morten

I use Visual Studio 2008. My program has grown somewhat in number of files and I figure that the compile time will be reduced by up’ing the number of compiler threads. This is done by adding /MP. The problem is that nvcc apparently add /E to the build command and /E suppress /MP… I don’t see /E in the compile macro/build rule…

Sample build command line:

[codebox]“C:\cuda\bin\nvcc.exe” -arch sm_10 -ccbin “C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin” -Xcompiler “/W3 /nologo /Od /Zi /MT” -I"\include" -maxrregcount=32 --compile -o “project.cu.obj” “project.vcproj”[/codebox]

Sample build command line (/MP added:

[codebox]“C:\cuda\bin\nvcc.exe” -arch sm_10 -ccbin “C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin” -Xcompiler “/W3 /nologo /Od /Zi /MT /MP 8” -I"\include" -maxrregcount=32 --compile -o “project.cu.obj” “project.vcproj”[/codebox]

Is it possible for nvcc not to add /E?

rgds

Morten

Output with /MP 8:

[codebox]

2>cl : Command line warning D9030 : ‘/E’ is incompatible with multiprocessing; ignoring /MP switch

2>8

2>main.cu

2>c1xx : fatal error C1083: Cannot open source file: ‘8’: No such file or directory[/codebox]

Output with /MP 8:

[codebox]

2>cl : Command line warning D9030 : ‘/E’ is incompatible with multiprocessing; ignoring /MP switch

2>8

2>main.cu

2>c1xx : fatal error C1083: Cannot open source file: ‘8’: No such file or directory[/codebox]