Commit Graph

40 Commits

Author SHA1 Message Date
Vladimir Chalupecky
c5e541ba54 Add noasm tag to coverage tests 2015-12-18 10:45:40 +09:00
Vladimir Chalupecky
ffdeed5a24 Update travis to check that 'go generate' has been run 2015-12-18 10:41:50 +09:00
Vladimir Chalupecky
b7073d205a asm: add implementation comment to DaxpyIncTo 2015-12-18 10:31:04 +09:00
Vladimir Chalupecky
e8f57eb135 asm: assign to global variable only once in benchmarks 2015-12-18 09:57:41 +09:00
Vladimir Chalupecky
152ce54c9d asm: run 'go generate' 2015-12-17 14:24:46 +09:00
Vladimir Chalupecky
00f8916b29 asm: move Daxpy test data to global slice 2015-12-16 22:31:05 +09:00
Vladimir Chalupecky
e816fb011f asm: add benchmarks for DaxpyIncTo 2015-12-16 21:37:36 +09:00
Vladimir Chalupecky
ea8555afe2 asm: add tests for DaxpyIncTo 2015-12-16 21:35:55 +09:00
Vladimir Chalupecky
a8311f7c96 asm: add DaxpyIncTo 2015-12-15 11:24:33 +09:00
Vladimir Chalupecky
eb82b49185 asm: rename DaxpyUnitary to DaxpyUnitaryTo 2015-12-15 10:49:16 +09:00
Vladimir Chalupecky
f0fb6e0db7 asm: add randomSlice() helper 2015-12-15 10:36:51 +09:00
Vladimir Chalupecky
124540dca2 Merge branch 'daxpy-test-bench' 2015-12-14 14:20:14 +09:00
Vladimir Chalupecky
e9b5679bf5 Add benchmarks for DaxpyUnitary and DaxpyInc 2015-12-11 18:44:45 +09:00
Vladimir Chalupecky
cd61fa6e57 Add test for DaxpyInc 2015-12-11 18:44:45 +09:00
Vladimir Chalupecky
cfd51ef079 Extend test for DaxpyUnitary 2015-12-11 18:44:45 +09:00
Vladimir Chalupecky
0fd308cc3d Simplify equalStrided() 2015-12-11 18:44:41 +09:00
Vladimir Chalupecky
708b5bba79 Merge branch 'ddot-test-bench' 2015-12-11 17:53:53 +09:00
Vladimir Chalupecky
07bda0c217 Make error message a const string 2015-12-11 17:53:05 +09:00
Vladimir Chalupecky
71fdeba8b7 Add benchmarks for DdotUnitary and DdotInc 2015-12-11 12:37:46 +09:00
Vladimir Chalupecky
7f6fef0224 Move helper functions to standalone file 2015-12-11 10:47:42 +09:00
Vladimir Chalupecky
4a8e055096 Run asmfmt on daxpy_amd64.s 2015-12-11 10:45:29 +09:00
Vladimir Chalupecky
36acf4acec Run asmfmt on ddot_amd64.s 2015-12-11 10:44:08 +09:00
Vladimir Chalupecky
6575685987 Update tests for Ddot
The loops in Ddot are unrolled 2x now but might be changed to 4x in the
future so include more vector sizes to cover more possible states.
2015-12-11 10:41:45 +09:00
Jonathan J Lawlor
842524b2a0 Merge pull request #11 from gonum/run-tests
LGTM & I've enabled the travis and coveralls hooks.  Merging will trigger the first tests.
2015-12-10 08:13:36 -05:00
kortschak
91b3dba179 internal: add .travis.yml 2015-12-09 19:18:45 +10:30
Vladimir Chalupecky
6a2b8d84cd Add test for DaxpyUnitary 2015-12-09 17:03:14 +09:00
Vladimir Chalupecky
b87e983759 Add tests for DdotUnitary and DdotInc 2015-12-09 10:53:30 +09:00
kortschak
266f56a1bd asm: add appengine build tags
Fixes github.com/gonum/matrix#202.
2015-08-31 15:28:52 +09:30
kortschak
5b84ddfb9d Make generated complex drop-ins
Again this is to allow simpler code generation of other BLAS routines.
2015-02-10 06:53:04 +10:30
kortschak
b5fa43ce0f Make generated single precision drop-ins
If single precision asm versions are needed the generate script will
need to be modified. This change allows code generated single precision
BLAS routines to be easier to make.
2015-02-08 12:01:14 +10:30
Fazlul Shahriar
9988c755e4 Merge pull request #3 from fhs/daxpy-dst
change DaxpyUnitary to take a destination parameter
2015-01-11 18:25:02 -05:00
Fazlul Shahriar
aef7b8ecab change DaxpyUnitary to take a destination parameter
No significant difference in the benchmark.

Benchmark using noasm tag:

benchmark                           old ns/op     new ns/op     delta
BenchmarkDaxpySmallBothUnitary      28.6          25.0          -12.59%
BenchmarkDaxpyMediumBothUnitary     1367          1360          -0.51%
BenchmarkDaxpyLargeBothUnitary      139217        138521        -0.50%
BenchmarkDaxpyHugeBothUnitary       16451616      16243873      -1.26%

Benchmask using amd64 assembly:

benchmark                           old ns/op     new ns/op     delta
BenchmarkDaxpySmallBothUnitary      17.7          17.4          -1.69%
BenchmarkDaxpyMediumBothUnitary     363           363           +0.00%
BenchmarkDaxpyLargeBothUnitary      72119         72107         -0.02%
BenchmarkDaxpyHugeBothUnitary       12826300      12817173      -0.07%

All benchmark done using Go 1.4 on Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz.
Best of 3 runs.
2015-01-11 18:15:30 -05:00
Dan Kortschak
87942ce937 Merge pull request #4 from gonum/noasm
Add noasm build tag
2015-01-12 09:09:38 +10:30
kortschak
5d1c97461a Add noasm build tag
This allows easy benchmarking against the pure pure Go implementation
and also provides a way to easily assess compiler improvements.

e.g.

	$ cd $GOPATH/src/github.com/gonum/blas/native
	$ go test -bench . > asm.txt
	$ go test -tags noasm -bench . > noasm.txt
	$ benchcmp noasm.txt asm.txt
2015-01-12 08:43:07 +10:30
Brendan Tracey
31da0eb008 Merge pull request #2 from gonum/addaxpy
Add daxpy routines
2015-01-10 22:34:11 -08:00
btracey
88239e7ca5 Add daxpy routines 2015-01-10 22:27:44 -08:00
Brendan Tracey
c583e53775 Merge pull request #1 from gonum/addddot
Added assembly routine and stub for ddot
2015-01-10 20:54:19 -08:00
btracey
f11f81cefe Added Ddot unitary functions 2015-01-10 20:07:44 -08:00
btracey
9e805bde24 Added assembly routine and stub for ddot 2015-01-10 19:14:06 -08:00
btracey
419a7b2b22 Added README 2015-01-10 19:12:40 -08:00