Installation von pycuda-2013.1.1 unter Windows 7 64-Bit

Zu Ihrer Information, ich habe 64-Bit-Version von Python 2.7 und ich folgtedie pycuda installation anweisung Pycuda zu installieren.

Und ich habe keine Probleme beim Ausführen des folgenden Skripts.

import pycuda.driver as cuda
import pycuda.autoinit
from pycuda.compiler import SourceModule
import numpy
a = numpy.random.randn(4,4)
a = a.astype(numpy.float32)
a_gpu = cuda.mem_alloc(a.nbytes)
cuda.memcpy_htod(a_gpu,a)

Aber danach, wenn Sie diese Anweisung ausführen,

mod = SourceModule("""
__global__ void doublify(float *a)
{
int idx = threadIdx.x + threadIdx.y * 4;
a[idx] *= 2;
}
""")

Ich habe die Fehlermeldungen erhalten

CompileError: nvcc-Kompilierung von c: \ users \ xxxx \ appdata \ local \ temp \ tmpaoxt97 \ kernel.cu fehlgeschlagen [Befehl: nvcc --cubin -arch sm_21 -m64 -Ic: \ python27 \ lib \ site-packages \ pycuda \ cuda kernel.cu] [stderr: nvcc: schwerwiegender Fehler: nvcc kann keine unterstützte Version von Microsoft Visual Studio finden. Es werden nur die Versionen 2008, 2010 und 2012 unterstützt

Aber ich habe VS 2008 und VS 2010 auf dem Computer installiert und Pfad und NVCC-Profil wie angewiesen festgelegt. Kann mir jemand sagen, was los ist?

UPDATE1: Wie cgohike hervorhob, wird das Problem gelöst, wenn Sie die folgenden Anweisungen vor der problematischen Anweisung ausführen.

import os
os.system("vcvarsamd64.bat")