Avviso: da agosto 2025 questa pagina non verrà più aggiornata perché mi sono trasferito alla Scuola Sant'Anna.

Dipartimento d'informatica

Università di Pisa

The logotype of unipi with the cherub.

Francesco Tosoni, dott. ric.

Francesco Tosoni
Foto dello Studio Schloen, Colonia.

Acube Lab


 P.zza Martiri della Libertà 33, 56127 Pisa PI, Italia

  Complesso edilizio Sede Centrale

  francesco◦tosoni🐌di◦unipi◦it

Ex indirizzo:
L.go B. Pontecorvo 3, 56127 Pisa PI, Italia
Polo Fibonacci, edificio C, piano secondo, stanza 308


Sono un algoritmista, specializzato principalmente nella compressione dati lossless. Da luglio 2024, lavoro all'ottimizzazione della compressione e dell'indicizzazione efficiente di archivi di codice di grandi dimensioni in collaborazione col team di Software Heritage, che include Roberto di Cosmo, David Douard, Martin Kirchgessner e Stefano Zacchiroli. Nella mia tesi di dottorato ho indagato formati compressi per matrici e strutture trie. Ho poi esplorato varî formati di matrici sparse che supportano moltiplicazioni matrice-vettore (SpMV) nel dominio compresso, con particolare attenzione all'efficienza energetica.

Per chi ha familiarità coll'IPA, il mio nome si pronuncia: [fraŋ'ʧesko to'zoːni].

Formazione

Ho conseguito un Dottorato di ricerca in Informatica Click here to download a PDF document. presso l'Università di Pisa, sotto la supervisione dei proff. P. Ferragina e G. Manzini. La mia tesi di dottorato, intitolata Computation-friendly Compression of Matrices and Tries, si è focalizzata sulle tecniche di compressione dati efficienti. Dal 2019 sono membro dell'Acube Laboratory (A³, algoritmi avanzati e applicazioni), diretto dal professor P. Ferragina.

I miei interessi di ricerca includono la compressione dati lossless, l'indicizzazione di stringhe e la stringologia in genere, e l'analisi dei megadati.

Ho conseguito una Laurea in Ingegneria Informatica ed Elettronica Click here to download a PDF document. presso l'Università di Perugia. Ho poi proseguito gli studi all'Università di Pisa, conseguendo nel 2020 una Laurea Magistrale in Informatica e Networking Click here to download a PDF document. nell'àmbito di un programma congiunto con la Scuola Superiore Sant’Anna. La mia tesi di Laurea magistrale, Algorithms and Data Structures for Efficient Ride-Sharing Platforms, ha vinto il premio Con.Scienze 2020 come migliore tesi.

Nel 2020, ho vinto una borsa di studio e di ricerca su «Algoritmi e strutture dati per piattaforme di mobilità urbana» presso l'Università di Pisa. Nello stesso anno, ho ottenuto l'abilitazione per l'iscrizione all'albo degl'ingegneri (sezione A, Ingegneria dell'Informazione).

Dall'8 settembre al 20 dicembre 2022, sono stato un ricercatore in visita presso il laboratorio del professor Gonzalo Navarro all'Università del Cile a Santiago. A luglio 2025, sono stato un in visita di ricerca presso la sede di Software Heritage (Inria, Parigi), co-fondata da Roberto di Cosmo.

Pubblicazioni

2025

  • j4 F. Tosoni, P. Bille, V. Brunacci, A. De Angelis, P. Ferragina, e G. Manzini. Toward Greener Matrix Operations by Lossless Compressed Formats, IEEE Access, doi: 10.1109/ACCESS.2025.3555119.

2024

  • b1 F. Tosoni. Computation-friendly compression of matrices and tries, tesi dottorale, Università di Pisa, link permanente: etd.adm.unipi.it/t/etd-04182024-175520.
  • j3 A. Boffa, P. Ferragina, F. Tosoni, e G. Vinciguerra. CoCo-trie: Data-aware compression and indexing of strings, Information Systems (IS), doi: 10.1016/j.is.2023.102316.

