About
About
My name is Anton, I am a software engineer with over a decade of experience working on various computer graphics problems. I enjoy playing Apex legends in my free time and sometimes updating this blog. In the last couple of years I started exploring the realm of machine learning and its applications in graphics.
Work experience:
February 2021 - Now (100% Remote) AMD
- Leading an effort on denoising.
- Some internal tooling for testing/capture/replay/rapid prototyping/perf analysis.
- Leading development of GPUOpen code/samples(some of it shipped in a number of AAA games):
June 2020 - November 2020 (100% Remote) Unigine
- Engine development.
- Prototyped/Envisioned Visual programming(node based) system for material generation
May 2017 - May 2019 (Gdansk/Poland) Intel
- Worked briefly on CPU compilers(icc/Big endian) and runtime libraries(Embedded).
- Developed a gfx API capture/replay tool for experimentation on pass reordering, perf stat gathering and geometry manipulations.
- Prototyping graphics compiler features for game workloads.
- Game performance analysis on current/future platforms.
- Worked on Source-to-Source clang based transpilation tool for HPC.
Jan 2017 - May 2017 (Novosibirsk/Russia) Bricsys
- Direct modeling tools for BricsCAD. Focused on prototyping a tool to copy paste confined geometric features using topological dual representation.
Dec 2015 - Aug 2016 (Novosibirsk/Russia) АО «НТЦ ЕЭС»
- In-House math and vector graphics libraries.
- Working on my bachelor’s thesis on solving steady state electrical current configs for large power networks.
Toy projects:
- WebGPU MLP image compressor
- Based off of Jakub Boksansky’s d3d12 one
- Software GPU simulator + Vulkan API(+JIT shader compiler for x86)
- Implemented a subset of vulkan API as a virtual device, enough to take some SPIRV pixel/vertex shaders, PSO and rasterize a basic imgui sample and put on screen. Tiny compiler layer takes spirv and use llvm to make a wavefront, linearize CFG and compile to x86 for native execution on cpu.
- GPU simulator in Rust and web link
- A toy GPU performance simulator with an imaginary ISA that can spit out basic wave traces based on a config.
- 3D Prototyping Graphics Framework
- 3D Prototyping Graphics Framework 2
- 3D Prototyping Graphics Framework 3
- Prototype for node based frame graph/shader editor and web link
OSS contributions:
- Adding a WASM i32x4(SIMD4) target to ISPC
- GPUOpen effects
Shader toys:
- Octahedral facet solid angle
- Run-length compressed models on GPU
- Minimal TAA(kinda wonky)
- Simple ripples
Education:
- 2016 BSc in physics at NSU (Novosibirsk/Russia)