|
|
@ -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); |
|
|
|