Lanzamiento de la plataforma beta pública RISC-V · Configuración del entorno informático científico Jupiter+Octave en SG2042

Introducción

JupyterHub es una plataforma informática compartida de código abierto que gestiona un entorno Jupyter independiente para cada usuario y se puede utilizar para clases de estudiantes, grupos de ciencia de datos empresariales o grupos de investigación científica. Es un centro multiusuario que puede generar, administrar y representar múltiples instancias de servidores portátiles Jupyter de un solo usuario.

GNU Octave es un software que utiliza un lenguaje de programación de alto nivel utilizado principalmente para análisis numérico. Octave ayuda a resolver numéricamente problemas lineales y no lineales y a realizar otros experimentos numéricos utilizando un lenguaje compatible con MATLAB. También está disponible como lenguaje orientado a lotes. Debido a que es parte del Proyecto GNU, es software libre bajo los términos de la Licencia Pública General GNU.

En este número, intentaremos que Jupyter y Octave formen una plataforma informática científica multiusuario.

Materiales experimentales:

Python 3 (si no, instale python3 primero)

pip (si no está instalado, instale python3-pip primero)

Código fuente de octava

Un servidor HS-2

configuración del servidor:

CPU: SG2042 (64 núcleos)

RAM: 32GB

Capacidad del disco duro: 1TB

Sistema operativo: Ubuntu 22.10 (GNU/Linux 6.1.31 riscv64)

Pasos experimentales:

Primero instale JupyterHub, JupyterLab y Jupyter Notebook a través de pip:

pip3 install jupyterhub jupyterlab notebook

Genere el archivo de configuración (el archivo de configuración se puede modificar según la situación real):

jupyterhub --generate-config

Luego inicie jupyterhub:

jupyterhub

O ejecutar en segundo plano:

nohup jupyterhub &

Simplemente acceda a [dirección del servidor]: 8000 con su navegador. Después de visitarlo, descubrimos que aunque vimos JupyerHub ejecutándose, solo tenía Python3 y no tenía la opción Octave.

imagen

Por lo tanto, también necesitamos instalar Octave y componentes relacionados.

Hay dos formas de instalar Octave: instalación compilada e instalación apta.

Método 1: instalar directamente usando apt

sudo apt install octave

Método 2: compilar e instalar

Descargar el paquete de código fuente de Octave

obtener 

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

(Si la velocidad de descarga es lenta, puede descargarla en su computadora con anticipación y luego transferir el archivo al servidor)

Descomprima el paquete fuente de Octave

tar -xzvf octave-8.3.0.tar.gz

Ingrese a la carpeta del código fuente de Octave

cd octave-8.3.0/

imagen

 Configuración:

./configure

Compilar:

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

Instalar:

sudo make install

Ejecute Octave Shell. Si aparece el número de versión y el mensaje, significa que la instalación se realizó correctamente.

imagen

Instalar núcleo de octava

pip3 install octave-kernel

Instalar gnuplot

sudo apt-get install gnuplot

Luego reinicie jupyterhub (si se está ejecutando en segundo plano, asegúrese de haber eliminado todos los procesos relacionados con jupyterhub antes de reiniciar):

jupyterhub

o:

nohup jupyterhub &(后台运行)

Luego abra el navegador nuevamente y visite [dirección del servidor]:8000 para ver las notas de Octava.

imagen

 Elegimos Octave para crear nuevas notas.

Trazar una función seno:

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; % 添加网格线

Efecto:

imagen

Dibuja una forma de corazón:

imagen

De hecho, Octave no sólo puede hacer dibujos, sino que incluso puede calcular la secuencia de Fibonacci.

imagen

 Incluso calculando pi:

imagen

El resultado indica que falta la biblioteca. Entonces necesitamos instalar el paquete simbólico.

Gracias al soporte de Octave para instalar paquetes de expansión, podemos usar algunos paquetes de expansión para lograr más funciones y hacer que Octave sea más potente.

imagen

Después de ingresar a Octave Shell, primero actualice la fuente del paquete de expansión, luego descargue e instale el paquete simbólico:

pkg update
pkg install -forge symbolic

 Intente ejecutarlo nuevamente:

imagen

Luego pruebe 10, 100, 1000, 10000 y 100000 bits respectivamente:

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

 

El siguiente paso es probar el modo multiusuario. Aunque Jupyterhub se puede administrar mediante una sola computadora portátil con múltiples usuarios, si necesita lograr la administración multiusuario, necesita una cuenta raíz.

Primero cambie a la cuenta raíz:

su

Después de ingresar la contraseña, inicie sesión como usuario root y luego regrese al directorio de inicio:

cd

Instalar paquetes relacionados:

pip3 install jupyterhub jupyterlab notebook

Cree una nueva carpeta jupyerhub:

mkdir jupyterhub

Copie el archivo de configuración anterior (puede modificarlo adecuadamente según su propia situación)

