| 22 | /////////////////////////////////////////////////////////////////////////////// |
| 23 | |
| 24 | int |
| 25 | main(int argc, char *argv[]) |
| 26 | { |
| 27 | int ret; |
| 28 | if ((argc > 1) && (!strcmp(argv[1], "--test-help") || !strcmp(argv[1], "-h") || !strcmp(argv[1], "--help"))) { |
| 29 | printUsage("test-functional"); |
| 30 | ::testing::InitGoogleTest(&argc, argv); |
| 31 | return 0; |
| 32 | } |
| 33 | |
| 34 | TestParams params; |
| 35 | params.optFlags = NO_FLAGS; |
| 36 | params.devType = CL_DEVICE_TYPE_ALL; |
| 37 | params.devName = NULL; |
| 38 | params.devOrd = 0; |
| 39 | params.platOrd = 0; |
| 40 | |
| 41 | if (argc != 1) { |
| 42 | if (parseBlasCmdLineArgs(argc, argv, ¶ms) != 0) { |
| 43 | printUsage(argv[0]); |
| 44 | return 1; |
| 45 | } |
| 46 | } |
| 47 | |
| 48 | ::testing::InitGoogleTest(&argc, argv); |
| 49 | ::std::cout << "Initialize default OpenCL and clblas..." << ::std::endl; |
| 50 | ::clMath::BlasBase *base = ::clMath::BlasBase::getInstance(); |
| 51 | if (base == NULL) { |
| 52 | ::std::cerr << "Fatal error, OpenCL or clblas initialization failed! " |
| 53 | "Leaving the test." << ::std::endl; |
| 54 | return -1; |
| 55 | } |
| 56 | |
| 57 | if (params.optFlags & SET_SEED) { |
| 58 | base->setSeed(params.seed); |
| 59 | } |
| 60 | if (params.optFlags & SET_ALPHA) { |
| 61 | base->setAlpha(params.alpha); |
| 62 | } |
| 63 | if (params.optFlags & SET_BETA) { |
| 64 | base->setBeta(params.beta); |
| 65 | } |
| 66 | if (params.optFlags & SET_M) { |
| 67 | base->setM(params.M); |
| 68 | } |
| 69 | if (params.optFlags & SET_N) { |
| 70 | base->setN(params.N); |
| 71 | } |
| 72 | if (params.optFlags & SET_K) { |
| 73 | base->setK(params.K); |
| 74 | } |
| 75 | if (params.optFlags & SET_INCX) { |
| 76 | base->setIncX(params.incx); |
| 77 | } |
| 78 | if (params.optFlags & SET_INCY) { |
| 79 | base->setIncY(params.incy); |
| 80 | } |
| 81 | if (params.optFlags & SET_NUM_COMMAND_QUEUES) { |
nothing calls this directly
no test coverage detected