# PyGo: A Deep Learning Framework Where Go Calls Python Calls C++

> Source: <https://dev.to/sarkaragi/pygo-a-deep-learning-framework-where-go-calls-python-calls-c-4amo>
> Published: 2026-07-19 07:35:56+00:00

**[Project] PyGo – embedding CPython inside a Go process to build a deep learning framework**

I've been working on something a bit unusual: a deep learning framework where Go is the top-level API, Python handles autograd and the model zoo, and C++/CUDA does the raw compute.

The architecture looks like this:

```
Go API → CGo bridge → CPython (embedded) → pybind11 → CUDA/AVX-512 kernels
```

The key insight: instead of a Python sidecar in every pod, CPython runs *inside* the Go binary. Tensors live in shared memory — zero-copy across all three layers.

**Why Go on top?**

Go is already running most ML infrastructure (K8s, Prometheus, etcd). PyGo makes models first-class citizens there, without rewriting your ops stack. Goroutines make dynamic batching trivial.

**Current state:**

The main unsolved problem is CGo call overhead at the tensor boundary. If anyone has experience embedding CPython in a Go process, I'd love to talk.

Looking for core contributors — especially Go devs with CGo experience, Python autograd engineers, and C++/CUDA kernel writers.

Interested in joining?

Email: [amitsarkar1066@gmail.com](mailto:amitsarkar1066@gmail.com)
