Arrayfire conflict on VS2010 platform

[Old posts from the commercial version of ArrayFire] Discussion of ArrayFire using CUDA or OpenCL.

Moderator: pavanky

Arrayfire conflict on VS2010 platform

Postby GBenito » Mon Jan 13, 2014 7:09 am

Hi,

I'm running Arrayfire 1.9 along with CUDA 5.0 32bit on Visual Studio 2010.

The algorithm i have been working for was compiling and running just fine untill past 20th December when, after writing a few new command lines for a GFOR loop couldn't compile.

I posted about that GFOR loop in this forum as: http://forums.accelereyes.com/forums/viewtopic.php?f=17&t=42656

But when I was trying out the solutions proposed there, I started to get this runtime error in which my program stops and shows Debug Error:

code R6010:
- abort() has been called.


I've already tried erasing all the new command lines since my last working version as well as reinstalling VS2010, CUDA 5.0 and Arrayfire 1.9 all over again, but that doesn't work.

Only when I comment all af:: namespace command lines, the program runs, so I know it's a conflict that Arrayfire has, either with CUDA or VS2010...
GBenito
 
Posts: 32
Joined: Sun Nov 10, 2013 3:58 pm

Re: Arrayfire conflict on VS2010 platform

Postby pavanky » Mon Jan 13, 2014 9:40 am

Hi,

Are you using the free version of arrayfire or do you have a pro license ?

Also put arrayfire code in a "try /catch" block so you can exactly see what exactly the error is.

For example you can do something like this.

Code: Select all
try {
  af::info();
 // array fire code here
} catch (af::exception &e) {
 std::cout << e.what() << std::endl;
}
Pavan Yalamanchili,
ArrayFire
--
~ If it is not broken, you have not tried hard enough ~
User avatar
pavanky
Site Admin
 
Posts: 1123
Joined: Mon Mar 15, 2010 7:39 pm
Location: Atlanta, GA

Re: Arrayfire conflict on VS2010 platform

Postby GBenito » Mon Jan 13, 2014 6:39 pm

Hello,

Thanks for the tip on "try" usage, now it clearly shows that the problem lies in the fact that i'm using a free version and so it happens to be difficulties to connect to the server.

"Try" comes back with the following message:

src/gena/gi_core.cpp:39: error: src/license.cpp:250: unable to connect to license server, see http://accelereyes.com/faq?q=148

Though i connot get to that url (doesn't find it).
GBenito
 
Posts: 32
Joined: Sun Nov 10, 2013 3:58 pm

Re: Arrayfire conflict on VS2010 platform

Postby pavanky » Mon Jan 13, 2014 6:44 pm

We changed our license server mechanism from version 1.9 to 2.0. This broke backwards compatibility for the free version. You will need to upgrade to 2.0 to fix the issue.

You will also need to upgrade CUDA driver and toolkit to version 5.5 to have arrayfire 2.0 work on your machine. We also stopped supporting windows 32 bit, so please do not upgrade your machine you are running that OS. If you are using windows 32 bit system, we will need to figure out a work around in the interim.
Pavan Yalamanchili,
ArrayFire
--
~ If it is not broken, you have not tried hard enough ~
User avatar
pavanky
Site Admin
 
Posts: 1123
Joined: Mon Mar 15, 2010 7:39 pm
Location: Atlanta, GA

Re: Arrayfire conflict on VS2010 platform

Postby GBenito » Tue Jan 14, 2014 7:13 pm

Hi,

Fortunatelly, i'm running on Windows 7 64bit. I already installed CUDA 5.5 and Arrayfire 2.0. Created a CUDA 5.5 project and copied the content of my CUDA 5.0 project into this new one and, last, linked the project all over again.

Now whenever i try to compile the project, I get several messages like this one:

error : "af_none" has already been declared in the current scope c:\program files\accelereyes\arrayfire\2.0\include\af\defines.h 5


error : cannot overload functions distinguished by return type alone c:\program files\accelereyes\arrayfire\2.0\include\af\defines.h 57


error : invalid redeclaration of type name "af_alloc_fn" c:\program files\accelereyes\arrayfire\2.0\include\af\defines.h 79


error MSB3721: The command ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\bin\nvcc.exe" -gencode=arch=compute_10,code=\"sm_10,compute_10\" --use-local-env --cl-version 2010 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin" -I"C:\Program Files\AccelerEyes\ArrayFire\2.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include" -I"C:\Program Files\AccelerEyes\ArrayFire\2.0\Evaluacion20" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include" -G --keep-dir Debug -maxrregcount=0 --machine 32 --compile -cudart static -g -DWIN32 -D_DEBUG -D_CONSOLE -D_MBCS -Xcompiler "/EHsc /W3 /nologo /Od /Zi /RTC1 /MDd " -o Debug\ArrayCU3.cu.obj "C:\Program Files\AccelerEyes\ArrayFire\2.0\Evaluacion20\ArrayCU3.cu"" exited with code 2. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\CUDA 5.5.targets 592


For a total of 96 errors.

I must add i'm debugging my project as a Win32 type.
GBenito
 
Posts: 32
Joined: Sun Nov 10, 2013 3:58 pm

Re: Arrayfire conflict on VS2010 platform

Postby shehzan » Tue Jan 14, 2014 7:21 pm

Hi

ArrayFire does not support 32-bit application on Windows. You will need to debug and run this as a 64-bit application.
If you are using a CUDA project, the a 64-bit configuration should be available in the Solution Configurations box.
You may need to redo the configuration setup for 64 bit.

You can take a look at our documentation to make sure that you have setup your project correctly. http://www.accelereyes.com/arrayfire/c/ ... ojects.htm

Let me know how it goes.
----
Shehzan
Developer
AccelerEyes
User avatar
shehzan
 
Posts: 121
Joined: Tue Feb 12, 2013 7:20 pm

Re: Arrayfire conflict on VS2010 platform

Postby GBenito » Fri Jan 17, 2014 5:29 pm

Hi,

Now the problem seems to have been solved. The program compiles and runs normally.

Thanks for your assistance!
GBenito
 
Posts: 32
Joined: Sun Nov 10, 2013 3:58 pm


Return to [archive-commercial] Programming & Development with ArrayFire

cron