diff --git a/Part1/PROJ_WIN/CIS565_PROJ_1.suo b/Part1/PROJ_WIN/CIS565_PROJ_1.suo
index ad46c84..66028e2 100644
Binary files a/Part1/PROJ_WIN/CIS565_PROJ_1.suo and b/Part1/PROJ_WIN/CIS565_PROJ_1.suo differ
diff --git a/Part1/PROJ_WIN/CIS565_PROJ_1/CIS565_PROJ_1.vcxproj b/Part1/PROJ_WIN/CIS565_PROJ_1/CIS565_PROJ_1.vcxproj
index 4c88226..6b18a53 100644
--- a/Part1/PROJ_WIN/CIS565_PROJ_1/CIS565_PROJ_1.vcxproj
+++ b/Part1/PROJ_WIN/CIS565_PROJ_1/CIS565_PROJ_1.vcxproj
@@ -30,7 +30,7 @@
-
+
@@ -114,6 +114,6 @@
-
+
\ No newline at end of file
diff --git a/Part1/PROJ_WIN/CIS565_PROJ_1/vc100.pdb b/Part1/PROJ_WIN/CIS565_PROJ_1/vc100.pdb
index b662f85..8ef447f 100644
Binary files a/Part1/PROJ_WIN/CIS565_PROJ_1/vc100.pdb and b/Part1/PROJ_WIN/CIS565_PROJ_1/vc100.pdb differ
diff --git a/Part1/PROJ_WIN/src/kernel.cu.deps b/Part1/PROJ_WIN/src/kernel.cu.deps
index 926dd55..12eb82b 100644
--- a/Part1/PROJ_WIN/src/kernel.cu.deps
+++ b/Part1/PROJ_WIN/src/kernel.cu.deps
@@ -1,568 +1,568 @@
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\cuda_runtime.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_config.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sal.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\cuda_runtime.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_config.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sal.h
c:\program files (x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vadefs.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\limits.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stddef.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\channel_descriptor.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_runtime_api.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_device_runtime_api.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_runtime_api.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\common_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\string.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\time.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wtime.inl
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\time.inl
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\math_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\math.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdlib.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cmath
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\yvals.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\use_ansi.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\math.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstdlib
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\channel_descriptor.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\channel_descriptor.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_11_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_12_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_13_double_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_20_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_32_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_35_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_32_atomic_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_20_intrinsics.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_30_intrinsics.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_32_intrinsics.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_35_intrinsics.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\sm_32_intrinsics.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_fetch_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\cuda_texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_indirect_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_indirect_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\builtin_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\driver_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\surface_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\texture_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\host_defines.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_functions.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\device_launch_parameters.h
-c:\program files\nvidia gpu computing toolkit\cuda\v5.5\include\vector_types.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdio.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\swprintf.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\cuda.h
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm/glm.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core/_fixes.hpp
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\climits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cfloat
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\float.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtwrn.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\limits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ymath.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cwchar
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wchar.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstddef
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstddef
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstdio
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core/setup.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/_detail.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\setup.hpp
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cassert
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\assert.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/_vectorize.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/type.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_half.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_half.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_detail.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_float.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_half.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\setup.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_int.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\setup.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_detail.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_gentype.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_size.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec1.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_gentype.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_float.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_int.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_size.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_swizzle.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_swizzle_func.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec1.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec2.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_float.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_int.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_size.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_swizzle.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec2.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec3.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_float.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_int.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_size.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_swizzle.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec3.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec4.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_float.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_int.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_size.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_swizzle.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_vec4.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x2.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_gentype.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x2.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x3.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x3.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x4.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat2x4.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x2.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x2.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x3.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x3.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x4.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat3x4.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x2.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x2.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x3.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x3.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x4.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\type_mat4x4.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_trigonometric.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_trigonometric.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_exponential.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_exponential.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_common.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_fixes.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_common.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_packing.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_packing.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_geometric.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_geometric.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_matrix.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_matrix.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_vector_relational.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\_detail.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_vector_relational.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_integer.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_integer.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/func_noise.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core\func_noise.inl
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\./core/_swizzle.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\utilities.h
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm/glm.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core/_fixes.hpp
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\algorithm
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\memory
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xmemory
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\new
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\exception
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\eh.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\malloc.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xutility
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\utility
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iosfwd
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstring
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdbg.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\type_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xtr1common
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\typeinfo
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\intrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\setjmp.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\immintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wmmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\nmmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\smmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\tmmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\pmmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\emmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xmmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ammintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mm3dnow.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mmintrin.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\istream
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ostream
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ios
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocnum
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\streambuf
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xiosbase
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocale
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdexcept
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstring
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocinfo
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocinfo.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\locale.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xdebug
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\system_error
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cerrno
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\errno.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\share.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iterator
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sstream
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\string
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vector
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfunctional
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\cudaMat4.h
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm/glm.hpp
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\glm\core/_fixes.hpp
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\cuda_runtime.h
-c:\users\harmoli\documents\cis565\project3-simulation\part1\src\kernel.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/config.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/simple_defines.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/compiler.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\cuda.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/host_system.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/device_system.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/host_device.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\host_defines.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/debug.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/compiler_fence.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/forceinline.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/config/hd_warning_disable.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/cstdint.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/discard_block_engine.h
-c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iostream
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/random_core_access.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/discard_block_engine.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/linear_congruential_engine.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/linear_congruential_engine_discard.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/mod.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/linear_congruential_engine.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/linear_feedback_shift_engine.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/linear_feedback_shift_engine_wordmask.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/linear_feedback_shift_engine.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/subtract_with_carry_engine.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/subtract_with_carry_engine.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/xor_combine_engine.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/type_traits.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/type_traits/has_trivial_assign.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/xor_combine_engine_max.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/mpl/math.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/xor_combine_engine.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/uniform_int_distribution.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/pair.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/pair.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/swap.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/detail/integer_traits.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/uniform_int_distribution.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/uniform_real_distribution.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/uniform_real_distribution.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/normal_distribution.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/normal_distribution_base.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\thrust/random/detail/normal_distribution.inl
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\math_constants.h
-C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.5\include\cuda.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vadefs.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\limits.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stddef.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\channel_descriptor.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_runtime_api.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_device_runtime_api.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_runtime_api.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\common_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\string.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\time.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wtime.inl
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\time.inl
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\math_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\math.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdlib.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cmath
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\yvals.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\use_ansi.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\math.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstdlib
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\channel_descriptor.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\channel_descriptor.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_11_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_12_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_13_double_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_20_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_32_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_35_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_32_atomic_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_20_intrinsics.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_30_intrinsics.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_32_intrinsics.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_35_intrinsics.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\sm_32_intrinsics.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_fetch_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\cuda_texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_indirect_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_indirect_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\builtin_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\driver_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\surface_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\texture_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\host_defines.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_functions.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\device_launch_parameters.h
+c:\program files\nvidia gpu computing toolkit\cuda\v6.5\include\vector_types.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdio.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\swprintf.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\cuda.h
+c:\users\samantha\documents\github\project-1\part1\src\glm/glm.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core/_fixes.hpp
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\climits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cfloat
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\float.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtwrn.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\limits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ymath.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cwchar
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wchar.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstddef
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstddef
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstdio
+c:\users\samantha\documents\github\project-1\part1\src\glm\core/setup.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/_detail.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\setup.hpp
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cassert
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\assert.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/_vectorize.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/type.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_half.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_half.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_detail.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_float.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_half.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\setup.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_int.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\setup.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_detail.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_gentype.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_size.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec1.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_gentype.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_float.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_int.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_size.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_swizzle.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_swizzle_func.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec1.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec2.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_float.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_int.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_size.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_swizzle.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec2.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec3.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_float.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_int.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_size.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_swizzle.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec3.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec4.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_float.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_int.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_size.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_swizzle.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_vec4.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x2.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_gentype.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x2.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x3.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x3.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x4.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat2x4.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x2.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x2.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x3.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x3.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x4.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat3x4.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x2.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x2.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x3.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x3.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x4.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\type_mat4x4.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_trigonometric.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_trigonometric.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_exponential.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_exponential.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_common.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_fixes.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_common.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_packing.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_packing.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_geometric.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_geometric.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_matrix.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_matrix.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_vector_relational.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\_detail.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_vector_relational.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_integer.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_integer.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/func_noise.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core\func_noise.inl
+c:\users\samantha\documents\github\project-1\part1\src\glm\./core/_swizzle.hpp
+c:\users\samantha\documents\github\project-1\part1\src\utilities.h
+c:\users\samantha\documents\github\project-1\part1\src\glm/glm.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core/_fixes.hpp
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\algorithm
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\memory
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xmemory
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\new
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\exception
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\eh.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\malloc.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xutility
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\utility
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iosfwd
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstring
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdbg.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\type_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xtr1common
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxtype_traits
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\typeinfo
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\intrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\setjmp.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\immintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\wmmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\nmmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\smmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\tmmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\pmmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\emmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xmmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mm3dnow.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\mmintrin.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfwrap1
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xxshared
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\istream
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ostream
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ios
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocnum
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\streambuf
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xiosbase
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocale
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdexcept
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xstring
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocinfo
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocinfo.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\locale.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xdebug
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\system_error
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cerrno
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\errno.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\share.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iterator
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\sstream
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\string
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vector
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfunctional
+c:\users\samantha\documents\github\project-1\part1\src\cudaMat4.h
+c:\users\samantha\documents\github\project-1\part1\src\glm/glm.hpp
+c:\users\samantha\documents\github\project-1\part1\src\glm\core/_fixes.hpp
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\cuda_runtime.h
+c:\users\samantha\documents\github\project-1\part1\src\kernel.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/config.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/simple_defines.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/compiler.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\cuda.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/host_system.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/device_system.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/host_device.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\host_defines.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/debug.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/compiler_fence.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/forceinline.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/hd_warning_disable.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/config/global_workarounds.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/cstdint.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/discard_block_engine.h
+C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iostream
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/random_core_access.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/discard_block_engine.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/linear_congruential_engine.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/linear_congruential_engine_discard.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/mod.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/linear_congruential_engine.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/linear_feedback_shift_engine.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/linear_feedback_shift_engine_wordmask.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/linear_feedback_shift_engine.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/subtract_with_carry_engine.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/subtract_with_carry_engine.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/xor_combine_engine.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/type_traits.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/type_traits/has_trivial_assign.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/xor_combine_engine_max.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/mpl/math.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/xor_combine_engine.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/uniform_int_distribution.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/pair.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/pair.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/swap.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/detail/integer_traits.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/uniform_int_distribution.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/uniform_real_distribution.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/uniform_real_distribution.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/normal_distribution.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/normal_distribution_base.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\thrust/random/detail/normal_distribution.inl
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\math_constants.h
+C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.5\include\cuda.h
diff --git a/Part1/src/kernel.cu b/Part1/src/kernel.cu
index ee9b9e5..aeee6ab 100644
--- a/Part1/src/kernel.cu
+++ b/Part1/src/kernel.cu
@@ -83,25 +83,67 @@ __global__ void generateCircularVelArray(int time, int N, glm::vec3 * arr, glm::
}
}
+
+
+//I ADDED THIS FUNCTION AS A HELPER
+//REMEMBER : F = (G * m_a * m_b) / (r_ab ^ 2)
+__device__ glm::vec3 accelerateHelper(glm::vec4 p1, glm::vec4 p2)
+{
+ glm::vec3 r = glm::vec3(p2.x - p1.x, p2.y - p1.y, p2.z - p1.z);
+ float r_ab1 = pow(r.x,2.f) + pow(r.y,2.f) + pow(r.z,2.f) + 0.000001;
+ float r_ab2 = 1/sqrt(r_ab1*r_ab1*r_ab1);
+ float f = p2.w * r_ab2;
+ if (sqrt(pow(r.x,2.f) + pow(r.y,2.f) + pow(r.z,2.f)) >= 1) {
+ f *= G;
+ }
+ return r*f;
+}
+
// TODO: Core force calc kernel global memory
// HINT : You may want to write a helper function that will help you
// calculate the acceleration contribution of a single body.
// REMEMBER : F = (G * m_a * m_b) / (r_ab ^ 2)
__device__ glm::vec3 accelerate(int N, glm::vec4 my_pos, glm::vec4 * their_pos)
{
- return glm::vec3(0.0f);
+ glm::vec3 a = glm::vec3(0,0,0);
+ glm::vec3 temp = glm::vec3(0,0,0);
+ for (int i = 0; i < N; i++) {
+ if (my_pos != their_pos[i]) {
+ a += accelerateHelper(my_pos, their_pos[i]);
+ }
+ }
+ glm::vec4 starPos = glm::vec4(0,0,0,starMass);
+ a += accelerateHelper(my_pos, starPos);
+ return a;
}
// TODO : update the acceleration of each body
__global__ void updateF(int N, float dt, glm::vec4 * pos, glm::vec3 * vel, glm::vec3 * acc)
{
// FILL IN HERE
+
+ for (int i = 0; i < N; i++) {
+ glm::vec3 a = accelerate(N, pos[i], pos);
+ acc[i].x = a.x;
+ acc[i].y = a.y;
+ acc[i].z = a.z;
+ }
+
}
// TODO : update velocity and position using a simple Euler integration scheme
-__global__ void updateS(int N, float dt, glm::vec4 * pos, glm::vec3 * vel, glm::vec3 * acc)
+__global__ void updateS(int N, float dt, glm::vec4 * pos, glm::vec3 * vel, glm::vec3 * acc) //DONE
{
- // FILL IN HERE
+ for (int i = 0; i < N; i++) {
+
+ vel[i].x += acc[i].x * dt;
+ vel[i].y += acc[i].y * dt;
+ vel[i].z += acc[i].z * dt;
+
+ pos[i].x += vel[i].x * dt;
+ pos[i].y += vel[i].y * dt;
+ pos[i].z += vel[i].z * dt;
+ }
}
// Update the vertex buffer object
@@ -179,7 +221,9 @@ void initCuda(int N)
// TODO : Using the functions you wrote above, write a function that calls the CUDA kernels to update a single sim step
void cudaNBodyUpdateWrapper(float dt)
{
- // FILL IN HERE
+ dim3 fullBlocksPerGrid((int)ceil(float(numObjects)/float(blockSize)));
+ updateF<<>>(numObjects, dt, dev_pos, dev_vel, dev_acc);
+ updateS<<>>(numObjects, dt, dev_pos, dev_vel, dev_acc);
}
void cudaUpdateVBO(float * vbodptr, int width, int height)
diff --git a/Part1/src/main.cpp b/Part1/src/main.cpp
index ea86207..2afd9b3 100644
--- a/Part1/src/main.cpp
+++ b/Part1/src/main.cpp
@@ -4,7 +4,7 @@
#include "main.h"
-#define N_FOR_VIS 5000
+#define N_FOR_VIS 700//5000
#define DT 0.2
#define VISUALIZE 1
//-------------------------------
diff --git a/Part2/Samantha Cohen-Project-1-2.sln b/Part2/Samantha Cohen-Project-1-2.sln
new file mode 100644
index 0000000..38db184
--- /dev/null
+++ b/Part2/Samantha Cohen-Project-1-2.sln
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Samantha Cohen-Project-1-2", "Samantha Cohen-Project-1-2\Samantha Cohen-Project-1-2.vcxproj", "{4268F3F4-F228-424F-B1EB-0E8E3109FA7E}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {4268F3F4-F228-424F-B1EB-0E8E3109FA7E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4268F3F4-F228-424F-B1EB-0E8E3109FA7E}.Debug|Win32.Build.0 = Debug|Win32
+ {4268F3F4-F228-424F-B1EB-0E8E3109FA7E}.Release|Win32.ActiveCfg = Release|Win32
+ {4268F3F4-F228-424F-B1EB-0E8E3109FA7E}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj b/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj
new file mode 100644
index 0000000..f310f12
--- /dev/null
+++ b/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj
@@ -0,0 +1,73 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {4268F3F4-F228-424F-B1EB-0E8E3109FA7E}
+ SamanthaCohenProject12
+
+
+
+ Application
+ true
+ MultiByte
+
+
+ Application
+ false
+ true
+ MultiByte
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ Disabled
+
+
+ true
+ cudart.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ MaxSpeed
+ true
+ true
+
+
+ true
+ true
+ true
+
+
+
+
+ Document
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj.filters b/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj.filters
new file mode 100644
index 0000000..f07abd3
--- /dev/null
+++ b/Part2/Samantha Cohen-Project-1-2/Samantha Cohen-Project-1-2.vcxproj.filters
@@ -0,0 +1,22 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hpp;hxx;hm;inl;inc;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Source Files
+
+
+
\ No newline at end of file
diff --git a/Part2/Samantha Cohen-Project-1-2/matrix_math.cu b/Part2/Samantha Cohen-Project-1-2/matrix_math.cu
new file mode 100644
index 0000000..1774d84
--- /dev/null
+++ b/Part2/Samantha Cohen-Project-1-2/matrix_math.cu
@@ -0,0 +1,240 @@
+#include
+#include
+
+void CPU_mat_sub(float* M, float* N, float* P, int width) {
+ for (int i = 0; i < width; i++) {
+ for (int j = 0; j < width; j++) {
+ P[i*width+j] = M[i*width+j] - N[i*width+j];
+ }
+ }
+}
+
+void CPU_mat_add(float* M, float* N, float* P, int width) {
+ for (int i = 0; i < width; i++) {
+ for (int j = 0; j < width; j++) {
+ P[i*width+j] = M[i*width+j] + N[i*width+j];
+ }
+ }
+}
+
+void CPU_mat_mult(float* M, float* N, float* P, int width) {
+ P = new float[25];
+ for (int i = 0; i < width; i++) {
+ for (int j = 0; j < width; j++) {
+ P[i*width+j] += M[i*width+j] * N[j*width+i];
+ }
+ }
+}
+
+__global__ void mat_sub_kernel(float* Md, float* Nd, float* Pd, int width) {
+ int tx = threadIdx.x;
+ int ty = threadIdx.y;
+
+ float Pvalue = Md[ty*width+tx] - Nd[ty*width+tx];
+
+ Pd[ty*width+tx] = Pvalue;
+}
+
+void mat_sub(float* M, float* N, float* P, int width) {
+ int size = width * width * sizeof(float);
+ float *Md;
+ float *Nd;
+ float *Pd;
+ //Matrix 1
+ cudaMalloc((void**)&Md, size);
+ cudaMemcpy(Md,M,size,cudaMemcpyHostToDevice);
+ //Matrix 2
+ cudaMalloc((void**)&Nd, size);
+ cudaMemcpy(Nd,N,size,cudaMemcpyHostToDevice);
+
+ cudaMalloc((void**)&Pd, size);
+
+ dim3 dimBlock(width, width);
+ dim3 dimGrid(1, 1);
+
+ mat_sub_kernel<<>>(Md, Nd, Pd, width);
+
+ cudaMemcpy(P, Pd, size, cudaMemcpyDeviceToHost);
+ cudaFree(Md);
+ cudaFree(Nd);
+ cudaFree(Pd);
+}
+
+__global__ void mat_add_kernel(float* Md, float* Nd, float* Pd, int width) {
+ int tx = threadIdx.x;
+ int ty = threadIdx.y;
+
+ float Pvalue = Md[ty*width+tx] + Nd[ty*width+tx];
+
+ Pd[ty*width+tx] = Pvalue;
+}
+
+void mat_add(float* M, float* N, float* P, int width) {
+ int size = width * width * sizeof(float);
+ float *Md;
+ float *Nd;
+ float *Pd;
+ //Matrix 1
+ cudaMalloc((void**)&Md, size);
+ cudaMemcpy(Md,M,size,cudaMemcpyHostToDevice);
+ //Matrix 2
+ cudaMalloc((void**)&Nd, size);
+ cudaMemcpy(Nd,N,size,cudaMemcpyHostToDevice);
+
+ cudaMalloc((void**)&Pd, size);
+
+ dim3 dimBlock(width, width);
+ dim3 dimGrid(1, 1);
+
+ mat_add_kernel<<>>(Md, Nd, Pd, width);
+
+ cudaMemcpy(P, Pd, size, cudaMemcpyDeviceToHost);
+ cudaFree(Md);
+ cudaFree(Nd);
+ cudaFree(Pd);
+}
+__global__ void mat_mult_kernel(float* Md, float* Nd, float* Pd, int width) {
+ int tx = threadIdx.x;
+ int ty = threadIdx.y;
+
+ float Pvalue = 0;
+
+ for (int k = 0; k < width; ++k) {
+ float Mdelement = Md[ty * width + k];
+ float Ndelement = Nd[k * width + tx];
+ Pvalue += Mdelement * Ndelement;
+ }
+
+ Pd[ty*width+tx] = Pvalue;
+}
+
+void mat_mult(float* M, float* N, float* P, int width) {
+ int size = width * width * sizeof(float);
+ float *Md;
+ float *Nd;
+ float *Pd;
+ //Matrix 1
+ cudaMalloc((void**)&Md, size);
+ cudaMemcpy(Md,M,size,cudaMemcpyHostToDevice);
+ //Matrix 2
+ cudaMalloc((void**)&Nd, size);
+ cudaMemcpy(Nd,N,size,cudaMemcpyHostToDevice);
+
+ cudaMalloc((void**)&Pd, size);
+
+ dim3 dimBlock(width, width);
+ dim3 dimGrid(1, 1);
+
+ mat_mult_kernel<<>>(Md, Nd, Pd, width);
+
+ cudaMemcpy(P, Pd, size, cudaMemcpyDeviceToHost);
+ cudaFree(Md);
+ cudaFree(Nd);
+ cudaFree(Pd);
+}
+
+
+int main () { //You need to fix linker issues so that your methods will be recognized, but in the meantime you can check out individual functions by putting them in main
+ float * M = new float[25];
+ M[0] = 2; M[1] = 1; M[2] = 1; M[3] = 1; M[4] = 1;
+ M[5] = 1; M[6] = 3; M[7] = 1; M[8] = 1; M[9] = 1;
+ M[10] = 1; M[11] = 1; M[12] = 4; M[13] = 1; M[14] = 1;
+ M[15] = 1; M[16] = 1; M[17] = 1; M[18] = 5; M[19] = 1;
+ M[20] = 1; M[21] = 1; M[22] = 1; M[23] = 1; M[24] = 6;
+ float * N = new float[25];
+ N[0] = 2; N[1] = 2; N[2] = 2; N[3] = 2; N[4] = 2;
+ N[5] = 2; N[6] = 2; N[7] = 2; N[8] = 2; N[9] = 2;
+ N[10] = 2; N[11] = 2; N[12] = 2; N[13] = 2; N[14] = 2;
+ N[15] = 2; N[16] = 2; N[17] = 2; N[18] = 2; N[19] = 2;
+ N[20] = 2; N[21] = 2; N[22] = 2; N[23] = 2; N[24] = 2;
+ float * P = new float[25];
+ P[0] = 0; P[1] = 0; P[2] = 0; P[3] = 0; P[4] = 0;
+ P[5] = 0; P[6] = 0; P[7] = 0; P[8] = 0; P[9] = 0;
+ P[10] = 0; P[11] = 0; P[12] = 0; P[13] = 0; P[14] = 0;
+ P[15] = 0; P[16] = 0; P[17] = 0; P[18] = 0; P[19] = 0;
+ P[20] = 0; P[21] = 0; P[22] = 0; P[23] = 0; P[24] = 0;
+
+ printf("Matrix M:\n");
+ printf("%f ",M[0]); printf("%f ",M[1]); printf("%f ",M[2]); printf("%f ",M[3]); printf("%f ",M[4]); printf("\n");
+ printf("%f ",M[5]); printf("%f ",M[6]); printf("%f ",M[7]); printf("%f ",M[8]); printf("%f ",M[9]); printf("\n");
+ printf("%f ",M[10]); printf("%f ",M[11]); printf("%f ",M[12]); printf("%f ",M[13]); printf("%f ",M[14]); printf("\n");
+ printf("%f ",M[15]); printf("%f ",M[16]); printf("%f ",M[17]); printf("%f ",M[18]); printf("%f ",M[19]); printf("\n");
+ printf("%f ",M[20]); printf("%f ",M[21]); printf("%f ",M[22]); printf("%f ",M[23]); printf("%f ",M[24]); printf("\n");
+ printf("\n");
+
+ printf("Matrix N:\n");
+ printf("%f ",N[0]); printf("%f ",N[1]); printf("%f ",N[2]); printf("%f ",N[3]); printf("%f ",N[4]); printf("\n");
+ printf("%f ",N[5]); printf("%f ",N[6]); printf("%f ",N[7]); printf("%f ",N[8]); printf("%f ",N[9]); printf("\n");
+ printf("%f ",N[10]); printf("%f ",N[11]); printf("%f ",N[12]); printf("%f ",N[13]); printf("%f ",N[14]); printf("\n");
+ printf("%f ",N[15]); printf("%f ",N[16]); printf("%f ",N[17]); printf("%f ",N[18]); printf("%f ",N[19]); printf("\n");
+ printf("%f ",N[20]); printf("%f ",N[21]); printf("%f ",N[22]); printf("%f ",N[23]); printf("%f ",N[24]); printf("\n");
+ printf("\n");
+
+ int size = 5*5*sizeof(float);
+ int numBlocks = 1;
+ dim3 threadsPerBlock(5,5);
+
+ mat_add(M,N,P,5);
+
+ printf("GPU Matrix Add:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ CPU_mat_add(M,N,P,5);
+
+ printf("CPU Matrix Add:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ mat_sub(M,N,P,5);
+
+ printf("GPU Matrix Subtract:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ CPU_mat_sub(M,N,P,5);
+
+ printf("CPU Matrix Subtract:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ mat_mult(M,N,P,5);
+
+ printf("GPU Matrix Multiply:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ CPU_mat_mult(M,N,P,5);
+
+ printf("CPU Matrix Multiply:\n");
+ printf("%f ",P[0]); printf("%f ",P[1]); printf("%f ",P[2]); printf("%f ",P[3]); printf("%f ",P[4]); printf("\n");
+ printf("%f ",P[5]); printf("%f ",P[6]); printf("%f ",P[7]); printf("%f ",P[8]); printf("%f ",P[9]); printf("\n");
+ printf("%f ",P[10]); printf("%f ",P[11]); printf("%f ",P[12]); printf("%f ",P[13]); printf("%f ",P[14]); printf("\n");
+ printf("%f ",P[15]); printf("%f ",P[16]); printf("%f ",P[17]); printf("%f ",P[18]); printf("%f ",P[19]); printf("\n");
+ printf("%f ",P[20]); printf("%f ",P[21]); printf("%f ",P[22]); printf("%f ",P[23]); printf("%f ",P[24]); printf("\n");
+ printf("\n");
+
+ getchar();
+
+ return 0;
+}
\ No newline at end of file
diff --git a/Part4 Performance Analysis.txt b/Part4 Performance Analysis.txt
new file mode 100644
index 0000000..792dfbd
--- /dev/null
+++ b/Part4 Performance Analysis.txt
@@ -0,0 +1,12 @@
+Part 4:
+
+NOTE: In Part 1 I decreased the number of nbodies to 700 because the original number given (5000) crashed my graphics card.
+
+1) How does changing the tile and block sizes change performance? Why?
+Increasing the number of tile/block sizes would improve performance/decrease performance time, because the more blocks there are, the more threads there are available to work on planet acceleration, velocity, and position calculations. Since threads can perform calculations concurrently, the more threads there are the more planet calculations we can perform at the same time. Having more planet calculations completed at the same time means that it will take less time to calculate the new planet positions at each time step, making the simulation run faster. Also, in the case where all threads from one block are in use, thereby stalling that block from completing new calculations, another block can continue calculations until it stalls, and this cycle would continue until you run out of blocks. However if you have enough blocks, then when the final block stalls, the first block will have completed its calculations and be able to undertake more calculations, allowing for quicker time steps.
+
+2) How does changing the number of planets change performance? Why?
+Increasing the number of planets decreases performance/increases performance time because the more planets, the more kernels/threads that are necessary to conduct the calculations for each planet. Since we only have so many blocks of so many threads, we can only perform a finite amount of calculations at once. Thus, when we add more planets and have more planets than threads it will take longer to complete all calculations because we need to wait until more threads become available, and therefore each time step will take longer to complete.
+
+3) Without running experiments, how would you expect the serial and GPU versions of matrix_math to compare? Why?
+Without running experiments, I would expect the GPU version of matrix_math to run far faster than the serial version. Matrix math is calculated based upon the rows of one matrix and the columns of another and therefore the calculations of row-column pairs can be conducted independently of one another. The GPU version of matrix math can run all N sets of calculations for the row-column pairs at the same time, since it can have multiple threads running calculations concurrently. Alternately, in the CPU version of matrix math each calculation for each final value in the resulting matrix must be conducted one at a time, since the calculations are being completed on a single thread. Thus, if it takes T time to complete matrix math calculations with the CPU, it will take 1/T time to complete the same calculations with the CPU.
\ No newline at end of file
diff --git a/README.md b/README.md
index 70ae0d3..289874b 100644
--- a/README.md
+++ b/README.md
@@ -1,120 +1,12 @@
-Project 1
-=========
+Part 4:
-# Project 1 : Introduction to CUDA
+NOTE: In Part 1 I decreased the number of nbodies to 700 because the original number given (5000) crashed my graphics card.
-## NOTE :
-This project (and all other projects in this course) requires a NVIDIA graphics
-card with CUDA capabilityi! Any card with compute capability 2.0 and up will
-work. This means any card from the GeForce 400 and 500 series and afterwards
-will work. If you do not have a machine with these specs, feel free to use
-computers in the SIG Lab. All computers in SIG lab and Moore 100 C have CUDA
-capable cards and should already have the CUDA SDK installed.
+1) How does changing the tile and block sizes change performance? Why?
+Increasing the number of tile/block sizes would improve performance/decrease performance time, because the more blocks there are, the more threads there are available to work on planet acceleration, velocity, and position calculations. Since threads can perform calculations concurrently, the more threads there are the more planet calculations we can perform at the same time. Having more planet calculations completed at the same time means that it will take less time to calculate the new planet positions at each time step, making the simulation run faster. Also, in the case where all threads from one block are in use, thereby stalling that block from completing new calculations, another block can continue calculations until it stalls, and this cycle would continue until you run out of blocks. However if you have enough blocks, then when the final block stalls, the first block will have completed its calculations and be able to undertake more calculations, allowing for quicker time steps.
-## PART 1 : INSTALL NSIGHT
-To help with benchmarking and performance analysis, we will be using NVIDIA's
-profiling and debugging tool named NSight. Download and install it from the
-following link for whichever IDE you will be using:
-http://www.nvidia.com/object/nsight.html.
+2) How does changing the number of planets change performance? Why?
+Increasing the number of planets decreases performance/increases performance time because the more planets, the more kernels/threads that are necessary to conduct the calculations for each planet. Since we only have so many blocks of so many threads, we can only perform a finite amount of calculations at once. Thus, when we add more planets and have more planets than threads it will take longer to complete all calculations because we need to wait until more threads become available, and therefore each time step will take longer to complete.
-NOTE : If you are using Linux / Mac, most of the screenshots and class usage of
-NSight will be in Visual Studio. You are free to use to the Eclipse version
-NSight during these in class labs, but we will not be able to help you as much.
-
-## PART 2 : NBODY SIMULATION
-To get you used to using CUDA kernels, we will be writing a simple 2D nbody
-simulator. The following source files are included in the project:
-
-* main.cpp : sets up graphics stuff for visualization
-* kernel.cu : this contains the CUDA kernel calls
-
-All the code that you will need to modify is in kernel.cu and is marked clearly
-by TODOs.
-
-## PART 3 : MATRIX MATH
-In this portion we will walk you through setting up a project that writes some
-simple matrix math functions. Please put this portion in a folder marked Part2
-in your repository.
-
-### Step 1 : Create your project.
-Using the instructions on the Google forum, please set up a new Visual Studio project that
-compiles using CUDA. For uniformity, please write your main function and all
-your code in a file named matrix_math.cu.
-
-### Step 2 : Setting up CUDA memory.
-As we discussed in class, there is host memory and device memory. Host memory
-is the memory that exists on the CPU, whereas device memory is memory on the
-GPU.
-
-In order to create/reserve memory on the GPU, we need to explicitly do so
-using cudaMalloc. By calling cudaMalloc, we are calling malloc on the GPU to
-reserve a portion of its memory. Like malloc, cudaMalloc simply mallocs a
-portion of memory and returns a pointer. This memory is only accessible on the
-device unless we explicitly copy memory from the GPU to the CPU. The reverse is
-also true.
-
-We can copy memory to and from the GPU using the function cudaMemcpy. Like the
-POSIX C memcpy, you will need to specify the size of memory you are copying.
-The last argument is used to specify the direction of the copy (from GPU to CPU
-or the other way around).
-
-Please initialize 2 5 x 5 matrices represented as an array of floats on the CPU
-and the GPU where each of the entry is equal to its position (i.e. A_00 = 0,
-A_01 = 1, A_44 = 24).
-
-### Step 3 : Creating CUDA kernels.
-In the previous part, we explicitly divided the CUDA kernels from the rest of
-the file for stylistic purposes. Since there will be far less code in this
-project, we will write the global and device functions in the same file as the
-main function.
-
-Given a matrix A and matrix B (both represented as arrays of floats), please
-write the following functions :
-* mat_add : A + B
-* mat_sub : A - B
-* mat_mult : A * B
-
-You may assume for all matrices that the dimensions of A and B are the same and
-that they are square.
-
-Use the 2 5 x 5 matrices to test your code either by printing directly to the
-console or writing an assert.
-
-THINGS TO REMEMBER :
-* global and device functions only have access to memory that is explicitly on
- the device, meaning you MUST copy memory from the CPU to the GPU if you would
- like to use it there
-* The triple triangle braces "<<<" begin and end the global function call. This
- provides parameters with which CUDA uses to set up tile size, block size and
- threads for each warp.
-* Do not fret if Intellisense does not understand CUDA keywords (if they have
- red squiggly lines underneath CUDA keywords). There is a way to integrate
- CUDA syntax highlighting into Visual Studio, but it is not the default.
-
-### Step 4 : Write a serial version.
-For comparison, write a single-threaded CPU version of mat_add, mat_sub and
-mat_mult. We will not introduce timing elements in this project, but please
-keep them in mind as the upcoming lab will introduce more on this topic.
-
-## PART 4 : PERFORMANCE ANALYSIS
-Since this is the first project, we will guide you with some example
-questions. In future projects, please answer at least these questions, as
-they go through basic performance analysis. Please go above and beyond the
-questions we suggest and explore how different aspects of your code impact
-performance as a whole.
-
-We have provided a frame counter as a metric, but feel free to add cudaTimers,
-etc. to do more fine-grained benchmarking of various aspects.
-
-NOTE : Performance should be measured in comparison to a baseline. Be sure to
-describe the changes you make between experiments and how you are benchmarking.
-
-* How does changing the tile and block sizes change performance? Why?
-* How does changing the number of planets change performance? Why?
-* Without running experiments, how would you expect the serial and GPU verions
- of matrix_math to compare? Why?
-
-## SUBMISSION
-Please commit your changes to your forked version of the repository and open a
-pull request. Please write your performance analysis in your README.md.
-Remember to email Harmony (harmoli+CIS565@seas.upenn.edu) your grade and why.
+3) Without running experiments, how would you expect the serial and GPU versions of matrix_math to compare? Why?
+Without running experiments, I would expect the GPU version of matrix_math to run far faster than the serial version. Matrix math is calculated based upon the rows of one matrix and the columns of another and therefore the calculations of row-column pairs can be conducted independently of one another. The GPU version of matrix math can run all N sets of calculations for the row-column pairs at the same time, since it can have multiple threads running calculations concurrently. Alternately, in the CPU version of matrix math each calculation for each final value in the resulting matrix must be conducted one at a time, since the calculations are being completed on a single thread. Thus, if it takes T time to complete matrix math calculations with the CPU, it will take 1/T time to complete the same calculations with the CPU.