[clblas] 71/125: bug fix of hemm and symm hanging with tuning KDB file and ssyr2k crashes on Kaveri with tuning KDB file
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Fri May 29 06:57:23 UTC 2015
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch master
in repository clblas.
commit d8ca5878b5971e608fa8ef63bbee8fcf9684425c
Author: Timmy <timmy.liu at amd.com>
Date: Thu Jun 5 15:26:46 2014 -0500
bug fix of hemm and symm hanging with tuning KDB file and ssyr2k crashes on Kaveri with tuning KDB file
---
src/library/blas/generic/solution_seq_make.c | 9 ++++++---
src/library/blas/gens/syrxk.c | 21 ++++++++++++++++-----
2 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/src/library/blas/generic/solution_seq_make.c b/src/library/blas/generic/solution_seq_make.c
index 0eee1fd..8a5e402 100644
--- a/src/library/blas/generic/solution_seq_make.c
+++ b/src/library/blas/generic/solution_seq_make.c
@@ -1435,9 +1435,12 @@ getStepGranulation(SolutionStep *step)
}
}
- status = getGranularityInfo(&step->device, mempat->name,
- step->args.dtype, step->extraFlags,
- (int)MNK, dims, &step->pgran, &time);
+ if( step->funcID != CLBLAS_GEMM2 )
+ {
+ status = getGranularityInfo(&step->device, mempat->name,
+ step->args.dtype, step->extraFlags,
+ (int)MNK, dims, &step->pgran, &time);
+ }
/*
* Disable blocking for implementations dealing with cache reads
* from the global memory
diff --git a/src/library/blas/gens/syrxk.c b/src/library/blas/gens/syrxk.c
index e4a00ee..cf47ba9 100644
--- a/src/library/blas/gens/syrxk.c
+++ b/src/library/blas/gens/syrxk.c
@@ -21,6 +21,7 @@
#include <string.h>
#include <stdio.h>
+#include <stdlib.h>
#include <assert.h>
#include <clBLAS.h>
@@ -1219,10 +1220,11 @@ genUpdateGenericDiagTile(
// type of the vectorized coordinates
Kstring vctype;
Kstring constOffs, constShifts, constMasks;
- unsigned int i, j, nops;
+ unsigned int i, j, nops,size;
unsigned int maxFetches = 0;
const char *yname, *xname;
const char *ldcName;
+ char hexadec[1];
batch = createStmtBatch();
if (batch == NULL) {
@@ -1253,6 +1255,14 @@ genUpdateGenericDiagTile(
tifl = (isUpper) ? TILE_ITER_BACKWARD_ROWS :
TILE_ITER_BACKWARD_COLS;
iterInit(&iter, &tileTempC, 1, tifl);
+ nops = 0;
+ while (!iterIsEnd(&iter)) {
+ nops++;
+ size = nops / nrCols;
+ iterIterate(&iter);
+ }
+
+ iterInit(&iter, &tileTempC, 1, tifl);
initTmpResTile(&tileTempC, gset, true);
@@ -1316,7 +1326,7 @@ genUpdateGenericDiagTile(
maxFetches = umin(maxFetches, i);
// declare vectorized coordinates
- declareDiagUpresIndexedVars(ctx, vctype.buf, "cc", tempRows);
+ declareDiagUpresIndexedVars(ctx, vctype.buf, "cc", size);
/*
* real y coordinate, offset mask and
@@ -1326,8 +1336,8 @@ genUpdateGenericDiagTile(
"unsigned int mask;\n"
"int hit;\n");
if (withBeta) {
- declareDiagUpresIndexedVars(ctx, typeName, "alphaNew", tempRows);
- declareDiagUpresIndexedVars(ctx, typeName, "betaNew", tempRows);
+ declareDiagUpresIndexedVars(ctx, typeName, "alphaNew", size);
+ declareDiagUpresIndexedVars(ctx, typeName, "betaNew", size);
}
// declare tile
@@ -1443,7 +1453,8 @@ genUpdateGenericDiagTile(
ksprintf(&kstr, "cc%u", i);
}
else {
- ksprintf(&kstr, "cc%u.s%u", i, iter.col);
+ itoa(iter.col, hexadec, 16);
+ ksprintf(&kstr, "cc%u.s%s", i, hexadec);
}
// prepare multipliers and fetch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/clblas.git
More information about the debian-science-commits
mailing list