
Ciao, sono Abhik Sarkar.
Sono Director of Machine Learning in Cloudastructure Inc, dove ho portato la nostra piattaforma di computer vision da 100K a 12 milioni di video al giorno, e mi occupo del cluster GPU on-premise su cui gira.
Se arrivi qui da un articolo o dalla recensione di un paper: ciao, l’ho scritto io. Su questo sito spiego quello che imparo strada facendo, dall’ottimizzazione delle GPU e dai transformer ai codec video e ai paper che ci stanno dietro, di solito con qualcosa da cliccare e provare.
Tradotto dall’inglese.
Seguimi
Da dove iniziare
Scegli il formato che preferisci. Ognuno parte da un contenuto che vale la pena leggere per primo. Articoli, concetti e recensioni sono in inglese.
Articoli
Approfondimenti nati dal lavoro in produzione: GPU, codec video e internals di Python.
How TensorRT WorksConcetti
Brevi spiegazioni interattive su ML, GPU e sistemi, raggruppate per argomento.
Flash Attention: IO-Aware Exact AttentionPaper
Recensioni di paper di machine learning, con demo da eseguire nel browser.
ViT: An Image is Worth 16x16 WordsLa mia storia
Di cosa mi occupo oggi
In Cloudastructure uso il deep learning e la computer vision per migliorare la sicurezza. Nel quotidiano significa Python, C++, TensorRT, PyTorch, CUDA, Docker e React.js, oltre a strumenti MLOps e sistemi distribuiti per l’elaborazione video su larga scala. Assumo e guido anche il team, distribuito in 11 paesi, e racconto questo lavoro alle conferenze.
Ho parlato a
Tutti i talk- EuroPython
- PyCon Italia
- PyCon India
- PyCon Japan
- BangPypers
- DevFest
Perché le GPU
Sono diventato performance engineer per caso.
Tutto è iniziato per far risparmiare soldi all’azienda. Poi ho scoperto che i decoder come NVDEC sono silicio separato dai CUDA core, quindi decodifica, pre-elaborazione e inferenza possono girare contemporaneamente su parti diverse della GPU. Metterli in pipeline ci ha dato un aumento di velocità di 3x e ha fatto risparmiare migliaia in costi di infrastruttura su larga scala. Da allora non ho più smesso: kernel CUDA, pattern di accesso alla memoria, ottimizzazione dei grafi con TensorRT, fino all’occupancy degli streaming multiprocessor.
Oltre il lavoro
Faccio da mentor, tengo workshop e scrivo qui per condividere quello che imparo. Lontano dalla tastiera mi trovi ai quiz o a provare l’ultimo strumento appena uscito.
Le mie passioni
- Machine learning
- Performance engineering su GPU
- Ingegneria del software
- Python
- Open source
- Quiz
- Data engineering
Come sono arrivato qui
Ho più di 8 anni di esperienza come machine learning engineer e sviluppatore full-stack. Mi sono formato in informatica: un Bachelor of Technology in Computer Science and Engineering al National Institute of Technology, Raipur, in India, seguito da corsi di livello magistrale in Introduction to High-Performance Computing all’Indian Institute of Science, Bangalore, e CS224W: Machine Learning with Graphs tramite lo Stanford Center for Professional Development. L’elenco completo è nel mio curriculum con le certificazioni, e le mie aree di competenza mostrano gli argomenti che tratto.
Articoli che consiglio
Una selezione di articoli che hanno influenzato il mio modo di pensare e di affrontare la tecnologia.
- Making Deep Learning go Brrrr From First Principles — Horace He
- Transformers from Scratch — Brandon Rohrer
Scrivimi
L’email è il modo migliore per contattarmi, qualunque sia il motivo.
Mandami un’email