A Knitting Weekend

Sitting in a chair in front a computer screen while listening to MIX 100 Denver Radio station (for hours 😀), I was reminded of the intriguing parallels between knitting and programming:

"Knitting is Coding, and Yarn is a Programmable material."

On quiet weekends like this I write code for fun, and Visual Studio Code & Python are my yarn and needles.

Sometimes a quiet weekend is an absolute gift!

The Sheer Joy of Accelerating Your Existing Python Code with Numba! - Part I

What is Numba?

a JIT (Just-in-Time) compiler for Python that:

  • generates optimized machine code using LLVM (Low Level Virtual Machine) compiler infrastructure
  • provides toolbox for different targets and execution models:
    • Single-threaded CPU, multi-threaded CPU, GPU
    • regular functions, "universal functions (ufuncs)" (array functions), etc
  • integrates well with the Scientific Python stack
  • with a few annotations, array-oriented and math-heavy Python code provides:
    • speedup: 2x (compared to basic NumPy code) to 200x (compared to pure Python)
    • performance similar to C, C++, Fortran, without having to switch languages or Python interpreters
  • is totally awesome!

TVM: End-to-End Optimization Stack for Deep Learning

(Image Source: http://tvmlang.org/)


  • Scalable frameworks, such as TensorFlow, MXNet, Caffe, and PyTorch are optimized for a narrow range of serve-class GPUs.
  • Deploying workloads to other platforms such as mobile phones, IoT, and specialized accelarators(FPGAs, ASICs) requires laborious manual effort.
  • TVM is an end-to-end optimization stack that exposes:

    • graph-level
    • operator-level optimizations

    ---> to provide performance portability to deep learning workloads across diverse hardware back-ends.

Kube In Action - 02: Containers

A process running in a container runs inside the host's operating system, like all other processes. But the process in the container is still isolated from other processes. To the process itself, it looks like it is only one running on the machine and in its operating system.

Kube In Action - 01: Introduction to Kubernetes

I've recently picked up an interest in containerization. I started reading up on and playing with kubernetes.

I have been taking notes as I go through Kubernetes in Action by Marko Lukša and I wanted to share these with those who might have similar interests in containerization and distributed systems in general. This is the 1st installment of a series called Kube in Action. Every week or so, I’ll be summarizing and exploring kubernetes fundamentals + concepts with hands-on examples as I learn more about Kubernetes.