2022

  • c1 A. Boffa, P. Ferragina, F. Tosoni, e G. Vinciguerra. Compressed String Dictionaries via Data-Aware Subtrie Compaction, 29th International Symposium on String Processing and Information Retrieval (SPIRE 2022), doi: 10.1007/978-3-031-20643-6_17.
  • j2 P. Ferragina, G. Manzini, T. Gagie, D. Köppl, G. Navarro, M. Striani, e F. Tosoni. Improving Matrix-vector Multiplication via Lossless Grammar-Compressed Matrices, Proceedings of the VLDB Endowment (PVLDB), 15(10), 2175 - 2187, 2022, doi: 10.14778/3547305.3547321.
  • j1 F. Tosoni, P. Ferragina, A. Marino, G. Resta, e P. Santi, Locality Filtering for Efficient Ride Sharing Platforms, IEEE Transactions on Intelligent Transportation Systems (IEEE TITS), doi: 10.1109/TITS.2021.3072830.

Premi e riconoscimenti

Scuola Superiore Sant'Anna — Miglior laureato (Laurea magistrale in Computer Science e Networking)

  • Classificato 2° nella coorte (2017-2018)
  • Media voti alta
  • Completamento più rapido

con.Scienze — Premio Nazionale Miglior Tesi di Laurea Magistrale 2020

  • Selezionato tra tutte le università tecniche italiane
  • Coorte agosto 2019 - luglio 2020

Github — Contributore Arctic Code Vault

HackTheAlps – #WeAgainstVirus 2020, 3° Premio

  • Premiato col 3° posto per aver sviluppato il prototipo dell'applicazione Pharma-Q.
  • HackTheAlps si è concentrato sulla proposta di soluzioni software e idee per supportare le comunità locali durante l'emergenza COVID-19. Il nostro team ha sviluppato un servizio web basato su IA per monitorare la lunghezza delle code nelle farmacie di Bozen/Bolzano, utilizzando dati raccolti tramite telecamere di sorveglianza.
Team: Daniele Gadler, Tajammul Mustafa, Francesco Tosoni

Finalista First Ascent 2018

  • Selezionato tra oltre 400 candidati per partecipare a First Ascent 2018.
  • FA18 (Copenaghen, Danimarca) è stato un evento di coding challenge organizzato e sponsorizzato da Bending Spoons. L'evento ha riunito 20 dei migliori studenti italiani in àmbito tecnologico provenienti da università in Italia (Bologna, Cagliari, Padova, Pisa, Roma, Trento), Inghilterra (Cambridge, Oxford, Imperial College London) e Germania (TUM).

Artefatti di Codice

Nota: Per ogni artefatto di codice, sono riportate le pubblicazioni associate (c1, j1, j2, j3, and j4) in cui il codice è stato utilizzato per le valutazioni sperimentali.

Strumento ppc-swh-rocksdb

Legge in modo efficiente grandi set di dati di codice sorgente in formato Parquet utilizzando una soluzione PPC su RocksDB. Ha raggiunto un throughput d'inserimento di oltre 100 MiB/s e una compressione fino al 10% con zstd.

j4 green-lossless-spmv

Implementazione di Green Lossless Sparse Matrix-Vector Multiplication (SpMV). Si concentra sulle tecniche di compressione lossless che ottimizzano spazio, tempo ed energia per le moltiplicazioni tra formati di matrici binarie o ternarie e vettori a valori reali.

j4 zuckerli

Riadattato il formato di matrice compressa Zuckerli di Google per eseguire kernel di moltiplicazione matrice-vettore e calcoli PageRank ottimizzati per il calcolo.

c1, j3 CoCo-trie

Una struttura dati a trie «data-aware» per l'indicizzazione e la compressione d'insiemi di stringhe, sviluppata dal laboratorio A³. Implementa il collassamento di sotto-alberi basato su principi e la selezione di uno schema di codifica ottimale per minimizzare lo spazio.

j2 mm-repair

Implementazione di moltiplicazione di matrici per matrici compresse con RePair. Metodi di calcolo efficienti per matrici compresse utilizzando tecniche di compressione basate su grammatica.

