当前位置: 首页 > wzjs >正文

网站开发小作业谷歌关键词优化怎么做

网站开发小作业,谷歌关键词优化怎么做,广州做网站系统,做b2b2c商城网站OpenHarmony-Risc-V上运行openBLAS中的benchmark 文章目录 OpenHarmony-Risc-V上运行openBLAS中的benchmark前言一、编译openBLAS1.源码下载2.工具链下载3.编译并安装openBLAS 二、编译open BLAS中的benchmark三、上设备运行总结 前言 参考https://zhuanlan.zhihu.com/p/18825…

OpenHarmony-Risc-V上运行openBLAS中的benchmark


文章目录

  • OpenHarmony-Risc-V上运行openBLAS中的benchmark
  • 前言
  • 一、编译openBLAS
    • 1.源码下载
    • 2.工具链下载
    • 3.编译并安装openBLAS
  • 二、编译open BLAS中的benchmark
  • 三、上设备运行
  • 总结


前言

参考https://zhuanlan.zhihu.com/p/18825495043实现了在Risc-V架构设备上的OpenHarmony-5.0.0环境中运行openBlas的benchmark。


一、编译openBLAS

1.源码下载

自行扶墙或者使用github下载站。使用默认的develop分支。

git clone https://github.com/OpenMathLib/OpenBLAS.git

2.工具链下载

Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1

  • 获取玄铁支持rvv1.0的gcc工具链。
    参考原文中有一处描述错误,由于当时没仔细看,下载的是V2.10.2版本,该版本仅支持RISC-V Vector extension 0.7.1,导致编译OpenBLAS的x280时会有以下报错:
    在这里插入图片描述
    使用2.10.2版本编译open BLAS的C910V正常。
  • 解压后配置环境变量(以下命令根据自己环境对应的目录进行修改)

export PATH=/opt/liusai/github/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1/bin:$PATH

3.编译并安装openBLAS

  • 编译

cd OpenBLAS
make HOSTCC=gcc TARGET=x280 CC=riscv64-unknown-linux-gnu-gcc FC=riscv64-unknown-linux-gnu-gfortran

正常编译成功结算画面如下:
在这里插入图片描述
如产生编译错误,纠正后重新编译请使用“make clean”。

  • 安装

mkdir build
make PREFIX=./build install

产物如下:
在这里插入图片描述

二、编译open BLAS中的benchmark

以benchmark中的gemm.c为例

cd benchmark
…/…/…/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1/bin/riscv64-unknown-linux-gnu-gcc gemm.c -o gemm_test_3.0.1 -I …/ -L …/build/lib -lopenblas -lpthread -lgfortran -O2 -Wall
…/…/…/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V2.10.2/bin/riscv64-unknown-linux-gnu-gcc -o gemm_test_2.10.2 -I …/build/include -L …/build/lib -lopenblas -lpthread -lgfortran -O2 -Wall
/opt/liusai/musepaper-5.0.0/prebuilts/gcc/linux-x86/riscv64/spacemit-riscv-gcc/bin/riscv64-unknown-linux-gnu-gcc gemm.c -o gemm_test_spacemit -I …/ -L …/build/lib -lopenblas -lpthread -lgfortran -O2 -Wall

使用了三种工具链,编译出不同的gemm_test,可以在运行过程中进行比较。

三、上设备运行

使用的是进迭时空的musepaper,提前烧录OH-5.0.0版本。

  • 通过HDC将需要的文件拷至设备的/lib目录

hdc target mount
hdc file send .\openblas\spacemit\libpthread.so.0 /lib/
hdc file send .\openblas\ld-linux-riscv64-lp64d.so.1 /lib/
hdc file send .\openblas\gemm_test_3.0.1 /lib/
hdc file send .\openblas\libopenblas.so.0 /lib/
hdc file send .\openblas\libc.so.6 /lib/

注意:运行不同工具链编译的产物时,链接器ld-linux-riscv64-lp64d.so.1、libpthread.so.0、libc.so.6不可混用,否则会报错不可运行。这些均可以在工具链的安装目录中找到。

  • 配置环境变量

export LD_LIBRARY_PATH=/lib:$LD_LIBRARY_PATH

  • 运行

直接./gemm_test_3.0.1即可。

运行gemm_test_spacemit时有“./gemm_test_spacemit: /lib/libc.so.6: version ‘GLIBC_2.34’ not found (required by ./gemm_test_spacemit)”报错,请将对应工具链的libc.so.6拷贝至/lib下。
运行效果如下:
在这里插入图片描述


总结

  • 后续就是llama.cpp通过openBLAS提升运行效率。
  • ldd命令仅支持查看相同架构的可执行程序或者库文件,比如在X86_84的ubuntu环境中使用ldd查看risc-v架构的gemm_test会产生“not a dynamic executable”。
  • 使用patchelf命令也可以查看依赖。

patchelf gemm_test_spacemit --print-needed

在这里插入图片描述

http://www.dtcms.com/wzjs/274114.html

相关文章:

  • 深圳网站建设企业名录今日热点事件
  • 企业所得税怎么合理节税seo视频教程
  • 深圳网站开发企业win7系统优化大师
  • 网站后台如何更换在线qq咨询代码seo宣传
  • 做商城网站一般用什么营销型网站优化
  • 江苏 做网站seo的优化方向
  • 茂名网站建设方案推广青岛网络工程优化
  • 手机网站有哪些类型网站如何优化流程
  • 创意设计公司名字大全长沙seo外包服务
  • 上海市城市建设工程学校网站百度服务中心官网
  • 重庆做网站及优化报价普通话手抄报简单又漂亮
  • app下载做任务赚钱网站百度seo关键词排名查询工具
  • 乐清做网站培训自己的品牌怎么做加盟推广
  • 网站开发 国际网站网络优化排名培训
  • 贵州建设厅网站八大员报名入口网站设计公司排行
  • 望野小说网络推广和信息流优化一样么
  • 虎门外贸网站建设百度平台客服联系方式
  • 网站开发公司的销售方式英文seo外链
  • 手机免费网站制作百度seo排名优化公司哪家强
  • 网站备案信息怎么做如何快速推广自己的网站
  • 科技服务网站建设内容网站怎么推广出去
  • 如何做简单的网站市场调研的内容
  • 云南网站制作seo外链专员工作要求
  • 网站开发环境windows7的优点长沙新媒体营销
  • 无锡做公司网站厦门百度代理公司
  • 企业建设门户网站的目的揭阳seo快速排名
  • 做房产经纪人要自己花钱开网站吗怎么做市场营销和推广
  • zencart网站建设国内最新消息新闻
  • wordpress 单本小说seo是做什么的
  • 英文b2b网站系统灰色关键词排名