I have worked on multiple software teams within quadric: graph compiler (TVM-based), SDK, and applications. I tend to work on software problems that require careful attention to numerical accuracy of algorithms and require mathematical analysis.
Implemented optimized algorithms for quadric’s parallel GPNPU processor from a range of domains such as numerical linear algebra (Gaussian Elimination / LU decomposition, Cholesky decomposition), signal processing (MVDR and delay-and-sum beamforming), and neural networks (convolutional layers).
Developed tooling for numerical accuracy checks which take into account numerical conditioning and stability of algorithms. Extending numerical analysis concepts from numerical linear algebra literature written from the view point of floating point to fixed point arithmetic.
Spent a year leading the applications team with 8 people. My team was responsible for building and supporting application pipelines which include implementing core algorithms with quadric's SDK, neural network layers, image processing, linear algebra routines, and numerical accuracy testing.
Worked on the integration and development of the floating point Fused-Multiply-Add (FMA) operation. This was the first floating point operation introduced to quadric's architecture. Analyzed worst-case numerical accuracy mathematically for various dot-products methods while considering the conversion to fixed point.
Working on creating a CPU backend on a onnxruntime library fork for simulating numerical behavior of quadric's processor. This will be used for numerical validation studies.
Studied how to efficiently mix a dye by choosing optimal fluid stirring strategies through analytical and computational approaches.
•
Built fluid simulations from scratch in Python which involved implementing finite difference and spectral methods for solving fluid equations.
•
Programmed numerical optimization algorithms from scratch for determining the optimal velocity field to optimize mixing.
•
Framed problem as a constrained non-convex optimal control problem where the control variable is the velocity field, state variable is the concentration of a dye, and the constraint is a fixed L2 or H1 norm on the velocity field (stirring budget constraint).
•
C. J. Miles, C. R. Doering, A shell model for optimal mixing, Journal of Nonlinear Science, 2017, https://doi.org/10.1007/s00332-017-9400-7
•
C. J. Miles, C. R. Doering, Diffusion-limited mixing by incompressible flows, Vol 31, Issue 5, Nonlinearity, 2018
Investigated the physics of acoustic droplet vaporization (the vaporization of micron-sized droplets by ultrasound) to inform the optimization of this mechanism in its potential chemotherapy applications.
•
Constructed a theoretical model of the acoustic wave-droplet fluid dynamic interaction with the addition of classical nucleation theory to predict a nucleation event.
•
Conducted experiments of ultrasound pulses on a bed of droplets to verify the theoretical prediction of the ultrasonic nucleation pressure threshold.
•
C. J. Miles, C. R. Doering, O.D. Kripfigans, Nucleation pressure threshold in acoustic droplet vaporization, Journal of Applied Physics, Vol 120, Iss 3, 2016
Built numerical computation software from scratch to implement partial differential equation solvers to model the collective motion of many swimming bacteria in a continuum model governed by the Smoluchowski equation.
•
Analytically and numerically investigated the nonlinear dynamics of this model under various bacterial configurations.
•
C. J. Miles, A. A. Evans, M. J. Shelley, S. E. Spagnolie, Active matter invasion of a viscous fluid: Unstable sheets and a no-flow theorem, Physical review letters, Vol 122, Issue 9, 2019