Browse Source

Calculation of chunk range limits was ignoring num_cpu

bug introduced by me in #1262
pull/1389/head
Martin Kroeker GitHub 8 years ago
parent
commit
7b4ede14f3
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 2 deletions
  1. +2
    -2
      driver/level2/spmv_thread.c

+ 2
- 2
driver/level2/spmv_thread.c View File

@@ -246,7 +246,7 @@ int CNAME(BLASLONG m, FLOAT *alpha, FLOAT *a, FLOAT *x, BLASLONG incx, FLOAT *y,

range_m[MAX_CPU_NUMBER - num_cpu - 1] = range_m[MAX_CPU_NUMBER - num_cpu] - width;
range_n[num_cpu] = num_cpu * (((m + 15) & ~15) + 16);
if (range_n[num_cpu] > m) range_n[num_cpu] = m;
if (range_n[num_cpu] > m * num_cpu) range_n[num_cpu] = m * num_cpu;

queue[num_cpu].mode = mode;
queue[num_cpu].routine = spmv_kernel;
@@ -286,7 +286,7 @@ int CNAME(BLASLONG m, FLOAT *alpha, FLOAT *a, FLOAT *x, BLASLONG incx, FLOAT *y,

range_m[num_cpu + 1] = range_m[num_cpu] + width;
range_n[num_cpu] = num_cpu * (((m + 15) & ~15) + 16);
if (range_n[num_cpu] > m) range_n[num_cpu] = m;
if (range_n[num_cpu] > m * num_cpu) range_n[num_cpu] = m * num_cpu;

queue[num_cpu].mode = mode;
queue[num_cpu].routine = spmv_kernel;


Loading…
Cancel
Save