gaussianElim.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #ifndef _GAUSSIANELIM
  2. #define _GAUSSIANELIM
  3. #include <iostream>
  4. #include <vector>
  5. #include <float.h>
  6. #include <string.h>
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #include <algorithm>
  10. #include "clutils.h"
  11. // All OpenCL headers
  12. #if defined (__APPLE__) || defined(MACOSX)
  13. #include <OpenCL/opencl.h>
  14. #else
  15. #include <CL/opencl.h>
  16. #endif
  17. float *OpenClGaussianElimination(
  18. cl_context context,
  19. int timing);
  20. void printUsage();
  21. int parseCommandline(int argc, char *argv[], char* filename,
  22. int *q, int *t, int *p, int *d, int *size, int *use_gpu);
  23. void InitPerRun(int size,float *m);
  24. void ForwardSub(cl_context context, float *a, float *b, float *m, int size,int timing);
  25. void BackSub(float *a, float *b, float *finalVec, int size);
  26. void Fan1(float *m, float *a, int Size, int t);
  27. void Fan2(float *m, float *a, float *b,int Size, int j1, int t);
  28. //void Fan3(float *m, float *b, int Size, int t);
  29. void InitMat(FILE *fp, int size, float *ary, int nrow, int ncol);
  30. void InitAry(FILE *fp, float *ary, int ary_size);
  31. void PrintMat(float *ary, int size, int nrow, int ncolumn);
  32. void PrintAry(float *ary, int ary_size);
  33. float eventTime(cl_event event,cl_command_queue command_queue);
  34. #endif