Software

“Most Computer Science professors are not good programmers. There are exceptions, like Daniel Lemire, but they are rare.” (Casey Muratori)

I take the production of software seriously. You can find most of my software on GitHub.

Screenshot of a Twitter exchange. Damian Gryski: “Academic implementations are, with very rare exceptions, total junk and only one step above ‘works on my laptop’.” Kelly Sommers replies: “Not all. Most of @lemire papers come with great code, sometimes in multiple languages!” Damian Gryski answers: “@lemire is the very rare exception ;)”

Some noteworthy contributions:

Some of my blog posts led to improvements in widely used software.

Some of our research articles have also had notable impacts.

Recent Publications

You can find my work on arXiv, on Google Scholar, on DBLP, on the ACM Portal, on R Libre and elsewhere.

I regularly give industrial talks; they are often well received. My QCon San Francisco 2019 talk was outlined as a “best voted” talk with 98% of the audience giving it thumbs up; this is much higher than the average.

Projects

fastfloat

Fast routines for reading floating-point numbers

SIMDJSON

Parsing gigabytes of JSON per second

SIMDUTF

Unicode routines: billions of characters per second.

Roaring Bitmaps

Fast compressed bitmaps, widely used. (picture: Edge Earth)

Laboratory

We are lucky to have a fully equipped laboratory with a dedicated technician. We have a server farm that has been used worldwide for experiments in software performance (e.g., by researchers such as Agner Fog). We also have several powerful workstations and beautiful white boards!

Teaching

Undergraduate courses:

Graduate courses:

  • INF 6104 - Recherche d’informations et Web
  • INF 6107 - Web social

Programs:

Students

Marina Lopez presenting to a seminar room of colleagues seated around a large table with laptops, at Université TÉLUQ

A graduate in academic robes beside Daniel Lemire, in front of the Université TÉLUQ 2022 convocation backdrop

Some recent graduates, by degree and from most to least recent:

Ph.D.

Year Graduate Thesis
2025 Fatma Miladi
supervised with Valéry Psyché · dblp
Agents conversationnels pédagogiques basés sur l’IA générative pour améliorer l’apprentissage en ligne
Generative-AI pedagogical conversational agents for improving online learning
2024 François Lewis
supervised with Patrick Plante
Pertinence de l’ajout d’une composante sérieuse personnalisée à un jeu vidéo dédié à la rééducation en lecture d’élèves ayant des difficultés
On adding a personalized serious component to a video game for reading rehabilitation in students with learning difficulties
2023 Pierre Marie Ntang
supervised with Serge Robert · dblp
Visualiser pour comprendre : application à la programmation vectorielle
Visualizing to understand: an application to vector programming
2022 Gary Germeil
supervised with Richard Hotte
La crédibilité du comportement d’un personnage non-joueur dans un jeu de type cartes à collectionner
The credibility of non-player character behaviour in a collectible card game
2020 Tarek Khei
supervised with Richard Hotte; Director of AI and Software at Iristel
Établir les correspondances entre les artéfacts d’un système d’information
Establishing correspondences between the artifacts of an information system
2019 Xueping Dai
supervised with Li Zhen Cheng and Jean-Claude Mareschal
Caractérisation du bruit électromagnétique dans les tunnels miniers profonds et application de la méthode de débruitage
Characterizing electromagnetic noise in deep mining tunnels and applying a denoising method
2018 Erick Aokou Koffi
Data Architect at Metro
Approche systémique de la conscience de la situation pour la réduction des erreurs de décision en environnement complexe : cas des projets informatiques
A systemic approach to situation awareness for reducing decision errors in complex environments: the case of software projects
2018 Badis Merdaoui
supervised with Richard Hotte; IT Architect at Saputo
Simulation probabilistique d’acquisition des langues secondes
Probabilistic simulation of second-language acquisition
2017 Samy Chambi
supervised with Robert Godin; Software Engineer at Collective-i · dblp
Les index bitmap compressés
Compressed bitmap indexes
2016 Jing Li
supervised with Yuhong Yan · dblp
Full Solution Indexing and Efficient Compressed Graph Representation for Web Service Composition
2010 Hazel Webb
supervised with Owen Kaser; Instructor at UNB · dblp
Properties and Applications of Diamond Cubes

