|
|
@@ -33,7 +33,7 @@
|
|
|
#include "findnonce.h"
|
|
|
#include "ocl.h"
|
|
|
|
|
|
-int opt_platform_id;
|
|
|
+int opt_platform_id = -1;
|
|
|
|
|
|
char *file_contents(const char *filename, int *length)
|
|
|
{
|
|
|
@@ -80,7 +80,7 @@ int clDevicesNum(void) {
|
|
|
cl_uint numPlatforms;
|
|
|
cl_platform_id *platforms;
|
|
|
cl_platform_id platform = NULL;
|
|
|
- unsigned int most_devices = 0, i;
|
|
|
+ unsigned int most_devices = 0, i, mdplatform;
|
|
|
|
|
|
status = clGetPlatformIDs(0, NULL, &numPlatforms);
|
|
|
/* If this fails, assume no GPUs. */
|
|
|
@@ -123,8 +123,10 @@ int clDevicesNum(void) {
|
|
|
return -1;
|
|
|
}
|
|
|
applog(LOG_INFO, "Platform %d devices: %d", i, numDevices);
|
|
|
- if (numDevices > most_devices)
|
|
|
+ if (numDevices > most_devices) {
|
|
|
most_devices = numDevices;
|
|
|
+ mdplatform = i;
|
|
|
+ }
|
|
|
if (numDevices) {
|
|
|
unsigned int j;
|
|
|
char pbuff[256];
|
|
|
@@ -139,6 +141,9 @@ int clDevicesNum(void) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if (opt_platform_id < 0)
|
|
|
+ opt_platform_id = mdplatform;;
|
|
|
+
|
|
|
return most_devices;
|
|
|
}
|
|
|
|