blas 开发包收集器 blas

xuanbao2016-09-18 16:00:07 • 4219 次点击    
这是一个分享于 2016-09-18 16:00:07 的项目,其中的信息可能已经有所发展或是发生改变。

blas 是一款开发包收集器,为 Go 语言提供

BLAS 功能

安装:

go get github.com/gonum/blas

BLAS C-绑定:

如果你想使用 OpenBLAS,可在任何目录安装(更多信息,可在

cgo command documentation中查看):

git clone https://github.com/xianyi/OpenBLAS  cd OpenBLAS
  make

然后安装BLAS/ CGO包:

  CGO_LDFLAGS="-L/path/to/OpenBLAS -lopenblas" go install github.com/gonum/blas/cgo

如果要使用不同的BLAS包如Intel MKL可以调整CGO LDFLAGS变量:

  CGO_LDFLAGS="-lmkl_rt" go install github.com/gonum/blas/cgo

在OS X上最简单的解决方案是使用系统提供的文库:

CGO_LDFLAGS="-framework Accelerate" go install github.com/gonum/blas/cgo

开发包:

blas:定义了多个接口BLAS API接口。

blas/native:Go 实施BLAS API的(不完全实现了FLOAT32和float64 API)。

blas/cgo:

绑定到

C实现 cblas接口(如ATLAS,OpenBLAS,英特尔 MKL),OpenBLAS是为Linux和Darwin良好性能的最佳推荐。

blas/blas64 and blas/blas32:该BLAS API为双(i.e., float64) 和单 (float32)精准的实施提供打包:

package mainimport (    "fmt"

    "github.com/gonum/blas/blas64")func main() {    v := blas64.Vector{Inc: 1, Data: []float64{1, 1, 1}}
    fmt.Println("v has length:", blas64.Nrm2(len(v.Data), v))
}

blas/cblas128 and blas/cblas64:该BLAS API为双(即complex128)和单的实现封装(complex64)精密复杂零件。

###

A BLAS implementation for Go [DEPRECATED]Read More

Latest commit to the master branch on 12-8-2018
Download as zip
授权协议:
开发语言:
Google Go 查看源码»
操作系统:
跨平台
4219 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传