Browse Source

Give SDK 2.6 warning only on building a kernel for !GCN bitalign devices.

nfactor-troky
Con Kolivas 13 years ago
parent
commit
b4c86ba615
  1. 20
      ocl.c

20
ocl.c

@ -427,7 +427,6 @@ _clState *initCl(unsigned int gpu, char *name, size_t nameSize)
strcat(binaryfilename, numbuf); strcat(binaryfilename, numbuf);
strcat(binaryfilename, ".bin"); strcat(binaryfilename, ".bin");
loadbin:
binaryfile = fopen(binaryfilename, "rb"); binaryfile = fopen(binaryfilename, "rb");
if (!binaryfile) { if (!binaryfile) {
applog(LOG_DEBUG, "No binary found, generating from source"); applog(LOG_DEBUG, "No binary found, generating from source");
@ -485,7 +484,7 @@ build:
/* If no binary is available, and we have a card that suffers with phatk /* If no binary is available, and we have a card that suffers with phatk
* on SDK2.6, use the poclbm kernel instead if one has not been * on SDK2.6, use the poclbm kernel instead if one has not been
* selected. */ * selected. */
if (clState->chosen_kernel != KL_POCLBM && chosen_kernel == KL_NONE && if (clState->chosen_kernel == KL_POCLBM && chosen_kernel == KL_NONE &&
!strstr(name, "Tahiti") && clState->hasBitAlign && !strstr(name, "Tahiti") && clState->hasBitAlign &&
(strstr(vbuff, "844.4") /* Linux 64 bit ATI 2.6 SDK */ || (strstr(vbuff, "844.4") /* Linux 64 bit ATI 2.6 SDK */ ||
strstr(vbuff, "851.4") /* Windows 64 bit "" */ || strstr(vbuff, "851.4") /* Windows 64 bit "" */ ||
@ -494,23 +493,6 @@ build:
applog(LOG_WARNING, "This SDK will give POOR PERFORMANCE on this device"); applog(LOG_WARNING, "This SDK will give POOR PERFORMANCE on this device");
applog(LOG_WARNING, "To get best performance, remove any .bin files generated by cgminer,"); applog(LOG_WARNING, "To get best performance, remove any .bin files generated by cgminer,");
applog(LOG_WARNING, "downgrade your SDK to 2.1-2.5 and restart cgminer."); applog(LOG_WARNING, "downgrade your SDK to 2.1-2.5 and restart cgminer.");
clState->chosen_kernel = KL_POCLBM;
strcpy(filename, POCLBM_KERNNAME".cl");
strcpy(binaryfilename, POCLBM_KERNNAME);
strcat(binaryfilename, name);
strcat(binaryfilename, "bitalign");
strcat(binaryfilename, "v");
sprintf(numbuf, "%d", clState->preferred_vwidth);
strcat(binaryfilename, numbuf);
strcat(binaryfilename, "w");
sprintf(numbuf, "%d", (int)clState->work_size);
strcat(binaryfilename, numbuf);
strcat(binaryfilename, "long");
sprintf(numbuf, "%d", (int)sizeof(long));
strcat(binaryfilename, numbuf);
strcat(binaryfilename, ".bin");
goto loadbin;
} }
clState->program = clCreateProgramWithSource(clState->context, 1, (const char **)&source, sourceSize, &status); clState->program = clCreateProgramWithSource(clState->context, 1, (const char **)&source, sourceSize, &status);

Loading…
Cancel
Save