Strumento Watermark

Implementa una versione C++ multi-thread e data-parallel basata su thread POSIX (pthreads) e meccanismi fork-join, e una versione migliorata con FastFlow di un'applicazione che applica una filigrana digitale a un'immagine. Include strumenti per la valutazione delle prestazioni e la visualizzazione delle statistiche temporali. Il repository ha ricevuto il badge «Arctic Code Vault Contributor» di GitHub nell'àmbito del Programma di Archiviazione di GitHub del 2020.

Strumento Laboratorio PCAP

Contiene esercizi in C/C++ che dimostrano l'uso della libreria libpcap per la cattura del traffico di rete. Le funzionalità includono la stampa dei metadati dei pacchetti, l'implementazione di un RPC stateful per il conteggio dei pacchetti e l'identificazione dei pacchetti IP e TCP con i loro indirizzi sorgente/destinazione.

Strumento BeepBeep

Un'applicazione basata su microservizi per la gestione di sfide basate sui dati di Strava. Consente agli utenti di creare, controllare, completare ed eliminare sfide, con regole specifiche per la vittoria (es. distanza maggiore, velocità superiore).

Componenti correlati:

  • BeepBeep-dataservice gestisce le operazioni sui dati principali. (GitHub)
  • BeepBeep-challenges gestisce la logica e le funzionalità relative alle sfide degli utenti. (GitHub)
  • BeepBeep-statistics elabora e fornisce statistiche sugli utenti. (GitHub)
  • BeepBeep-training-objectives gestisce gli obiettivi di allenamento. (GitHub)
  • BeepBeep-API-gateway funge da punto d'ingresso per le richieste esterne ai microservizi. (GitHub)
  • BeepBeep-emailer gestisce le notifiche via email. (GitHub)
  • BeepBeep-data-pump responsabile dell'ingestione o del trasferimento dei dati. (GitHub)

Strumento We Against Virus — PharmaQ

Un prototipo per la coda in farmacia che ha ottenuto il 3° posto nell'hackathon #WeAgainstVirus. Questo portale web basato su Flask ha permesso agli utenti di caricare immagini dai loro telefoni, che venivano poi automaticamente elaborate per rilevare e visualizzare il numero di clienti in coda in una farmacia, utilizzando l'API di Nanonetes per il rilevamento delle persone. Integra un database locale e un'interfaccia Google Maps.

Evento Wikimedia Hackathon 2025

  • Palermo, Italy | 14 —16 Mar 2025
  • Ha contribuito ai miglioramenti tecnici per Wikipedia e i progetti correlati:

Contributi:

  • Rilevamento automatico dell'ortografia per il Template F: Ottimizzato un template di Wikipedia in lingua lombarda per rilevare automaticamente l'ortografia degli articoli, eliminando la configurazione manuale. (Ha permesso il rendering dinamico per le varianti linguistiche regionali)
  • Ridimensionamento intelligente delle immagini: Script Python che sfrutta le API REST per standardizzare le dimensioni delle immagini negli articoli, migliorando l'estetica della pagina. (Ha ridotto le incoerenze visive tramite il ridimensionamento proporzionale automatico)

Strumento Wikimedia per i Tag di Traduzione

Ha contribuito con un'applicazione web, originariamente sviluppata da Gopa Vasanth (Indic Wikimedia Technical Committee), per i progetti Wikimedia per automatizzare l'inserimento dei tag di traduzione tramite il parsing del wikicode. (La pull request è attualmente in fase di revisione e si prevede che venga unita a breve.)

Borse di Studio e Assegni di Ricerca

Nota: Per ogni borsa o assegno, sono riportate le pubblicazioni associate (c1, j1, j2, j3, and j4) prodotte come risultato.

Assegno di Ricerca Post-Dottorato

  • Progetto in collaborazione con Software Heritage
  • Luglio 2024 — Giugno 2025
  • Università di Pisa, Italia

Ricerca condotta presso l'Università di Pisa, su tecniche di compressione e indicizzazione parallele e I/O-efficienti per grandi archivi di codice sorgente. Ho collaborato con i fondatori Roberto di Cosmo e Stefano Zacchiroli e altri membri del team Software Heritage.

