Julia
Introducció
En aquest exemple, explorarem com enviar a Multivac un programa usant Julia per a calcular una funció objectiu.
Codi d’exemple
Suposem que volem minimitzar la següent funció objectiu:
\[f(x) = x^2 + 3x + 2\]
Crearem un arxiu per exemple anomenat test_julia.jl per a calcular el valor de la funció objectiu per a un valor específic de x:
# Definim la funció objectiu
f(x) = x^2 + 3x + 2
# Definim un valor específic de x
x_val = 5
# Calculem el valor de la funció objectiu per a x_val
resultat = f(x_val)
# Mostrem el resultat
println("El valor de la funció objectiu per a x = $x_val és $resultat")
Execució
Crearem un document amb els parametres de conficuració, per exemple: test_julia.slurm` que conté la configuració d’execució per a aquest script de julia.
VERSION=1.3
JOB_NAME=julia_example
NAME_OUTPUT=out
PARTITION=all
N_TASKS=1
CPUS_PER_TASK=1
MAIL_TYPE=END,FAIL
MAIL_USER=nom.usuari@upc.edu
MEMORY=1G
BEGIN=now
TIME_LIMIT=00:05:00
LOG_OUTPUT=log
FORCED_NODES=
EXCLUDED_NODES=
ROUTE=~/
COMMANDS=(
"/usr/local/programari/julia-1.10.1/bin/julia --eval \"include(\\\"$ROUTE/test_julia.jl\\\")\""
)
Aquest script el llançarem des de iocex usant la següent comanda:
multivac test_julia.slurm
El resultat del nostre programa un cop finalitzada l’execució serà visible al mateix directori a on hem fet l’execució.