M.Sc. with thesis

Year Graduate Thesis
2026 Hana Hbaieb Application de la réalité mixte pour améliorer l’efficacité de la compréhension de la conception architecturale
Using mixed reality to improve how effectively architectural design is understood
2024 Nicolas Mathon Évaluation d’Apache Ozone et de son intégration du protocole de consensus RAFT avec la librairie Apache Ratis afin d’obtenir un système distribué fiable et cohérent
Evaluating Apache Ozone and its integration of the RAFT consensus protocol with the Apache Ratis library, for a reliable and consistent distributed system
2024 Jean Philippe Dionne
Governor General’s Gold Medal
Générateur de textes aléatoires automatiquement lemmatisés
A generator of random, automatically lemmatized texts
2023 Blandine Courcot
supervised with Nicolas Bélanger; Governor General’s Gold Medal · dblp
Suivi et modélisation du potentiel hydrique du sol dans un contexte de stress climatique
Monitoring and modelling soil water potential under climate stress
2023 Roger Guévin-Kamena Réglage fin par ensemble convergent de divers modèles transformers pour l’analyse du sentiment
Fine-tuning a convergent ensemble of transformer models for sentiment analysis
2022 Carl Verret
Governor General’s Gold Medal
Analyse d’un nouvel algorithme et conception d’une librairie en C# permettant la conversion des nombres décimaux en nombres à virgule flottante
Analysis of a new algorithm and design of a C# library for converting decimal numbers to floating-point numbers
2022 Marina Lopez
supervised with Nicolas Bélanger
Proposition d’une plateforme de gestion des données de recherche et son adoption par les chercheurs en environnement et informatique dans le contexte de la recherche en foresterie au Québec
A proposed research-data management platform and its adoption by environmental and computer science researchers in Quebec forestry research
2022 Jean-François Grenier
GitHub · blog
Segmentation sémantique par réseaux neuronaux des espèces indésirables dans la culture du bleuet sauvage
Neural-network semantic segmentation of unwanted species in wild blueberry cultivation
2021 Carine Croteau
Computer Science Professor at cégep de Victoriaville · GitHub
Recherche et analyse de solutions performantes pour le traitement de fichiers JSON dans un langage de haut niveau
Investigating high-performance solutions for processing JSON files in a high-level language
2020 Zeeshan Ahmed
Data Engineer at Four Eyes Financial · GitHub
Preserving Consumer DNA Privacy For Finding Relatives In A Malicious Two Party Computation
2013 Ikhtear Sharif
Security Technical Specialist at IBM
Performance evaluation of fast integer compression techniques
2013 Djamel Garar Compression dans les entrepôts de données pour l’amélioration des performances
Compression in data warehouses to improve performance
2012 Eduardo Gutarra
Senior Associate at JPMorgan Chase · dblp
Multi-column Bitmap Indexing
2006 Steven Keith
Application Architect at Innovatia Inc. · dblp
Efficient Storage Methods for a Literary Data Warehouse

M.Sc. without thesis

A selection of students.

Year Graduate
2025 Antoine Tohme
2024 Ernso Decelien
2023 Zakia Chaibeddra
Alexander-Graham-Bell scholarship
2022 Nicolas Boulet-Lavoie
2020 Achille Alain Kamdem Djoko
developer at Bell Canada
2020 Hakim Berraki
Solution Designer at Société de transport de Montréal
2020 Abdelkader Kaddour Brahim
2018 Massamba Fall
Senior Analyst at Promutuel · GitHub
2017 Maxime Boisvert
Production Engineering Manager at Shopify
2017 Shany Carle
Computer Science Professor at cégep de Victoriaville

Pierre Marie Ntang in graduation robes beside Daniel Lemire, in front of the Université TÉLUQ 2024 convocation backdrop

Some alumni:

Current Ph.D. students:

  • Guy Jobin (supervised with Dragos Vieru)
  • Khargou Jalal
  • Sofiane Faïdi
  • Faten Slama
  • William Ouedraogo
  • Jean-Vincent Bogui
  • Aubrey Trask
  • Ali Lienaux

Current M.Sc. students:

