# Massimo Girondi CV ## The short version *Massimo Girondi*, AI Platform Engineer @ evroc AB. Linux user, Open Source supporter, incline to explore the "low level" aspects of the things. KTH and EIT Digital alumni. Proud amateur radio operator. ## How to reach me - Email: MYNAME@girondi.net. - LinkedIn: linkedin.com/MassimoGirondi - My academic profile: https://scholar.google.com/citations?user=s0B13rAAAAAJ - An up-to-date online version of this: https://girondi.net/cv/cv.txt, also as PDF https://girondi.net/cv/cv-massimo-girondi.pdf. - Last update: 2024-09-08 # Education - 2020-2024: PhD candidate in Communication Systems @ KTH - Royal Institute of Technology - 2020-2024: Licentiate of Engineering - Swedish "half PhD" - "Toward Highly-efficient GPU-centric Networking" - 2018-2020: Double degree in ICT Innovation - Internet Technology and Architectures @ EIT Digital - Master degree in Computer Science @ KTH-Royal Institute of Technology. Grade: A - Master degree in Information and Communication Engineering @ University of Trento. Grade: 110/110 with honours - 2015-2018: Bachelor degree in Computer Science @ University of Trento. Grade: 110/110 with honours - 2010-2015: Industrial Technician Diploma in Computer Science @ I.T.T. Chilesotti Thiene (VI). Grade: 95/100 # Activities @ KTH ## Research-oriented - Implemented a RDMA stack on GPU, allowing standard RDMA verb posting without GPU intervention (Licentiate Thesis, EdgeSyS 2024) - Reverse engineered rdma_core routines to reimplement in CUDA - "Hacked" rdma_core to use different memory locations - Implemented a benchmark, a test harness, and a inference serving prototype - Developed different implementation for comparison (e.g. CPU driven, multi-stream, CUDA Graph,...) - Published at https://github.com/rdma-from-gpu/ - Implemented from scratch a prototype of a inference serving system (partially in Licentiate Thesis) - Benchmarked a series of NICs to understand performance limits (follow up to a PAM 2021 paper, not published) - Developed a series of elements in FastClick to benchmark Hash Tables, and fixed other small issues in the FastClick (HPSR 2021) - Deployed a Network Function Chain on a NVIDIA Bluefield, and fixed software/driver issues in the deployment (NSDI 2022). - Including interactions with hardware vendor to debug and understand limitations ## Teaching - 2020-2024: Teaching Assistant in IK2200 - Communication Systems Design. Following a group of 5-6 students for a semester performing a thesis-like project - 2020: A comparison of multi-core flow classification methods for load balancing - 2021: Comparison of flow classification methods for load balancing - 2022: Heavy Hitters Detection for Hardware Offloading - 2023: GPU Workloads at 200 Gbps. Also handling some "course mechanics". - 2022-2024: Teaching Assistant in IK2220. Follow the project part of the course, handling part of the project assignment and evaluation. - Task: building a network in Mininet with Fastclick and Ryu-Openflow elements. - 2020-2021: handling course VMs infrastructure - 2022: rebuilt the aging course's VM and solved software version problems. - 2023: update the project focusing on more common "user-friendly features" (via a simple Flask Web-UI) ## Thesis supervision - 2024: Integrating a Database Into a Real-Time Communication System - Industrial Bachelor Thesis - 2023: Improving and Evaluating TRex Traffic Generator through P4 Switches - Master Thesis - 2023: An Evaluation of WebAssembly Pre-Initialization for Faster Startup Times - Master Thesis - 2022: COVID-19 Literature Compiler: A literature-mining and Data Visualization Tool - Master Thesis - 2022: Understating the CPU limitations of QUIC, and cache efficiency - Master Thesis (unfinished) ## Technical activities and others - Upgraded research cluster Internet connection to 10 Gbps - Handling the purchase of a dedicated server machine, with correct characteristics - Re-addressing of all machines from public IPs to a private network - Design and implementation of firewall rules (with nftables) - Interaction with our university IT department to agree on the connection characteristics - Deployment and configuration of common network services (e.g. DHCP, DNS, NTP, NFS, LDAP) - Implementation of a traffic monitoring system (via rsyslog and Graylog) for post-mortem analysis - Implementation of an automated way to create WireGuard certificates for all user - Maintenance of NSLAB research cluster - Main responsible for updates, upgrades, and fixing issues - Enforcing basic common-sense security practices - Remote smart hands (during WfH Covid times) - Interaction with vendors and purchase procedures within a governmental entity (KTH) - Handled the purchase of a total of 11 servers - 20% of the total lab machines in 2024 - Handled the purchase for a very specific PCIe switch-equipped machine (from Supermicro), "not in the catalogue" - Handled the purchase of limited availability NICs via (Bluefield 2, ConnectX-7, Xilinx Alveo, Xilinx SN1000) - Direct interaction with foreign vendor for specific off-catalogue components (direct procurements) - Designed a backup strategy between two different NASes, and handled the recovery of data from a dead device - Deployed a Zabbix monitoring system to the whole cluster - Developed Ansible playbooks to automate basic maintenance tasks. - Deployed a HA Proxmox cluster - Implemented a webui for the OpenFlow controller to identify connected NICs and track VLAN configuration, allowing easier remote re-configuration of the experimental plane - Involved in the procurement and troubleshooting of 400 Gbps DAC and AOC - involving also a Tofino 2 switch - Installation and configuration of remote access tools for cluster's users (e.g. X2GO, Xpra, X11VNC) - Main reference for a department-wide NVIDIA DGX-H100 server ( >2M SEK machine) - Helped in the "getting ready phase" - Handled the interconnection for the management network, and temporary Internet accesses - General upgrades, with the specific procedures for firmware upgrades - Design and implementation of basic security policies - Direct interaction with vendor Tech Support to diagnose hardware failures - Handled RMA procedure of components and other HW/Firmware issues. - First point of contact for final users - Deployment a JupyterHub environment on a Kubernetes cluster - Customized the environment for the specific case - Understand MIG and strategies to limit users' capabilities - Understand security implications and limit users' scopes - Interaction with IT department to implement a SSO authentication - Backup strategy for the VM running the Kubernetes controller - Complete migration of the management infrastructure to a separate machine: - ProxMox Hypervisor with automatic ZFS snapshots/backups - VyOS router VM providing NAT, pass-through of SRIOV interfaces for 10 Gbps Internet connectivity - Monitoring platform based on Zabbix and uptime-kuma - Documented infrastructure and usage both for internal and final users. ## Other activities related to KTH - 2023-2024: member of EECS PhD council - Main representative for SCS division - Involved in the "Kista move" committee - Member of the IT group - discussion CS department needs with IT department (both as SCS representative and PhD representative) - 2023-present: Station Manager @ THR - The radio amateur club of KTH. - Introduction to new potential members, and dissemination about the amateur radio world and the club history - Purchasing and setup of equipment for digital operation (a.k.a. the modern way of doing radio) - Logbook handling (self-hosted), LoTW, and QSL manager # Other activities - 2023-present: volunteer in Amprnet-AB/Amprnet.se - Deployment of a Zabbix monitoring system (via SNMP) - Documentation and instructions to reproduce the above - General "consulting" and helping - April 2022: volunteer in SSA annual meeting, handling some technicalities for the presenters - 2020-2022: Technical Director @ FLOX AB - Deployment of resources on a "home-brew cloud" - Designing of a solution to bring video streams from a drone to a tablet through Internet - Deployment of a home-brew solution to allow direct access to devices behind private IPs (via reverse tunneling and WireGuard) - Customization, building, and fixing of drones, featuring various additional sensors and communication devices - 3D modelling and printing of structural components to customize the drones - Development of a Raspberry-Pi based photo trap, and debugging of third-parties code - Development of a API service for an Android application backend (in Python with FastAPI) - 2020: Master thesis student @ Ericsson Research. Implementation and study of a monitoring system for an experimental 5G Core Network UPF.A - 2018: Bachelor thesis student @ ANS, DISI UNITN. Development of multi-stream functionalities in a P2P streaming system. - 2014-2016: OpenBdT @ Banca del tempo di Isola Vicentina. Development of a PHP application to coordinate the activities of a "time bank". Open Source. - 2014: Leonardo Da Vinci Project - 4 weeks work experience at Curry's PC World in LLandudno (Wales), a EU-driven mobility project. # Awards and recognitions - 2019: StartUp Lab 2019 @ UNITN: during the course, with my group we developed a business idea and product prototype, scoring the third place among 18 other projects. - 2017: Paolo Gobetti Award - Secondary School. "Filmare la storia" competition, Archivio Nazionale Cinematografico della Resistenza - Award obtained for a documentary named “Il viaggio di Genoveffa”, realized during the 2014-15 school year at I.T.T. Chilesotti. - Responsible for most of the documentary and technical production. - 2016: Lunacom Award: Contest organized by a local company to reward the final exam - obtained after the OpenBdT development. - 2012: Student of the year - internal nomination at my school. # Languages - English: fluent. - CEFR B2 - Cambridge FCE 2017 - Italian: native speaker. - Swedish: basic knowledge. - Internal KTH assessment: A1 (May 2023) # Technologies - GNU/Linux: everyday usage, system administration, hardening, maintenance, development, debugging and profiling tools. - Docker, Docker Compose, QEMU, ProxMox, Kubernetes (basic), Vagrant (basic), Dokku - Comfortable and productive with the Command Line Interface and remote accesses - Fluent in C, C++, Python. General knowledge of Java, PHP, JavaScript - Basic knowledge of common DBMS and Web programming languages - Basic knowledge of ARM, MIPS, and Intel assembly - LaTeX, Markdown, and Pandoc for technical writing (but not only) - Data analysis with Pandas and Numpy. Basic MatLab knowledge - High-speed networking best-practices, DPDK, RDMA, RoCE, OpenFlow - "practical" server management: physical installation, PCIe cards, RAID, network connectivity (up to 400Gbps), router and firewall management, BMC and Serial monitoring of enterprise machines. Troubleshooting and performance debugging. # On me I'm into Linux and Open Source from several years, I like the idea that what I make could be helpful for someone else. I have a very technical background, mainly focused on Computer Science. During my master degree I steered more on networking and more engineering topics, together with some new courses on entrepreneurship. I have been a doctoral student at KTH during the years 2020-2024, which led to a Licentiate of Engineering - a "swedish-only half-way research title to a PhD. The initial focus of the research project was on high-speed networking and how to improve it on commodity hardware, re-shaped later with more focus on GPUs and techniques to bring in, and out, data from GPUs in a fast and more efficient way. During these years I also worked with SmartNICs and programmable switches, helping to maintain the Lab's cluster running smoothly. I consider myself a proficient Linux user, both on personal devices and setting-up/maintaining servers, operating almost always through CLI and SSH connections. And as any programmer, I like to spend 10x more time to automatize something boring. I’m always eager to learn new things, fix problems by myself and get my hands dirty with new stuff. I recently get more involved within the radio amateur world, both for the sake of just doing it, to help a slowly aging community to stay alive, and to put in practice some technical knowledge I acquired during the years. This also includes some involvement with Amprnet Sverige - a local association aiming to build an alternative, resilient, Internet service that can help "when the rest can't". ## Why a plain text CV CVs are boring. And people are very opinionated on the formats. But all in all, what matters is the content, and here the content is presented in the simplest textual way as possible. Plus, there is no point of adding bells and whistles to something that would probably be pre-processed from some automatic tools. So let them process it without too much pain. And if you are reading this, think for a moment if a fancy looking CV is really better than a plain-text one. Maybe not. Maybe it's the content that matters? # Publications > All publications are usually listed on my website at https://girondi.net/pub/ or on Google Scholar at https://scholar.google.com/citations?user=s0B13rAAAAAJ - Toward GPU-centric Networking on Commodity Hardware - Massimo Girondi, Mariano Scazzariello, Gerald Q. Maguire Jr., and Dejan Kostić - EdgeSys 2024 - https://doi.org/10.1145/3642968.3654820 - https://girondi.net/pub/gpunetworking24-cc.pdf - Toward Highly-efficient GPU-centric Networking - Massimo Girondi. - Licentiate Thesis @ KTH, 2024 - https://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1844498&dswid=3545 - Packet Order Matters! Improving Application Performance by Deliberately Delaying Packets - Hamid Ghasemirahni, Tom Barbette, Georgios P. Katsikas, Alireza Farshin, Amir Roozbeh, Massimo Girondi, Marco Chiesa, Gerald Q. Maguire Jr., and Dejan Kostic - NSDI 2022 - https://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1609944 - High Speed Connection Tracking on Modern Servers - Massimo Girondi, Tom Barbette, and Marco Chiesa - IEEE HPSR 2021 - https://ieeexplore.ieee.org/document/9481841 - https://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1556104 - Efficient traffic monitoring in 5G Core Network - Massimo Girondi - Master Thesis @_KTH, 2020 - https://kth.diva-portal.org/smash/record.jsf?pid=diva2%3A1463793 - Comparison of flow classication methods for Load Balancing - Davide Brunello, Massimo Girondi, Elisabeth Mintchev, Omar Giordano, Devinoraya Radityapalma, and Marc Viñas - Technical report for the IK2200 Course at KTH - KTH, 2020 - https://girondi.net/pub/flowclass20.pdf - Multiflow distribution management for videoconference on a single PeerStreamer overlay - Massimo Girondi - Bachelor Tehsis @ UNITN, 2018 - Not available. In Italian, Original title: Gestione della distribuzione multiflusso per videoconferenza su un singolo overlay PeerStreamer