Borsa di Dottorato

  • Dottorato di Ricerca in Informatica, 36° ciclo
  • Novembre 2020 — Ottobre 2023
  • Università di Pisa

Beneficiario di una borsa di ricerca triennale per il Dottorato di ricerca dall'Università di Pisa (Dipartimento di Informatica). (c1, j1, j2, j3)

Assegno di Ricerca

  • Citypost S.p.A.
  • Giugno — Ottobre 2020
  • Università di Pisa

Titolo: Algorithms and Data Structures for Urban Mobility Platforms. Durata: cinque mesi. Finanziamento: Citypost S.p.A. Ricerca su soluzioni algoritmiche basate su grafi per problemi di routing dei veicoli e mobilità, nell'àmbito della collaborazione di ricerca 2018-2020 del laboratorio Acube.

Partecipazione a progetti [inter]nazionali

Nota: Per ogni progetto, sono riportate le pubblicazioni associate (c1, j1, j2, j3, and j4) prodotte come risultato.

NextGenerationEU—Piano Nazionale di Ripresa e Resilienza (PNRR)

  • SoBigData.it-Strengthening the Italian RI for Social Mining and Big Data Analytics — Bando (3264 del 28/12/2021)
  • 2022 —in corso
  • Finanziamento IR0000013

Finanziamento per il progetto «SoBigData.it-Strengthening the Italian RI for Social Mining and Big Data Analytics».

Pubblicazioni associate: (j3, j4)

Unione Europea-NextGenerationEU-PNRR

  • ICSC-Centro Nazionale di Ricerca in High-Performance Computing, Big Data and Quantum Computing
  • 2022 —in corso
  • Spoke «Future HPC and BigData»

Finanziamento per lo Spoke «Future HPC and BigData».

Pubblicazioni associate: (j3, j4)

Programma Unione Europea-Horizon 2020

  • SoBigData++: Infrastruttura Integrata Europea per il Social Mining e l'Analisi dei Big Data
  • 2020 —in corso
  • Finanziamento 871042

Finanziato attraverso il Programma «INFRAIA-01-2018-2019—Integrating Activities for Advanced Communities».

Pubblicazioni associate: (j1, j3, j4)

Programma Unione Europea-Horizon 2020

  • HumanE AI Network
  • 2020 —in corso
  • Finanziamento 952026

Finanziamento tramite il progetto «HumanE AI Network».

Pubblicazioni associate: (j1)

NextGenerationEU – PNRR / Progetto PRIN MUR

  • Strutture Dati e Algoritmi Multicriterio: Dagli Indici Compattati a quelli Appresi e Oltre
  • 2019–2023
  • Finanziamento n. 2017WR7SHH

Finanziamento dal Ministero dell'Università e della Ricerca (MUR) nell'àmbito del programma «Progetti di Rilevante Interesse Nazionale» (PRIN) per il progetto «Strutture Dati e Algoritmi Multicriterio». Ricerca estesa che include indici compattati e appresi e aree correlate.

Pubblicazioni associate: (j1, j3)

Finanziamento MIT-UniPI

  • Utilizzo della Compressione dei Grafi per il Calcolo del Percorso Più Breve nella Mobilità Urbana On-Demand
  • 2019–2021

Finanziamento per «Utilizzo della Compressione dei Grafi per il Calcolo del Percorso Più Breve nella Mobilità Urbana On-Demand».

Pubblicazioni associate: (j2)

Periodi di ricerca all'estero

Ricercatore in visita

  • Software Heritage, Inria
  • 1 Luglio — 31 Luglio 2025
  • Parigi, Francia

Collaborazione col team di Software Heritage sulla compressione efficiente del codice per lo storage e il recupero (formato shard, sistema di caching da Terabyte), specificamente collegata al progetto CodeCommons supervisionato dai proff. Roberto Di Cosmo e Stefano Zacchiroli. Questa visita ha l'obiettivo di rafforzare la collaborazione esistente e applicare la ricerca direttamente al vasto archivio di codice sorgente di Software Heritage.

