MCPcopy Create free account
hub / github.com/clMathLibraries/clBLAS / printBuildError

Function printBuildError

src/library/blas/generic/common.c:74–142  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

72}
73
74static void
75printBuildError(
76 cl_int error,
77 cl_device_id device,
78 SolverKgen kgen,
79 const SubproblemDim *dims,
80 const PGranularity *pgran,
81 const CLBLASKernExtra *kextra,
82 const char *source,
83 const char *buildLog)
84{
85 char name[128];
86 char dimStr[1024];
87 char pgranStr[1024];
88 char *p;
89 MemoryPattern *mempat = NULL;
90 unsigned int i, j;
91 const char *s;
92
93 name[0] = '\0';
94 clGetDeviceInfo(device, CL_DEVICE_NAME, sizeof(name), name, NULL);
95
96 // lookup memory pattern
97 s = NULL;
98 for (i = 0; i < BLAS_FUNCTIONS_NUMBER; i++) {
99 for (j = 0; j < clblasSolvers[i].nrPatterns; j++) {
100 mempat = &clblasSolvers[i].memPatterns[j];
101 if (kgen == mempat->sops->genKernel) {
102 s = kernelTypeString(kextra->kernType);
103 break;
104 }
105 }
106 if (s != NULL) {
107 break;
108 }
109 }
110
111 // sprintf Subproblem dimensions
112 p = dimStr;
113 for (i = 0; i < mempat->nrLevels; i++) {
114 p = sprintfGranulation(p, dims, i);
115 strcat(p, "; ");
116 p += strlen(p);
117 }
118
119 // sprintf data parallelism granularity
120 sprintf(pgranStr, "pgran->wgDim = %d, pgran->wgSize[0] = %u, "
121 "pgran->wgSize[1] = %u, pgran->wfSize = %u",
122 pgran->wgDim, pgran->wgSize[0], pgran->wgSize[1],
123 pgran->wfSize);
124
125 fprintf(stderr, "\n========================================================\n\n");
126 fprintf(stderr, "AN INTERNAL KERNEL BUILD ERROR OCCURRED!\n");
127 fprintf(stderr, "device name = %s\n", name);
128 fprintf(stderr, "error = %d\n", error);
129 fprintf(stderr, "memory pattern = %s, %s kernel generator\n", mempat->name, s);
130 fprintf(stderr, "Subproblem dimensions: %s\n", dimStr);
131 fprintf(stderr, "Parallelism granularity: %s\n", pgranStr);

Callers 1

makeKernelFunction · 0.85

Calls 2

kernelTypeStringFunction · 0.85
sprintfGranulationFunction · 0.85

Tested by

no test coverage detected