#net #operator #engine

nightly caffe2-operator


3 releases

0.1.5-alpha.0 Mar 25, 2023
0.1.4-alpha.0 Mar 2, 2023
0.1.3-alpha.0 Mar 1, 2023

#562 in Hardware support

Download history 19/week @ 2023-06-07 289/week @ 2023-06-14 476/week @ 2023-06-21 196/week @ 2023-06-28 695/week @ 2023-07-05 185/week @ 2023-07-12 542/week @ 2023-07-19 250/week @ 2023-07-26 132/week @ 2023-08-02 252/week @ 2023-08-09 242/week @ 2023-08-16 121/week @ 2023-08-23 131/week @ 2023-08-30 313/week @ 2023-09-06 187/week @ 2023-09-13 133/week @ 2023-09-20

764 downloads per month
Used in 225 crates (223 directly)


17K SLoC


A Rust crate for the Caffe2 operator library, which is in the process of being translated from C++ to Rust. This crate contains translations of some of the functions from the original C++ library, but some function bodies are still in the process of being translated.

Core Primitives

  • AsyncSchedulingNet: a net that supports async scheduling of operators

  • GradientMakerStorage: storage for gradient makers

  • Observable: a type that can be observed by an Observer

  • OperatorInfo: metadata for operators, such as input/output names and types

  • OperatorRegistry: registry for operators

  • OperatorStorage: storage for operators

  • Tracer: a tool for tracing and profiling the execution of code

  • TracerEvent: an event generated by a Tracer

  • Workspace: a workspace for storing blobs and nets

Core Algorithms

  • GradientNotImplementedYet: an algorithm for handling gradient operations that are not yet implemented

  • GradientOpsMeta: a metadata class that helps in computing gradients

  • GradientWrapper: a wrapper for computing gradients

  • match_grads_to_params: an algorithm for matching gradients to their corresponding parameters

  • operator_schema_test_*: a set of algorithms for testing operator schemas, including cost inference, tensor inference, and inplace enforcement

  • run_on_device: an algorithm for running an operator on a specific device

  • serialize_event: an algorithm for serializing TracerEvent objects


This crate was developed by [INSERT YOUR NAME HERE] and is based on the Caffe2 operator library.


~354K SLoC