CV - CV

Curriculum Vitae

Gleb Karpov

Download PDF

Education

Master's Degree in Applied Mathematics and Physics

Moscow Institute of Physics and Technology (MIPT) | 2015 - 2017

Faculty of Radio Engineering and Cybernetics, Base Department - Institute for Information Transmission Problems of the Russian Academy of Sciences

Master's Degree in Mathematics and Computer Science

Skolkovo Institute of Science and Technology (Skoltech) | 2016 - 2018

Bachelor's Degree in Applied Mathematics and Physics

Moscow Institute of Physics and Technology (MIPT) | 2011 - 2015

Experience

Research Engineer

Skolkovo Institute of Science and Technology (Skoltech) | 2019 - Present

Visiting Researcher

Fraunhofer ITWM, Germany | October - November 2019

Research on methods and development of algorithms for finding D-optimal experimental designs. Application to real-world data from chemical engineering as part of an international collaboration.

Visiting Lecturer

Faculty of Computer Science, HSE University | September 2024 - Present

Teaching lectures and seminars for "Probability Theory and Mathematical Statistics" and "Linear Algebra" courses in the Master's program "Master in Data Science" in Russian and English.

Visiting Lecturer

Graduate School of Business, HSE University | April 2021 - Present

Teaching lectures and seminars for "Probability Theory and Mathematical Statistics" course across various educational programs at the Graduate School of Business, HSE University both in Russian and English.

Lecturer

OTUS Online School | July 2021 - Present

Teaching lectures on selected topics from linear algebra, optimization, and statistics that find applications in data science and machine learning.

Projects & Research

Digital Signal Correction for Wireless Communication Stations
2024 - Present
NNTile: Software for Training Large Neural Networks on Heterogeneous Computing Nodes
2023 - Present
Performance Research of Sparse Linear System Solver
2020 - 2022

Some type of interference signals (PIM, Passive InterModulation) arriving at the receiver band frequencies complicate the decoding of useful subscriber signals. The goal of the project is to develop a machine learning model that effectively predicts interference component and has a small number of parameters for online deployment at the base station. Personal contribution at different stages includes research of classical physical and machine learning-based models for interference prediction, efficient implementation of mathematical algorithms in high-level languages, and investigation of computational complexity of different approaches.

Machine Learning Signal Processing Communications Research

The project is a nice example of ideas emerging from bringing two science disciplines together. On one hand, there is StarPU, a specialized library that helps computer programs run much faster by automatically splitting work between different computing nodes, like the CPU and the GPU. It takes care of the "traffic control" by using its own scheduler and thus deciding where data needs to go and which processor is best for each specific task. This library is most popular in High-Performance Computing and Numerical Linear Algebra communities, where it is used to run massive simulations, complex math problems on the most powerful supercomputers. On the other hand, there is ML applications and growing problems with the cost and availability of the most high-end GPUs. The idea was to bring these two worlds together and try to make relatively old computing clusters still relevant for the current ML demands by wise scheduling across heterogeneous computing nodes with the help of StarPU. Personal contribution at different stages includes writing mathematical code in Python, C++ and CUDA, conducting experiments on computational efficiency, and creating machine learning models on the new framework.

Project support and recognition

In the April, 2024 our project was selected by The Foundation for Assistance to Small Innovative Enterprises (https://fasie.ru/) for 2-year financial support.

Deep Learning High Performance Computing Software Development Research

This was a significant early-career commercial project with a major company developing an optimization package. The challenge was that their Simplex method implementation performed slower than competitors, but we had no access to the source code. To address this, we were to develop a black-box framework that intercepted inputs and outputs of the target library, enabling us to analyze performance bottlenecks and formulate hypotheses about the underlying implementation. Based on this analysis, we proposed algorithmic improvements and independently implemented an optimized version of the solver in C++, which met the required performance specifications. This project significantly enhanced my skills in linear algebra tools, multi-level and especially low-level programming, while improving my overall code quality and programming style.

Numerical Methods C++ Optimization Research