Dottorando in visita

  • Università del Cile
  • Sem. I, A.A. 22/23
  • Santiago del Cile

Soggiorno di tre mesi presso il laboratorio diretto dal prof. Gonzalo Navarro. Ho lavorato su applicazioni della struttura dati k²-tree per lo storage scalabile e le operazioni su grafi ampi ma sparsi.

Tirocini e stage

Ricerca e sviluppo software (Software Heritage)

  • Inria — Software Heritage
  • Luglio 2025
  • Parigi, Francia

Collaborazione di ricerca focalizzata sulla compressione efficiente del codice e sui sistemi scalabili di recupero dati per Software Heritage, un archivio globale di codice sorgente di primo piano. Ho sviluppato e ottimizzato soluzioni per sistemi di caching su scala Terabyte e per l'ottimizzazione del formato shard, affrontando direttamente le sfide nella gestione di vasti archivi di codice sorgente. Questo lavoro, condotto all'interno del progetto CodeCommons, aveva l'obiettivo di aumentare le prestazioni e ridurre i costi della conservazione e dell'accessibilità del software su larga scala. Focalizzato sull'applicazione di algoritmi di compressione avanzati a dati reali su scala industriale, promuovendo l'innovazione nella gestione dei dati per il patrimonio digitale.

Partecipante su invito

  • Bending Spoons
  • Settembre 2018
  • Copenaghen, Danimarca

Selezionato tra i 20 migliori studenti di tecnologia italiani da un gruppo di oltre 400 candidati per partecipare a questo evento di sfide di codice. Ho interagito direttamente con i membri del team e i fondatori di Bending Spoons, ottenendo una visione approfondita del settore.

tirocinante

  • EPLASS GmbH
  • Agosto 2014
  • Würzburg, Germania

Ho lavorato con C# presso un'azienda di software basata su internet specializzata in collaborazioni internazionali.

tirocinante

  • Flyeralarm GmbH
  • Agosto 2014
  • Würzburg, Germania

Ho supportato le operazioni inter-dipartimentali presso un'azienda di stampa online paneuropea.

Partecipazione a conferenze

Simposio Simposio e Vertice Software Heritage 2025

  • Sede dell'UNESCO
  • 29 Gennaio 2025
  • Parigi, Francia

Ho interagito con i leader di UNESCO, Inria e Software Heritage, partecipando a discussioni e panel su argomenti critici tra cui la cybersecurity e la regolamentazione (ad es. il Cyber Resilience Act dell'UE), l'IA aperta e trasparente (con approfondimenti dall'EU AI Office, IBM Research, Open Source Initiative), la scienza aperta (in linea con la Raccomandazione dell'UNESCO sulla Scienza Aperta) e la conservazione culturale del software come patrimonio digitale.

Seminario Da Software Heritage a Code Commons: una visione per un'IA trasparente e responsabile nella formazione di modelli basati su codice

  • Scuola Superiore Sant'Anna
  • 12 Dicembre 2024
  • Scuola Sant'Anna

Ho partecipato a un seminario presentato da Roberto Di Cosmo (Università di Paris Cité, fondatore di SWH), tenutosi al Palazzo Pilo Boyl, Scuola Superiore Sant'Anna, Pisa. Ho ottenuto una visione approfondita delle sfide etiche e tecniche legate all'uso di codebase aperte per l'addestramento di modelli di IA, sottolineando l'importanza della trasparenza, della responsabilità e del ruolo di SWH nel promuovere gli obiettivi di CodeCommons per uno sviluppo responsabile dell'IA.

Conferenza Articolo a conferenza: «Compressed String Dictionaries via Data-Aware Subtrie Compaction»

  • SPIRE '22: 29° Simposio Internazionale sull'Elaborazione delle Stringhe e il Recupero delle Informazioni
  • 8 —10 Nov 2022
  • Concepción, Cile

Ho partecipato in presenza a SPIRE '22, dove il mio gruppo di ricerca ha contribuito coll'articolo della conferenza (c1).

ultimo aggiornamento: 18 agosto '25