Skip to content

Instantly share code, notes, and snippets.

View berceanu's full-sized avatar
:octocat:
long long ago; /* in a galaxy far far away */

Andrei Berceanu berceanu

:octocat:
long long ago; /* in a galaxy far far away */
View GitHub Profile
@berceanu
berceanu / slurm_parallel.sh
Last active November 3, 2021 08:57
Example parallel SLURM script
#!/bin/bash
#SBATCH --job-name="1PW_serie2_He"
#SBATCH --output=petawatt_%j.log # Standard output and error log
#SBATCH --account=ptomassini_a+
#SBATCH --mail-type=END,FAIL # Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH --mail-user=paolo.tomassini@mail.eli-np.ro
#SBATCH --partition=gpu
#SBATCH --time 144:00:00 # Max allowed job runtime
#SBATCH --ntasks=4
#SBATCH --ntasks-per-node=4
"""
Optuna example that optimizes a simple quadratic function.
In this example, we optimize a simple quadratic function (ha, not anymore). We also demonstrate how to continue an
optimization and to use timeouts.
"""
import numpy as np
import optuna
@berceanu
berceanu / h5py_dask.py
Created March 2, 2021 21:25
Example usage of h5py virtual datasets with dask arrays
import dask.array as da
chunks = list()
for job in proj:
h5f = LastH5File(job)
sh = h5py.File(h5f.fpath, "r")[
"/data/91800/particles/electrons/weighting"
].shape[0]
chunks.append(sh)
@berceanu
berceanu / cgroup.conf
Last active February 13, 2021 14:47
RA5 SLURM config
CgroupAutomount=yes
CgroupReleaseAgentDir="/etc/slurm/cgroup"
ConstrainCores=yes
ConstrainDevices=yes
ConstrainRAMSpace=yes
#TaskAffinity=yes
@berceanu
berceanu / slurm_job_script.sh
Last active February 13, 2021 14:45
SLURM job script for 4 concurrent MPI runs, over 4 GPUs each, of fbpic
#!/bin/bash
#SBATCH --partition=gpu
#SBATCH -t 72:00:00
#SBATCH --ntasks=16
#SBATCH --ntasks-per-node=16
#SBATCH --cpus-per-task=1
#SBATCH --mem-per-cpu=31200m
#SBATCH --gres=gpu:16
#SBATCH --gres-flags=enforce-binding
#SBATCH --account=berceanu_a+
@berceanu
berceanu / numba.tst.out
Created February 9, 2021 02:00
numba test results
.............s....................E................................................................................................................................................................s...............s............................................................................/data/storage/berceanu/software/pkg/miniforge3pic/lib/python3.8/site-packages/numba/cuda/decorators.py:69: NumbaDeprecationWarning: Deprecated keyword argument `argtypes`. Signatures should be passed as the first positional argument.
warn(msg, category=NumbaDeprecationWarning)
/data/storage/berceanu/software/pkg/miniforge3pic/lib/python3.8/site-packages/numba/cuda/decorators.py:69: NumbaDeprecationWarning: Deprecated keyword argument `argtypes`. Signatures should be passed as the first positional argument.
warn(msg, category=NumbaDeprecationWarning)
........................................................................................................................./data/storage/berceanu/software/pkg/miniforge3pic/lib/p
@berceanu
berceanu / numba_uuid.py
Last active February 8, 2021 17:47
Example usage of numba for getting GPU UUID
from numba import cuda
with cuda.gpus[0]:
dev = cuda.get_current_device()
print(dev.uuid)
with cuda.gpus[1]:
dev = cuda.get_current_device()
print(dev.uuid)
@berceanu
berceanu / lwfa_script.py
Last active February 7, 2021 18:02
`fbpic` lwfa script with reflective / open boundary conditions
"""
This is an input script that runs a simulation of
laser-wakefield acceleration using FBPIC.
Usage
-----
- Modify the parameters below to suit your needs
- Type "python lwfa_script.py" in a terminal
Help
@berceanu
berceanu / imshow.png
Last active February 28, 2021 13:47
Example illustrating `imshow` usage, with `origin`, `extent` and `ogrid`.
imshow.png
@berceanu
berceanu / bunch_fit.png
Last active January 26, 2021 15:00
Fit the centroid positions for a given electron bunch.
bunch_fit.png