kernel Density Estimation on CUDA

kernel Density Estimation on CUDA
Q1:
1. Get the computation right on the host (serial) for a very small example. Vector x = {-2.1, –
1.3, -0.4, 1.9, 5.1, 6.2}. Time it.
2. Replicate the host computation for the small example on the Nvidia device using CUDA code. Time
it. It is likely that your device computation will be much slower on the device, especially if data
movement from host to device and back is taken into account.
3. Extend the example to any input array size while comparing that host and device produce the
same result. Keep comparing execution time.
4. Apply the optimisations found on the research paper work indicated above and replicate their
experiments. Organize your experiments in tables. Produce graphs similar to Figure shown below.
5. Try to apply your own ideas for further optimisation. Include them (and briefly explain) even
if they fail to give you an advantage.
Q2:
Write a report on: Kernel Density Estimation on the GPU Using the CUDA Framework. The report should
include (Methodology and implementation) on the following:
1. Sequential Algorithms (univariate&multivariate)
2. Naive CUDA algorithms(univariate & multivariate)
3. CUDA optimisationsalgorithms (univariate & multivariate)
4. Discuss and analyze your results and conclude quantitatively (speedup, bandwidth, etc).
5. Please include all source code ( c++ and CUDA source code with comments ) So that it can be
easily replicated. Use scripts in order to show graphs/tables included in the report can be generated
with little effort.
6. References.

READ ALSO :   Academic help online