Я попытался запустить Rodinia на своем компьютере с cuda 5.5, учитывая make-файл, предоставленный костюмами Rodinia. В общем файле конфигурации я меняю местоположение каталога с/usr/local/cuda/на/usr/local/cuda/cuda и оставляю все без изменений. Мой nvcc работает отлично. Однако, когда я печатаю в замыкающих, я получил ошибкуRodinia Файл не найден, когда «make»
/USR/местные/CUDA/CUDA/bin/NVCC -I/USR/местные/CUDA/CUDA/включают -O2 -c backprop_cuda.cu backprop_cuda. куб: 12: 35: ошибка: backprop_cuda_kernel.cu: Нет такого файла или каталога
при этом явно в каталоге есть файл с именем backprop_cuda_kernel.cu
backprop.c backprop.h facetrain.o Makefile
backprop_cuda.cu backprop.o imagenet.c Makefile_nvidia
backprop_cuda_kernel.cu facetrain.c imagenet.o run
файл делают это:
include ../../common/make.config
CC = gcc
CC_FLAGS = -g -O2
NVCC = $(CUDA_DIR)/bin/nvcc
NVCC_FLAGS = -I$(CUDA_DIR)/include
ifeq ($(dbg),1)
NVCC_FLAGS += -g -O0
else
NVCC_FLAGS += -O2
endif
ifeq ($(emu),1)
NVCC_FLAGS += -deviceemu
endif
backprop: backprop.o facetrain.o imagenet.o backprop_cuda.o
$(CC) $ (CC_FLAGS) backprop.o facetrain.o imagenet.o backprop_cuda.o -o backprop -
L$(CUDA_LIB_DIT) -lcuda -lcudart -lm
%.o: %.[ch]
$(CC) $(CC_FLAGS) $< -c
facetrain.o: facetrain.c backprop.h
$(CC) $(CC_FLAGS) facetrain.c -c
backprop.o: backprop.c backprop.h
$(CC) $(CC_FLAGS) backprop.c -c
backprop_cuda.o:backprop_cuda.cu backprop.h $(NVCC) $(NVCC_FLAGS) -c backprop_cuda.cu
imagenet.o: imagenet.c backprop.h $(CC) $(CC_FLAGS) imagenet.c -c
clean: rm -f *.o *~ backprop backprop_cuda.linkinfo
Извините, я не мог поместить его в формат кода, веб-сайты постоянно говорят мне, что мой отступ неверен
Спасибо заранее.
Где я могу добавить -I $ (CURDIR). в файле make, указанном выше, или в общем файле конфигурации? Я заранее извиняюсь, если это простой вопрос, поскольку я очень новичок в этом. – user3253821
Я не знаю, к какому «обычному файлу конфигурации» вы обращаетесь. Я предлагаю добавить новый флаг '-I' в том же месте, что и текущий, в переменной' NVCC_FLAGS' в make-файле. Просто помните, что StackOverflow предназначен для быстрого ответа на конкретные технические вопросы. Это не место для изучения учебника о том, как писать программы и т. Д. Если вы действительно ничего не знаете об этих инструментах, сначала вы должны сначала найти и прочитать документацию, а затем, если у вас есть вопросы по деталям, StackOverflow - это хорошее место для Помогите. – MadScientist