Recent postdocs:

Recent research assistants (undergraduate):

  • Nick Nuon, Summer 2023 and 2024, recipient of an NSERC Undergraduate Student Research Award.
  • Nicolas Boyer, Summer 2021 and 2022, recipient of an NSERC Undergraduate Student Research Award. Nicolas is a software developer at Avid.
  • David Favreau, Fall 2021.
  • Yoann Le Rouzic, Summer 2020. GitHub
  • Io Andes Daza-Dillon, Summer 2019, recipient of an NSERC Undergraduate Student Research Award. Io is consultant at Savoir-faire Linux. GitHub
  • Jérémie Piotte, Fall 2018 and 2019, recipient of an NSERC Undergraduate Student Research Award. Jérémie is Senior Manager (Machine Learning Engineering) at Unity Technologies. GitHub
  • Niko Girardelli, Winter 2018. GitHub

Recent research guests:

Mentoring

Azim Afroozeh successfully defended his Ph.D. thesis.

CONTINUE READING — Azim Afroozeh is a new doctor!

Bérenger Bramas passed his HDR.

CONTINUE READING — Bérenger Bramas passed his HDR!

Guy Carlos Tamkodjou Tchio is a new doctor!

CONTINUE READING — Guy Carlos Tamkodjou Tchio is a new doctor!

Lockman Saleh successfully defended his Ph.D. thesis.

CONTINUE READING — Lockman Saleh is a new doctor!

Fatma Miladi successfully defended her Ph.D. thesis.

CONTINUE READING — Fatma Miladi is a new doctor!

Services

I am editor of the Software: Practice and Experience journal (Wiley) since 2021. This journal was founded in 1971 and it published many central results in computer science.

Prior to the 2020 events, I was the organizer of an ongoing series of workshops open to the public: the technolab workshops and the tribalab workshops. In 2019, I was the chair of EDA 2019 (Business Intelligence & Big Data) held in October at Montpellier, France. In 2018, I was recognized by the journal Software: Practice and Experience as a distinguished referee for my “insightful, careful, constructive and timely reviews”. In June 2018, I participated in the Dagstuhl Seminar 18251: Database Architectures for Modern Hardware. I was an associate editor of the computer science section of the Heliyon journal (Elsevier) from 2015 to 2020.

