From 91f4348bf2fc8b024e2a0272429329c62192ef8b Mon Sep 17 00:00:00 2001 From: Dmitry Ozerov Date: Wed, 9 Dec 2020 12:54:56 +0100 Subject: [PATCH] added JF03 (Bernina I0 detector) --- scripts/JF03-buffer-worker.sh | 17 +++++++++++++++++ scripts/JF03-buffer-worker@.service | 16 ++++++++++++++++ scripts/JF03-buffer.service | 10 ++++++++++ scripts/JF03-stream.service | 15 +++++++++++++++ scripts/JF03-stream.sh | 9 +++++++++ scripts/JF03-vis.service | 13 +++++++++++++ scripts/JF03-vis.sh | 21 +++++++++++++++++++++ 7 files changed, 101 insertions(+) create mode 100644 scripts/JF03-buffer-worker.sh create mode 100644 scripts/JF03-buffer-worker@.service create mode 100644 scripts/JF03-buffer.service create mode 100644 scripts/JF03-stream.service create mode 100644 scripts/JF03-stream.sh create mode 100644 scripts/JF03-vis.service create mode 100644 scripts/JF03-vis.sh diff --git a/scripts/JF03-buffer-worker.sh b/scripts/JF03-buffer-worker.sh new file mode 100644 index 0000000..00ecbc4 --- /dev/null +++ b/scripts/JF03-buffer-worker.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ $# != 1 ] +then + systemctl start JF03-buffer-worker@00 + exit +fi + +M=$1 + +coreAssociatedBuffer=(12) + +initialUDPport=50030 +port=$((${initialUDPport}+10#${M})) +DETECTOR=JF03T01V01 + +taskset -c ${coreAssociatedBuffer[10#${M}]} /usr/local/bin/sf_buffer ${DETECTOR} M${M} ${port} /gpfs/photonics/swissfel/buffer/${DETECTOR} ${M} diff --git a/scripts/JF03-buffer-worker@.service b/scripts/JF03-buffer-worker@.service new file mode 100644 index 0000000..758aed9 --- /dev/null +++ b/scripts/JF03-buffer-worker@.service @@ -0,0 +1,16 @@ +[Unit] +Description=JF03 UDP2buffer worker instance as a service, instance %i +Requires=JF03-buffer.service +Before=JF03-buffer.service +BindsTo=JF03-buffer.service + +[Service] +PermissionsStartOnly=true +Type=idle +User=root +ExecStart=/usr/bin/sh /home/dbe/service_scripts/JF03-buffer-worker.sh %i +TimeoutStartSec=10 +RestartSec=1 + +[Install] +WantedBy=JF03-buffer.service diff --git a/scripts/JF03-buffer.service b/scripts/JF03-buffer.service new file mode 100644 index 0000000..7e87546 --- /dev/null +++ b/scripts/JF03-buffer.service @@ -0,0 +1,10 @@ +[Unit] +Description=All UDP-buffer instances of JF03 + +[Service] +Type=oneshot +ExecStart=/usr/bin/sh /home/dbe/service_scripts/JF03-buffer-worker.sh +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/scripts/JF03-stream.service b/scripts/JF03-stream.service new file mode 100644 index 0000000..0cce437 --- /dev/null +++ b/scripts/JF03-stream.service @@ -0,0 +1,15 @@ +[Unit] +Description=stream service (to streamvis and live analysis) of JF03 + +[Service] +PermissionsStartOnly=true +Type=idle +User=root +ExecStart=/usr/bin/sh /home/dbe/service_scripts/JF03-stream.sh +TimeoutStartSec=10 +Restart=on-failure +RestartSec=1 + +[Install] +WantedBy=multi-user.target + diff --git a/scripts/JF03-stream.sh b/scripts/JF03-stream.sh new file mode 100644 index 0000000..62ef433 --- /dev/null +++ b/scripts/JF03-stream.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +coreAssociated="27" +CONFIG=/gpfs/photonics/swissfel/buffer/config/stream-JF03.json +SERVICE=JF03-stream + +/home/dbe/git/sf_daq_buffer/scripts/check_config_changed.sh ${CONFIG} ${SERVICE} & + +taskset -c ${coreAssociated} /usr/local/bin/sf_stream ${CONFIG} diff --git a/scripts/JF03-vis.service b/scripts/JF03-vis.service new file mode 100644 index 0000000..636e27c --- /dev/null +++ b/scripts/JF03-vis.service @@ -0,0 +1,13 @@ +[Unit] +Description=streamvis: JF03 + +[Service] +User=root +TimeoutStartSec=2 +ExecStart=/bin/bash ./home/dbe/service_scripts/JF03-vis.sh +Restart=on-failure +RestartSec=4 + +[Install] +WantedBy=multi-user.target + diff --git a/scripts/JF03-vis.sh b/scripts/JF03-vis.sh new file mode 100644 index 0000000..9fa8dd4 --- /dev/null +++ b/scripts/JF03-vis.sh @@ -0,0 +1,21 @@ +export PATH=/home/dbe/miniconda3/bin:$PATH + +source /home/dbe/miniconda3/etc/profile.d/conda.sh + +conda deactivate +conda activate vis + +PORT=5003 +PORT_BACKEND=9003 + +H=`echo ${HOSTNAME} | sed 's/.psi.ch//'` +BACKEND=${H} + +CORES=39 + +taskset -c ${CORES} \ +streamvis bernina --allow-websocket-origin=${H}:${PORT} \ +--allow-websocket-origin=sf-daq-bernina:${PORT} --port=${PORT} \ +--address tcp://${BACKEND}:${PORT_BACKEND} \ +--page-title I0 +