So, I am following this setup process…
So far, it is a useful tutorial but there are a few caveats for someone not yet familiar with C++ and C::B that I thought are worth mentioning.
First: if you are using an NVIDIA GPU you need to DL/install the CUDA toolkit.
Then, when setting the compiler string (under Search Directories in C::B) for Windows it should look something like “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\include”. This relates directly to the include statement at the beginning of your code, “#include <CL/cl.h>”. Similarly, your linker string should be something like “C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\lib\x64”.
Finally, I still received 4 errors after compiling the tutorial’s example code. I will post a resolution to those errors soon.
The primary intent of this research project is to investigate the use of programmable logic for creating indexes for database management systems. I have identified the database index as a concurrent process of the system that is well suited for a parallel hardware processing solution. In addition, I will be exploring OpenCL, a high-level language created for parallel processing solutions, as the language of choice for this solution as it provides an environment that is suitable to a Database Administrator (DBA) or database programmer that might not be familiar with programmable logic. I will be identifying, reading and reviewing a book on OpenCL for FPGAs in order to learn the language. As this is a relatively new subject, there are few resources currently available and none on campus. Finally, in order to design my solution and test my findings I will purchase a Zedboard which utilizes a Xilinx Zynq 7000 All Programmable SoC. This platform contains both an ARM based CPU and an FPGA. The flexibility of this system will allow me to compare a parallel processing solution with one that does not use a parallel process on the same hardware system. This should ensure an accurate comparison.