0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RISC-V公测平台发布·在SG2042上配置Jupiter+Octave科学计算环境

澎峰科技PerfXLab 来源:澎峰科技PerfXLab 作者:澎峰科技PerfXLab 2023-08-23 15:36 次阅读

简介

JupyterHub是一个开源的共享计算平台,它为每个用户管理一个单独的 Jupyter 环境, 可以用于学生班级、企业数据科学小组或科学研究小组。它是一个多用户中心,可以生成、管理和代理多个单用户Jupyter笔记本服务器的实例。GNU Octave是一种采用高级编程语言的主要用于数值分析的软件。Octave有助于以数值方式解决线性和非线性问题,并使用与MATLAB兼容的语言进行其他数值实验。它也可以作为面向批处理的语言使用。因为它是GNU计划的一部分,所以它是GNU通用公共许可证条款下的自由软件。本期,我们就来试试Jupyter和Octave组成一个多用户的科学计算平台。

实验材料:

Python 3(如果没有请先安装python3

pip(如果没有安装请先安装python3-pip)

Octave源代码

一台HS-2服务器

服务器配置:

CPU:SG2042(64核心)RAM:32GB硬盘容量:1TB

操作系统:Ubuntu 22.10 (GNU/Linux 6.1.31 riscv64)

实验步骤:

先通过pip安装JupyterHub、JupyterLab和Jupyter Notebook:

pip3 install jupyterhub jupyterlab notebook

生成配置文件(可以根据实际情况对配置文件进行修改):

jupyterhub --generate-config

然后启动jupyterhub:

jupyterhub

或后台运行:

nohup jupyterhub &

浏览器访问[服务器地址]:8000即可,访问后发现虽然我们看到了JupyerHub在运行,但是只有Python3,并没有Octave选项。

wKgZomTltMGAOvgtAAEg5QsnGnU410.png

因此,我们还需要安装Octave和相关组件。

安装Octave的方式有两种:编译安装和apt安装。

方式1:直接使用apt安装

sudo apt install octave

方式2:编译安装

下载Octave源码包

wgethttps://mirror2.sandyriver.net/pub/software/gnu/octave/octave-8.3.0.tar.gz

(如果下载速度慢,可以先提前在自己的电脑上下载好,然后将文件传到服务器上)

解压Octave源码包

tar -xzvf octave-8.3.0.tar.gz

进入Octave源码文件夹

cd octave-8.3.0/
wKgZomTltOOAOcBtAAC3dBxWHk0022.png

配置:

./configure

编译:

make
 -j64(线程数根据实际情况来设置)

安装:

sudo make install

运行octave shell,如果出现版本号及提示,就说明安装成功!

wKgZomTltQaAU8e8AAC9o8MgnbQ598.png

安装octave-kernel

pip3
 install octave-kernel

安装gnuplot

sudo apt-
get
 install gnuplot

然后重新启动jupyterhub(如果是后台运行请先确保已杀灭所有jupyterhub相关进程再重启):

jupyterhub

或者:

nohup jupyterhub &(后台运行)

然后再次打开浏览器访问[服务器地址]:8000就可以看到Octave笔记了。

wKgZomTltUyAOcfuAAChc_q79eo136.png

我们选择Octave新建笔记。画一个正弦函数图:


graphics_toolkit("gnuplot");
gnuplot_binary('/usr/bin/gnuplot'); % 设置gnuplot二进制文件的路径,具体路径可能不同
% 生成一组 x 值(从 0 到 2π,间隔为 0.01)
x = 0:0.01:2*pi;
% 计算对应的正弦值
y = sin(x);
% 绘制正弦函数图
plot(x, y);
title("Sin Function"); % 添加标题
xlabel("x"); % 添加 x 轴标签
ylabel("sin(x)"); % 添加 y 轴标签
grid on; % 添加网格线

效果:

wKgZomTltX-AJc57AADCyS9juFI983.png

画个心形:

wKgZomTltY-AAdhEAACT7eGR_Fc232.png

其实Octave不仅可以画图,甚至还可以算斐波那契数列。

wKgZomTltZ2Ac4QQAABJSPtFnKs406.png

甚至是算圆周率:

wKgaomTlta2ALwGVAADTajq-Bdg614.png

结果提示缺少库。因此我们需要安装symbolic包。
得益于Octave支持安装扩展包,我们可以利用一些扩展包来实现更多功能,让Octave变得更加强大。

wKgaomTltb6AS3kZAAGQT3KGx3E208.png

进入Octave Shell后,先更新扩展包源,然后再下载并安装symbolic包:

pkg update
pkg install -forge symbolic

再重新尝试运行就可以了:

wKgaomTlteSAJEfNAAFIrMBIrA8331.png

然后分别测试10、100、1000、10000和100000位:


10位:1.1531 秒
100位:1.155 秒
1000位:1.1567 秒
10000位:1.2044 秒
100000位:3.2812 秒

接下来就是尝试多用户了,虽然Jupyterhub可以使用多用户单个笔记本管理,但是如果需要实现多用户管理,那就需要root账号了。

首先切换到root账号:

su

输入密码后进入以root用户登录,然后回到家目录:

cd

安装相关包:

pip3 install jupyterhub jupyterlab notebook

新建一个jupyerhub文件夹:

mkdir jupyterhub

复制之前的配置文件(可以根据自身情况适当修改)

cp jupyterhub_config.py jupyterhub

或新建配置文件

jupyterhub --generate-config

启动JupyterHub

jupyterhub

以后台形式启动JupyterHub

nohup jupyterhub &

但是其他用户界面里没有Octave,于是我就直接在root用户下安装octave-kernel了。

pip3 install octave-kernel

同时启动三个用户,并计算Pi,并观察耗时,确保三个用户的Octave都处于Busy状态。

结果如下(精准到10万位小数点):


perfxlab01:6.762秒
python01:6.6159秒
python02:6.9564秒

测试下来只有零点几秒的差距,但是相比于单个用户下算圆周率耗时会久一些。

不仅可以使用Octave笔记,也可以使用Octave命令符(Shift+Enter发送命令)。

wKgaomTltkiAAh8MAAEIhdTf7TE455.png

小贴士:

执行配置或编译时,如果提示缺少所需依赖,请先安装所需依赖然后重新执行配置或编译。运行代码时,如果提示缺少所需依赖,可以先以root身份登录然后安装所需依赖,然后再重新启动该各个用户的Jupyter服务器(或直接重启整个JupyterHub)即可。

实验总结:

有了JupyterHub的加持,现在HS-2服务器可以成为一个优秀的科学计算平台,再配合上Octave,你不仅可以用JupyterHub上用Python跑科学计算,你还可以使用Octave完成科学计算任务,甚至可以多个用户使用同一个JupyterHub服务器。

参考资料

JupyterHub页面

https://jupyter.org/hub

Octave官网

https://octave.org/

Octave Packages

https://gnu-octave.github.io/packages/

Configuration Reference — JupyterHub documentation

https://jupyterhub.readthedocs.io/en/stable/reference/config-reference.html

正文完

About HS-2

HS-2 RISC-V通用主板是澎峰科技与合作伙伴共同研发的一款专为开发者设计的标准mATX主板,它预装了澎峰科技为RISC-V高性能服务器定制开发的软件包,包括各种标准bencmark、支持V扩展的GCC编译器、计算库、中间件以及多种典型服务器应用程序。

HS-2 RISC-V通用主板搭载了一颗国产RISC-V 64核处理器(SG2042)。SG2042是目前已量产的性能最高的RISC-V处理器,主要针对高性能计算领域需求设计,适用于科学计算、工程计算、AI计算、融合计算等大算力应用场景。

wKgZomTUwSaACzXRAAZ34cPcisY858.png

关于RISC-V公共测试平台

wKgZomTUwUSAa2dyAA2V8stwnBo166.png

RISC-V高性能处理器公共测试云平台 ·快速使用指南,下载链接:https://www.kdocs.cn/l/cmnYcyFIlVRx

RISC-V公共测试云平台系列文章

RISC-V公测平台发布 ·Stream带宽完整测试

RISC-V公测平台发布 · 我的世界MohistMC

RISC-V公测平台发布 · 第一个WEB Server“Hello RISC-V world!”

RISC-V公测平台发布 ·如何在SG2042上玩转k3s

“RISC-V成长日记” blog发布,第一个运行在RISC-V服务器上的blog?

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI

RISC-V公测平台发布:Compiling The Fedora Linux Kernel Natively on RISC-V

RISC-V公测平台发布 · Unix Bench完整测试

RISC-V公测平台发布 · 使用YCSB测试SG2042上的MySQL性能

RISC-V公测平台发布 · 7-zip 测试

RISC-V公测平台发布 · CoreMark测试报告

RISC-V公测平台发布 · 数据库在RISC-V服务器上的适配评估

RISC-V公测平台发布 · 在SG2042上配置Jupiter+Octave科学计算环境(本篇)

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8350

    浏览量

    83538
  • 编程语言
    +关注

    关注

    9

    文章

    1897

    浏览量

    33897
  • 开源
    +关注

    关注

    3

    文章

    3055

    浏览量

    41831
  • python
    +关注

    关注

    53

    文章

    4709

    浏览量

    83711
  • RISC-V
    +关注

    关注

    42

    文章

    2019

    浏览量

    45385
收藏 人收藏

    评论

    相关推荐

    RISC-V公测平台发布·如何在SG2042玩转k3s

    使用 K3s 不仅能够缩短启动集群的时间,还能够减少集群需要消耗的资源。是RISC-V软件生态中不可或缺的一部分。
    的头像 发表于 07-31 15:21 1080次阅读
    <b class='flag-5'>RISC-V</b><b class='flag-5'>公测</b><b class='flag-5'>平台</b><b class='flag-5'>发布</b>·如何在<b class='flag-5'>SG2042</b><b class='flag-5'>上</b>玩转k3s

    RISC-V公测平台发布:如何在SG2042玩转OpenMPI

    OpenMPI是一个免费、开源、高性能的MPI实现,兼容MPI-1和MPI-2标准,并且还拥有完整的MPI-3.1标准。OpenMPI由开源社区开发维护,支持大多数类型的HPC平台
    的头像 发表于 08-07 11:59 921次阅读
    <b class='flag-5'>RISC-V</b><b class='flag-5'>公测</b><b class='flag-5'>平台</b><b class='flag-5'>发布</b>:如何在<b class='flag-5'>SG2042</b><b class='flag-5'>上</b>玩转OpenMPI

    RISC-V公测平台发布 · 数据库RISC-V服务器的适配评估

    在这一期文章中,我们继续深入讨论RISC-V+数据库的应用。本期就继续利用HS-2平台来测试数据库软件RISC-V服务器的兼容性。
    的头像 发表于 08-21 17:09 800次阅读
    <b class='flag-5'>RISC-V</b><b class='flag-5'>公测</b><b class='flag-5'>平台</b><b class='flag-5'>发布</b> · 数据库<b class='flag-5'>在</b><b class='flag-5'>RISC-V</b>服务器<b class='flag-5'>上</b>的适配评估

    算能重磅发布行业首款服务器级RISC-V CPU算丰SG2042,助力RISC-V迈向高性能计算

    力市场持续扩大研发投入,坚持算力硬件提供商的定位,推动工具链开源并开放硬件参考设计。算能“专注·开放”的理念正吸引越来越多的开发者和企业参与到RISC-V生态中来,推动SG2042服务器CPU
    发表于 03-03 16:45

    openEuler RISC-V 23.03 创新版本亮相:全面提升硬件兼容性和桌面体验

    openEuler RISC-V 23.03 创新版本正式发布。openEuler RISC-V SIG 作为 openEuler 系统 RISC
    发表于 04-15 13:55

    阿里平头哥发布首个 RISC-V AI 软硬全栈平台

    转自https://m.ithome.com/html/714391.htm 2023 RISC-V 中国峰会8月23日北京召开,平头哥会上发布了首个自研
    发表于 08-26 14:14

    RISC-V强势崛起为芯片架构第三极

    发生的。 随着RISC-V的技术、生态、产业的高速发展,近年来还涌现出一些里程碑式的积极事件。 比如RISC-V服务器芯片的发布。基于玄铁C910的算能SG2042服务器芯片和融合服务
    发表于 08-30 13:53

    256核!赛昉发布全新RISC-V众核子系统IP平台

    11月23日,中国RISC-V软硬件生态领导者赛昉科技正式发布自主研发的片一致性互联IP——昉·星链-700(StarLink-700),并推出基于StarLink-700和昉·天枢-90
    发表于 11-29 13:37

    高清无码:2023年玄铁RISC-V生态大会,算能SG2042与澎峰科技的高性能计算型服务器共同亮相

    硬件产品上半年全部进入量产。 欢迎加群咨询或电话13510090675 搭载2颗SC2042的2U服务器 搭载4颗SG2042的1U路计算型服务器 搭载SG2042的手提式开发者工作站
    发表于 03-03 09:22 7897次阅读
    高清无码:2023年玄铁<b class='flag-5'>RISC-V</b>生态大会,算能<b class='flag-5'>SG2042</b>与澎峰科技的高性能<b class='flag-5'>计算</b>型服务器共同亮相

    成功适配算能SG2042服务器板卡!deepin for RISC-V新进展

    去年11月,deepin操作系统V23 Alpha版本中正式适配RISC-Vstage1 ,deepin实现了
    的头像 发表于 03-10 10:32 967次阅读

    RISC-V联盟年会看点回顾 2023年是RISC-V高性能计算元年

     高性能处理器,SG2042已经量产(算能科技)‍‍‍‍‍* RISC-V 64cores开发者工作站,4月发
    的头像 发表于 03-14 14:55 2231次阅读

    算能重磅发布行业首款服务器级RISC-V CPU算丰SG2042

    王雷也同步了基于SG2042的EVB开发板和2U服务器的最新进展,EVB开发板搭载了一颗SG2042,拥有丰富的外设、调试接口和扩展接口,可以帮助开发者快速进行开发和调试,加速整个开发过程。
    的头像 发表于 03-30 11:01 2923次阅读

    openEuler成功适配SG2042服务器板卡加速软件包构建

    近日,RISC-V SIG 取得重要成果,成功算能 SG2042 (EVB) 服务器板卡上成功适配 openEuler 操作系统,这是推动 RISC-V 生态发展的重要进展。
    的头像 发表于 04-12 18:24 1473次阅读

    openEuler RISC-V 23.03 创新版本亮相:全面提升硬件兼容性和桌面体验

    近日,openEuler RISC-V 23.03 创新版本正式发布。openEuler RISC-V SIG 作为 openEuler 系统 R
    的头像 发表于 04-14 16:16 954次阅读

    RISC-V公测平台发布 使用YCSB测试SG2042的MySQL性能

    MySQL数据库服务是一个完全托管的数据库服务,可使用世界最受欢迎的开源数据库来部署云原生应用程序。它是百分百由MySQL原厂开发,管理和提供支持。
    的头像 发表于 08-10 19:15 801次阅读
    <b class='flag-5'>RISC-V</b><b class='flag-5'>公测</b><b class='flag-5'>平台</b><b class='flag-5'>发布</b>  使用YCSB测试<b class='flag-5'>SG2042</b><b class='flag-5'>上</b>的MySQL性能