cp jupyterhub_config.py jupyterhub

O crear un nuevo archivo de configuración

jupyterhub --generate-config

Iniciar JupyterHub

jupyterhub

Inicie JupyterHub en segundo plano

nohup jupyterhub &

Pero no hay Octave en otras interfaces de usuario, así que instalé octave-kernel directamente bajo el usuario root.

pip3 install octave-kernel

Inicie tres usuarios al mismo tiempo, calcule Pi y observe el tiempo necesario para asegurarse de que la octava de los tres usuarios esté en estado Ocupado.

Los resultados son los siguientes (con una precisión de 100.000 decimales):

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

 Después de las pruebas, la diferencia es de sólo unas pocas décimas de segundo, pero lleva más tiempo que calcular pi para un solo usuario.

No solo puedes usar notas de Octava, también puedes usar el símbolo de comando de Octava (Shift+Enter para enviar comandos).

imagen

imagen

 

Consejos:

Al realizar la configuración o compilación, si se le indica que faltan las dependencias requeridas, instale primero las dependencias requeridas y luego realice la configuración o compilación nuevamente.

Al ejecutar el código, si se le indica que faltan las dependencias requeridas, primero puede iniciar sesión como root e instalar las dependencias requeridas y luego reiniciar el servidor Jupyter de cada usuario (o reiniciar directamente todo JupyterHub).

Resumen del experimento:

Con la bendición de JupyterHub, el servidor HS-2 ahora puede convertirse en una excelente plataforma de computación científica. Junto con Octave, no solo puede usar Python para ejecutar computación científica en JupyterHub, sino que también puede usar Octave para completar tareas de computación científica. incluso más usuarios utilizan el mismo servidor JupyterHub.

Referencias:

Página de JupyterHub

https://jupyter.org/hub

Sitio web oficial de Octava

https://octave.org/

Paquetes de octava

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

Referencia de configuración: documentación de JupyterHub

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

Fin del texto


  • Acerca de HS-2

La placa base universal HS-2 RISC-V es una placa base mATX estándar diseñada para desarrolladores desarrollada conjuntamente por Pengfeng Technology y sus socios. Está preinstalada con un paquete de software personalizado y desarrollado por Pengfeng Technology para servidores de alto rendimiento RISC-V. Incluye varios puntos de referencia estándar, un compilador GCC que admite la extensión V, una biblioteca informática, middleware y una variedad de aplicaciones de servidor típicas.

La placa base universal HS-2 RISC-V está equipada con un procesador doméstico RISC-V de 64 núcleos (SG2042). SG2042 es el procesador RISC-V de mayor rendimiento actualmente en producción en masa. Está diseñado principalmente para las necesidades de la informática de alto rendimiento y es adecuado para escenarios de aplicaciones de gran potencia informática, como la informática científica, la informática de ingeniería, la informática de inteligencia artificial y la informática de fusión. .

imagen

imagen

 Acerca del banco de pruebas público RISC-V

imagen

 Plataforma de nube de prueba pública de procesador de alto rendimiento RISC-V · Guía de inicio rápido, enlace de descarga: https://www.kdocs.cn/l/cmnYcyFIlVRx

  • Serie de artículos sobre la plataforma de nube de prueba pública RISC-V

  1.  Lanzamiento de la plataforma beta pública RISC-V·Prueba completa del ancho de banda de transmisión

  2.  Lanzamiento de la plataforma beta pública RISC-V · Minecraft MohistMC

  3.  Lanzamiento de la plataforma beta pública RISC-V·El primer servidor WEB "¡Hola mundo RISC-V!"

  4.  Lanzamiento de la plataforma beta pública RISC-V·Cómo jugar k3s en SG2042

  5. Lanzamiento del blog "RISC-V Growth Diary", ¿el primer blog que se ejecuta en el servidor RISC-V?

  6. Lanzamiento de la plataforma beta pública RISC-V: Cómo jugar OpenMPI en SG2042

  7. Lanzamiento de la plataforma beta pública RISC-V: Compilación del kernel de Fedora Linux de forma nativa en RISC-V

  8.  Lanzamiento de la plataforma beta pública RISC-V·Prueba completa de Unix Bench

  9. Lanzamiento de la plataforma beta pública RISC-V · Uso de YCSB para probar el rendimiento de MySQL en SG2042

  10. Lanzamiento de la plataforma de prueba pública RISC-V · Prueba de 7 zip

  11. Publicación del informe de prueba CoreMark de la plataforma de prueba pública RISC-V

  12. Lanzamiento de la plataforma beta pública RISC-V · Evaluación de la adaptación de la base de datos en el servidor RISC-V

  13. Lanzamiento de la plataforma beta pública RISC-V · Configuración del entorno informático científico Jupiter+Octave en SG2042 (este artículo)

Supongo que te gusta

Origin blog.csdn.net/weixin_45571628/article/details/132453095
Recomendado
Clasificación