做网站服务器是什么,河南县wap网站建设公司,网站建设课程的认识,平面设计案例网站简介
JupyterHub是一个开源的共享计算平台#xff0c;它为每个用户管理一个单独的 Jupyter 环境#xff0c; 可以用于学生班级、企业数据科学小组或科学研究小组。它是一个多用户中心#xff0c;可以生成、管理和代理多个单用户Jupyter笔记本服务器的实例。
GNU Octave是一…简介
JupyterHub是一个开源的共享计算平台它为每个用户管理一个单独的 Jupyter 环境 可以用于学生班级、企业数据科学小组或科学研究小组。它是一个多用户中心可以生成、管理和代理多个单用户Jupyter笔记本服务器的实例。
GNU Octave是一种采用高级编程语言的主要用于数值分析的软件。Octave有助于以数值方式解决线性和非线性问题并使用与MATLAB兼容的语言进行其他数值实验。它也可以作为面向批处理的语言使用。因为它是GNU计划的一部分所以它是GNU通用公共许可证条款下的自由软件。
本期我们就来试试Jupyter和Octave组成一个多用户的科学计算平台。
实验材料
Python 3如果没有请先安装python3
pip如果没有安装请先安装python3-pip
Octave源代码
一台HS-2服务器
服务器配置
CPUSG204264核心
RAM32GB
硬盘容量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选项。 因此我们还需要安装Octave和相关组件。
安装Octave的方式有两种编译安装和apt安装。
方式1直接使用apt安装
sudo apt install octave
方式2编译安装
下载Octave源码包 wget https://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/ 配置
./configure
编译
make -j64线程数根据实际情况来设置
安装
sudo make install
运行octave shell如果出现版本号及提示就说明安装成功 安装octave-kernel
pip3 install octave-kernel
安装gnuplot
sudo apt-get install gnuplot
然后重新启动jupyterhub如果是后台运行请先确保已杀灭所有jupyterhub相关进程再重启
jupyterhub
或者
nohup jupyterhub 后台运行
然后再次打开浏览器访问[服务器地址]:8000就可以看到Octave笔记了。 我们选择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; % 添加网格线
效果 画个心形 其实Octave不仅可以画图甚至还可以算斐波那契数列。 甚至是算圆周率 结果提示缺少库。因此我们需要安装symbolic包。
得益于Octave支持安装扩展包我们可以利用一些扩展包来实现更多功能让Octave变得更加强大。 进入Octave Shell后先更新扩展包源然后再下载并安装symbolic包
pkg update
pkg install -forge symbolic 再重新尝试运行就可以了 然后分别测试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万位小数点
perfxlab016.762秒
python016.6159秒
python026.9564秒 测试下来只有零点几秒的差距但是相比于单个用户下算圆周率耗时会久一些。
不仅可以使用Octave笔记也可以使用Octave命令符ShiftEnter发送命令。 小贴士
执行配置或编译时如果提示缺少所需依赖请先安装所需依赖然后重新执行配置或编译。
运行代码时如果提示缺少所需依赖可以先以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计算、融合计算等大算力应用场景。 关于RISC-V公共测试平台 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上配置JupiterOctave科学计算环境本篇