Hi, I'm Peter Xenopoulos.
I'm a Senior Research Scientist at NVIDIA. I build data and machine learning infrastructure for research, games, and sports.
Learn MoreAbout Me
Who Am I?
Research and engineering
At NVIDIA, I lead projects to build research tooling for capturing, storing, and annotating terabyte-scale multimedia data. I help the research group adopt CI/CD and containerized workflows and work with product, infrastructure, and legal teams to prepare prototypes for integration.
Before NVIDIA, I was Head of Quantitative Research at Novig, where I helped build its initial sports pricing systems. I led development of simulation models for sub-second pricing and delivered cloud pipelines that reconciled market data from nearly a dozen providers.
Earlier, I worked on speech recognition product analytics at Meta and sports analytics at Big League Advantage and the Philadelphia Phillies. I've also consulted for esports analytics websites.
FAQ
Research
Research Areas
Human Performance
I study how people see, move, and make decisions while playing games and using computers. I use tracking data and experiments to measure performance and understand what changes it.
AI & Machine Learning
I design experiments and model training pipelines for computer-use agents, synthetic data generation, and AI-generated content detection.
Games, Esports & Sports
I work with high-frequency tracking and event data from Counter-Strike and Deadlock, as well as baseball, basketball, American football, ice hockey, and soccer.
Open Source Tooling
I build parsers, analytics libraries, and datasets that help researchers and developers work with game replays. I also use coding agents to help migrate existing codebases. See my open-source projects.
Tools & Data
Tools & Data
Boon
pip install boon-deadlock
I built Boon to turn Deadlock replay files into match events, player state, and game stats. It provides Python bindings and a command-line interface and shares a Rust parsing core with Awpy. Boon has reached 85,000+ package downloads.
I built deadlock.nyc to let players analyze Deadlock replays directly in their browser. It uses Boon compiled to WebAssembly to parse files locally and offers tick-level playback and on-device win probability predictions from a graph attention network. The site reaches 3,000+ monthly unique visitors.
Awpy
pip install awpy
I created Awpy and previously led its maintainer team. The library parses Counter-Strike 2 replays in Rust and exposes match events, player state, and statistics through a Python API. It has reached 150,000+ downloads and 600+ GitHub stars.
Esports Trajectories and Actions (ESTA)
git clone https://github.com/pnxenopoulos/esta
I used Awpy to create ESTA, an open dataset of player actions and trajectories from 1,558 professional Counter-Strike: Global Offensive replays. It contains 8.6 million player actions and 7.9 million game frames in about 4 GB of compressed JSON.
Litebook
pip install litebook
Litebook is a limit order book implemented in Rust with a Python API.