Exafunction raises $25M Series A

Efficient deep learning at scale.

Exafunction optimizes your deep learning inference workload, delivering up to a 10x improvement in resource utilization and cost. Focus on building your deep learning application, not on managing clusters and fine-tuning performance.

Without Exafunction

In most deep learning applications, CPU, I/O, and network bottlenecks lead to poor utilization of GPU hardware.

With Exafunction

Exafunction moves any GPU code to highly utilized remote resources, even spot instances. Your core logic remains on inexpensive CPU instances.

Trusted by the most demanding applications

Exafunction is battle-tested on applications like large-scale autonomous vehicle simulation. These workloads have complex custom models, require numerical reproducibility, and use thousands of GPUs concurrently.

How it Works

Register Any Model

Exafunction supports models from major deep learning frameworks and inference runtimes. Models and dependencies like custom operators are versioned so you can always be confident you’re getting the right results.

with exa.ModuleRepository("repo") as repo:
    uid = repo.register_tf_savedmodel(
        "TFModel:v1.0",
        "/tf_model.savedmodel",
    )
    print(uid)
    # -> @jsGUAJrNjwp9I9sc7uPR
with exa.Session("exa-cluster") as sess:
    model = sess.NewModule("Detector:v1.0")
    image = sess.from_numpy(...)
    outputs = model.run(image=image)
    print(outputs["boxes"].numpy())

Integrate Your Application

Integration is as simple as replacing your framework’s model inference functions with a few lines of code.