#12832: Bug in scipy on power7
----------------------------+-----------------------------------------------
Reporter: fbissey | Owner: tbd
Type: defect | Status: new
Priority: major | Milestone: sage-5.1
Component: packages | Resolution:
Keywords: | Work issues:
Report Upstream: N/A | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
----------------------------+-----------------------------------------------
Comment (by fbissey):
I am not completely sure of what is happening there. I need to have a
control build locally to be sure. The evaluation eventually goes to
sp_dgemm in C/sparse.c, more specifically this section
{{{
else if (sp_a && !sp_b && !sp_c) {
ccs *A = (tA == 'N' ? a : transpose(a, 0));
double *B = b, *C = c;
int j, l, mn_ = m*n, ib = (tB == 'N' ? k : 1);
scal[DOUBLE](&mn_, &beta, C, (int *)&One[INT]);
for (j=0; j<A->ncols; j++) {
for (l=A->colptr[j]; l<A->colptr[j+1]; l++) {
double a_ = alpha.d*((double *)A->values)[l];
axpy[DOUBLE](&n, &a_, B + (tB == 'N' ? j : j*n), &ib,
C + A->rowind[l], &m);
}
}
if (A != a) free_ccs(A);
}
else if (!sp_a && sp_b && sp_c && partial){
}}}
Notice that in this particular case "partial" is ignored. The issue here
is that we don't seem to go through scal[DOUBLE] (part of C/blas.c) at
all. That particular call should replace our F input by beta.d*F where
beta.d is 0 by default. The fact that this call seem completely bypassed
explains why it is useless to give a value for beta.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12832#comment:7>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.