I recently served on the following program committees:

  • WSDM 2027: The 20th International Conference on Web Search and Data Mining (February 15-17, 2027, in Hong Kong, China) – Senior Member
  • CIKM 2026: 34th ACM International Conference on Information and Knowledge (November 7-11, 2026 in Rome Italy) – Senior Member
  • ECMLPKDD 2026: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 7-11, 2026 in Naples Italy)
  • WSDM 2026: The Nineteenth International Conference on Web Search and Data Mining (March 10-14, 2026, in Boise, Idaho, USA) – Senior Member
  • CIKM 2025: 33rd ACM International Conference on Information and Knowledge (October 21-25, 2025 in Boise, Idaho) – Senior Member
  • BIGDACI 2025: 10th International Conference on Big Data Analytics, Data Mining and Computational Intelligence (23-25 July 2025 in Lisbon, Portugal)
  • SIGIR 2025: The 48th International ACM SIGIR Conference on Research and Development in Information Retrieval (13-18 July 2025 in Padua, Italy)
  • ECMLPKDD 2025: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (15-19 September 2025, in Oporto, Portugal)
  • WSDM 2025: The Eighteenth International Conference on Web Search and Data Mining (March 10-14, 2025, in Hannover, Germany) – Senior Member
  • ECMLPKDD 2024: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 9-13, 2023, in Vilnius, Lithuania)
  • SIGIR 2024: The 47th International ACM SIGIR Conference on Research and Development in Information Retrieval (Washington D.C., USA, 14-18 July, 2024).
  • ECMLPKDD 2023: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (September 18-22, 2023, in Turin, Italy)
  • SIGKDD 2023: 29th SIGKDD Conference on Knowledge Discovery and Data Mining (Long Beach, California, August 6 2023)
  • SIGIR 2023: The 46th International ACM SIGIR Conference on Research and Development in Information Retrieval (Taiwan, July 23rd to 27th, 2023).
  • EDA 2022: 18e journées EDA Business Intelligence and Big Data (Clermont-Ferrand, France, October 27-28 2022)
  • SIGIR 2022: The 45th International ACM SIGIR Conference on Research and Development in Information Retrieval (Madrid, Spain, July 11-15, 2022)
  • DOLAP 2022: 24th International Workshop on Design, Optimization, Languages and Analytical Processing of Big Data
  • WSDM 2022 15th ACM International WSDM Conference (Phoenix, AZ, USA, Feb. 2nd to March 4th, 2022)
  • ASD 2021: 13th edition of the Conference on Advances in the Science of Data (Blida, Algeria, 24-25 October 2021)
  • CIKM 2021: 30th ACM International Conference on Information and Knowledge (Gold Coast, Queensland, Australia, 1-5 November 2021)
  • ECML/PKDD 21: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (Bilbao, Spain, 13-17 September)
  • EDA 2021: 17e journées EDA Business Intelligence and Big Data (1-2 July 2021)
  • SIGKDD 2021: 27th International Conference on Knowledge Discovery and Data Mining (Singapore, Aug 14-18, 2021)
  • SIGIR 2021: 44th International ACM SIGIR Conference on Research and Development in Information Retrieval
  • DOLAP 2021: 23rd International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data
  • WSDM 2021: 14th ACM International WSDM Conference (Jerusalem, Israel, March 8-12, 2021)
  • EDML20: Second Workshop on Evaluation and Experimental Design
  • RecSys 2020: 14th ACM Recommender Systems Conference (Rio de Janeiro, Brazil)
  • BBIGAP'2020: Second International Workshop for Business Intelligence & Big Data Applications
  • ECML-PKDD 2020: European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (Area Chair)
  • CIKM 2020: 29th ACM International Conference on Information and Knowledge
  • DaWak 2020: 22nd International Conference on Big Data Analytics and Knowledge Discovery
  • SIGIR 2020: 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval
  • DOLAP 2020: 22nd International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data
  • ADBIS 2020: 24th European Conference on Advances in Databases and Information Systems (August 25-28: Lyon, France)
  • CIKM 2019: 28th ACM International Conference on Information and Knowledge Management (Nov 3-7, 2019: Beijing, China)
  • RecSys 2019: 13th ACM Recommender Systems Conference (September 2019; Copenhagen, Denmark)
  • BBigAP 2019: 1st International Workshop on BI & Big Data applications, In conjunction with the 23rd European Conference on Advances in Databases and Information Systems (ADBIS 2019) (September 8, 2019; Bled, Slovenia)
  • DOLAP 2019 - 21st International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data (March 26, 2019; Lisbon, Portugal)
  • CIKM 2018 - Twenty-Seventh ACM International Conference on Information and Knowledge Management (October 22-26, 2018; Turin, Italy)
  • ASD 2018 - 12th edition of the Conference on Advances of Decisional Systems : Big data & Applications (May 2018; Marrakech, Morocco)
  • WABiD* 2018 - 1st International Workshop on Advances on Big Data Management, Analytics and Security (September 2018; Budapest, Hungary)
  • RecSys 2018 - 12th ACM Recommender Systems Conference (October 2018; Vancouver, Canada)
  • WWW 2018 - Twenty-seventh International WWW Conference (April 23-27 2018; Lyon, France)
  • DOLAP 2018 - 20th International Workshop On Design, Optimization, Languages and Analytical Processing of Big Data (March 26–29, 2018; Vienna, Austria)
  • CIKM 2017 - Twenty-Sixth ACM International Conference on Information and Knowledge Management (November 6-10, 2017; Singapore)
  • SPIRE 2017 - 24th International Symposium on String Processing and Information Retrieval (September 26-29, 2017; Palermo, Italy)

