About

Background

I am a PhD candidate in theoretical physics at SISSA (Trieste), currently also completing the Master in High Performance Computing (MHPC) jointly run by SISSA and ICTP. Before Trieste I studied at the Università Cattolica del Sacro Cuore in Brescia, where I earned a BSc in Mathematics and an MSc in Physics, both 110/110 cum laude, and graduated as the best student of my year.

Curriculum Vitae

Scarica il CV (PDF, italiano)  ·  English version

Passions & Hobbies

When I'm not doing physics or HPC/AI, I love reading (especially sci-fi and classics) as well as playing board games. I love spending time outdoors, exploring nature, hiking, and going on adventures. Most importantly, I'm always eager to explore new things and learn new skills, whether it's a new programming language, a new scientific topic, or a new hobby.

Research

Theoretical High-Energy Physics

Physics is what I care about most. My research is in theoretical high-energy physics: I study dualities between supersymmetric gauge theories by matching their superconformal indices and partition functions, using large symbolic computations run as cluster jobs. The work has produced six peer-reviewed papers (also on Google Scholar), spanning quantum field theory, supersymmetry, and the exact methods that connect them. I enjoy the parts of physics where a clean mathematical structure turns out to describe something real.

Computing

HPC & Scientific Computing

Through the MHPC programme I work at the boundary between large-scale computing and machine learning. My scientific-computing languages are Fortran (modern, OOP), C++ (templates, smart pointers, concurrency) and Python (NumPy, SciPy, pandas, matplotlib); builds with CMake. On the HPC side: parallel and GPU-accelerated scientific computing with CUDA (kernels, shared memory, multi-GPU with MPI), cuBLAS, OpenACC, MPI and OpenMP; distributed linear-algebra and eigenvalue solvers with PETSc/SLEPc; CPU-architecture analysis (cache hierarchy, roofline model, gprof/perf profiling); and job orchestration with SLURM on Leonardo (CINECA), Ulysses (SISSA) and Argo (ICTP). I have also worked with cloud and container infrastructure (Docker, Kubernetes, AWS) and distributed workflow libraries (Dask, Ray, Parsl).

Numerical methods covered include finite-difference and finite-element discretisations of PDEs, iterative Krylov solvers, and Kohn-Sham DFT via Quantum ESPRESSO.

AI & Machine Learning

On the AI/ML side: reinforcement-learning fine-tuning of LLMs (REINFORCE/RLOO, PPO, GRPO, RLHF), multi-agent LLM systems with RAG and tool use, deep learning with PyTorch (CNNs, transformers & attention, autoencoders, VAEs, adversarial training, representation learning), Physics-Informed Neural Networks (PINNs), Gaussian processes, and classical and Bayesian machine learning (scikit-learn, manifold learning, dimensionality reduction, clustering). I also have a working introduction to quantum computing: gate-based circuits with Qiskit and quantum annealing (D-Wave, QUBO problems).

Projects

Selected Work