This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "matlisp".
The branch, tensor has been updated
via b0e4abdd67877cc2e4a2880542028d0d15c8b3eb (commit)
from bee3634bf96916ccb63248bd8fa61c16d7c25da3 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit b0e4abdd67877cc2e4a2880542028d0d15c8b3eb
Author: Akshay Srinivasan <aks...@gm...>
Date: Sun Jan 27 18:10:23 2013 -0800
Made gemm use the <type>-zeros function instead of make-<type>-tensor method.
diff --git a/src/level-3/gemm.lisp b/src/level-3/gemm.lisp
index d6597e0..bd59f29 100644
--- a/src/level-3/gemm.lisp
+++ b/src/level-3/gemm.lisp
@@ -448,10 +448,11 @@
(defmethod gemm ((alpha number) (a standard-matrix) (b standard-matrix)
(beta number) (c real-matrix)
&optional (job :nn))
- (let ((result (if (or (complexp alpha) (complexp beta)
- (typep a 'complex-matrix) (typep b 'complex-matrix))
- (make-complex-tensor (nrows C) (ncols C))
- (make-real-tensor (nrows C) (ncols C)))))
+ (let ((result (funcall (if (or (complexp alpha) (complexp beta)
+ (typep a 'complex-matrix) (typep b 'complex-matrix))
+ #'complex-typed-zeros
+ #'real-typed-zeros)
+ (dimensions C))))
(copy! C result)
(gemm! alpha A B beta result job)))
@@ -459,11 +460,10 @@
(beta (eql nil)) (c (eql nil))
&optional (job :nn))
(multiple-value-bind (job-A job-B) (split-job job)
- (let ((result (apply
- (if (or (complexp alpha) (complexp beta)
- (typep a 'complex-matrix) (typep b 'complex-matrix))
- #'make-complex-tensor
- #'make-real-tensor)
- (list (if (member job-A '(:n :c)) (nrows A) (ncols A))
- (if (member job-B '(:n :c)) (ncols B) (nrows B))))))
+ (let ((result (funcall (if (or (complexp alpha) (complexp beta)
+ (typep a 'complex-matrix) (typep b 'complex-matrix))
+ #'complex-typed-zeros
+ #'real-typed-zeros)
+ (make-index-store (list (if (member job-A '(:n :c)) (nrows A) (ncols A))
+ (if (member job-B '(:n :c)) (ncols B) (nrows B)))))))
(gemm! alpha A B 0 result job))))
-----------------------------------------------------------------------
Summary of changes:
src/level-3/gemm.lisp | 22 +++++++++++-----------
1 files changed, 11 insertions(+), 11 deletions(-)
hooks/post-receive
--
matlisp
|