I was an external referee for the following Ph.D. students:

  • Azim Afroozeh at Vrije Universiteit Amsterdam (2026) – supervised by Peter Boncz.
  • Lockman Saleh at UQAM (2025) - supervised by Hafedh Mili and Mounir Boukadoum.
  • Jaël Champagne Gareau at UQAM (2024) - supervised by Éric Beaudry.
  • Nathan Maurice at la Sorbonne, France (2024) - supervised by Lionel Lacassagne.
  • Nigel Medforth at Simon Fraser University (2022) - supervised by Robert Cameron.
  • Luca Versari at Pisa University (2021) - supervised by Roberto Grossi.
  • Kareem El Gebaly at Waterloo University (2018) - supervised by Jimmy Lin, Lukasz Golab and Ashraf Aboulnaga.
  • Mohammed Shaaban at Université Pierre et Marie Curie (2017) - supervised by Patrick Garda.
  • Mehdi Boukhechba at UQAC (2016) - supervised by Abdenour Bouzouane and Charles Gouin-Vallerand.
  • Hicham Assoudi at UQAM (2016) - supervised by Hakim Lounis.
  • Khaled Dehdouh at Lyon 2 (2015) - supervised by Omar Boussaid.
  • Martin Leginus at Aalborg University (2015) - supervised by Peter Dolog.
  • Ahmad Taleb at Université Concordia (2011) - supervised by Todd Eavis.

I was an external referee for the following M.Sc. students:

  • Benjamin Lapointe-Pinel from UQAR, Canada (2024) - supervised by Steven Pigeon.

In 2020, I was one of two external reviewers for the M.Sc. in computer science program assessment at UQAC.

I served as a committee member for several funding bodies:

  • FRQNT: review committee 03F (theoretical computer science) since 2007.
  • FRQNT: review committee 309 (team projects in computer science) since 2006.
  • NSERC: Research Tools and Instruments Grants Program (2012-2015)
  • NSERC: Computer Science Evaluation Group (EG 1507) for the Discovery Grants Program, comité 1507 (2018-2021), co-chair in 2019-2020 and 2020-2021.
  • NSERC: Program Fit Advisor for Discovery Horizons (2022)

In 2022, I was a member of the university sub-committee on engineering and information technologies, within the committee on the implementation of the measures of the Quebec government’s Operation Manpower.

Books

English

Mastering Programming: From Testing to Performance in Go

Cover of Mastering Programming: From Testing to Performance in Go

Faster Than You Think: Essays on Thinking Better and Building Faster

Cover of Faster Than You Think: Essays on Thinking Better and Building Faster

French

Java pas à pas

Cover of Java pas à pas

Programmation avec Python: des jeux au Web

Cover of Programmation avec Python: des jeux au Web

La science des données: Théorie et applications avec R et Python

Cover of La science des données: Théorie et applications avec R et Python

Maîtriser la programmation: Des tests à la performance en Go

Cover of Maîtriser la programmation: Des tests à la performance en Go

Media

Articles and interviews

Click on the picture for a high resolution version.

D. Lemire’s picture

D. Lemire’s picture

Consulting

I have worked as a consultant since 1998. As a consultant, I built custom mission-critical software, I have solved deep performance issues, I have offered specialized training sessions, I designed novel algorithms. I love working with industry on important problems. I offer the following commercial services.

  • Conferences. I am happy to speak to your team about recent advances in software or other relevant topics. My conferences are well received. My rates vary from $5,000 to $15,000 per engagement, depending on the duration, format (virtual or in person), and travel expenses, which are generally covered separately.
  • Training. I provide exclusive and high-quality advanced training for your team. For corporate training sessions in software engineering, my rates are between $3,000 and $5,000 per day, depending on customization, duration (half-day or full day), and the number of participants.
  • Consultation. If you have specific problems in your company, I will be happy to come and help you. My consulting fees are $400 per hour, with additional fees for travel. When possible, I prefer to offer flat fee services (e.g., $5,000).
  • Sponsored open-source software. Some of my open-source work has been sponsored by private companies and developed according to their needs. Sponsorships for open-source projects can be structured in monthly levels (for example, $100 for bronze, $500 for gold) or in one-time contributions for specific features, ranging from $1,000 to $10,000 or more, depending on the scope. I encourage businesses to sponsor me on GitHub especially if they benefit from my work. The top sponsorship tiers on GitHub are meant for businesses and come with specific benefits.

Contact

  • [email protected]
  • University of Quebec (TELUQ), 5800 Saint-Denis, Office 1105, Montreal (Quebec) H2S 3L5 Canada
  • email for appointment