Я учусь на первом курсе факультета компьютерных наук в университете Белграда. Мой проект Soft Computing заключается в сравнении производительности CUDA-реализаций различных алгоритмов, основанных на населении, таких как генетические алгоритмы, Ant Colony Optimization, Bee Colony, Firefly.и PSO.Я не ожидаю от меня написания всех этих кодов, поскольку я учусь на первом курсе. Моя задача - просто попытаться найти коды, запустить их и измерить разницу в производительности между реализациями CPU и GPU.
Несколько хороших людей прислали мне реализацию генетического алгоритма CUDA, разработанную под Linux.Поскольку я не очень знаком с Linux, у меня возникли проблемы с созданием и запуском CUDA-проекта в visual studio на windows.
Файл Make включен в проект, но я думаю, что он не завершен.Файл Make включает в себя другой файл make, которого у меня нет.Я пытался запустить его под win 7, но это оказалось безуспешным, поэтому я установил win xp, visual studio 2008, CUDA SDK 2.3 и соответствующие драйверы.Что бы я ни старался, у меня всегда одни и те же проблемы.
Во-первых, я получил u_int32_t is undefined
(u_int32_t
- это пользовательский тип), поэтому я заменяю его на __int32
, и это решает проблему.После этого я получаю следующие ошибки: rint is not defined
и log2 is not defined
.Я не знаю, почему я получаю эти ошибки, поскольку math_functions.h
косвенно включен в проект через common_functions.h
.Затем я помещаю две строки с этими функциями в комментарии и даю фиксированные значения этим переменным.
И после этого я получаю ошибки компоновщика.Например:
Ошибка 3, ошибка LNK2019: неразрешенный внешний символ _h_fit, указанный в функции "public: __thiscallGa :: Ga (int *, char * *)
Есть лиЧто еще я могу сделать? Кроме того, я был бы очень благодарен, если бы кто-нибудь пожелал отправить мне реализацию CUDA Генетического алгоритма, который работает. Мой адрес электронной почты находится в моем профиле.
РЕДАКТИРОВАТЬ:
Я установил include pats для всех h-файлов, связал pats с lib-файлами. Я также установил правило сборки CUDA. Я могу нормально создавать и запускать другие проекты CUDA.