René's URL Explorer Experiment


Title: Operator Registration — PyTorch main documentation

Description: Operator registration in PyTorch C++ — TORCH_LIBRARY, TORCH_LIBRARY_IMPL for custom operators.

Keywords:

direct link

Domain: docs.pytorch.org


Hey, it has json ld scripts:
    {
       "@context": "https://schema.org",
       "@type": "Article",
       "name": "Operator Registration",
       "headline": "Operator Registration",
       "description": "Operator registration in PyTorch C++ \u2014 TORCH_LIBRARY, TORCH_LIBRARY_IMPL for custom operators.",
       "url": "/api/library/registration.html",
       "articleBody": "Operator Registration# The library API provides macros and classes for registering custom operators with PyTorch\u2019s dispatcher. Macros# TORCH_LIBRARY# TORCH_LIBRARY(ns, m) \u00a0 static void TORCH_LIBRARY_init_##ns(torch::Library\u0026);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ static const torch::detail::TorchLibraryInitTORCH_LIBRARY_static_init_##ns( \\ torch::Library::DEF,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ \u0026TORCH_LIBRARY_init_##ns,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ C10_STRINGIZE(ns),\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ std::nullopt,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ __FILE__,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ __LINE__);\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \\ void TORCH_LIBRARY_init_##ns( torch::Library\u0026 m)# Macro for defining a function that will be run at static initialization time to define a library of operators in the namespace ns (must be a valid C++ identifier, no quotes). Use this macro when you want to define a new set of custom operators that do not already exist in PyTorch. Example usage: TORCH_LIBRARY(myops, m) { // m is a torch::Library; methods on it will define // operators in the myops namespace m.def(\"add\", add_impl); } The m argument is bound to a torch::Library that is used to register operators. There may only be one TORCH_LIBRARY() for any given namespace. Example: TORCH_LIBRARY(myops, m) { m.def(\"add(Tensor self, Tensor other) -\u003e Tensor\", \u0026add_impl); m.def(\"mul(Tensor self, Tensor other) -\u003e Tensor\"); m.impl(\"mul\", torch::kCPU, \u0026mul_cpu_impl); m.impl(\"mul\", torch::kCUDA, \u0026mul_cuda_impl); } TORCH_LIBRARY_IMPL# TORCH_LIBRARY_IMPL(ns, k, m) _TORCH_LIBRARY_IMPL(ns, k, m, C10_UID)# Macro for defining a function that will be run at static initialization time to define operator overrides for dispatch key k (must be an unqualified enum member of c10::DispatchKey) in namespace ns (must be a valid C++ identifier, no quotes). Use this macro when you want to implement a preexisting set of custom operators on a new dispatch key (e.g., you want to provide CUDA implementations of already existing operators). One common usage pattern is to use TORCH_LIBRARY() to define schema for all new operators you want to define, and then use several TORCH_LIBRARY_IMPL() blocks to provide implementations of the operator for CPU, CUDA and Autograd. In some cases, you need to define something that applies to all namespaces, not just one namespace (usually a fallback). In that case, use the reserved namespace _, e.g., TORCH_LIBRARY_IMPL(_, XLA, m) { m.fallback(xla_fallback); } Example usage: TORCH_LIBRARY_IMPL(myops, CPU, m) { // m is a torch::Library; methods on it will define // CPU implementations of operators in the myops namespace. // It is NOT valid to call torch::Library::def() // in this context. m.impl(\"add\", add_cpu_impl); } If add_cpu_impl is an overloaded function, use a static_cast to specify which overload you want (by providing the full type). Example: TORCH_LIBRARY_IMPL(myops, XLA, m) { m.impl(\"mul\", \u0026mul_xla_impl); } TORCH_LIBRARY_FRAGMENT# TORCH_LIBRARY_FRAGMENT(ns, m) _TORCH_LIBRARY_FRAGMENT(ns, m, C10_UID)# This macro is a version of TORCH_LIBRARY() that doesn\u2019t enforce that there is only one library (it is a \u201cfragment\u201d). This is used inside the PerOpRegistration.cpp file, as well as in places where all op registrations within the same namespace cannot be easily put into one macro block (this is mostly the case for custom ops in fbcode that were ported from the old API) Example: // In file1.cpp TORCH_LIBRARY(myops, m) { m.def(\"add(Tensor self, Tensor other) -\u003e Tensor\", \u0026add_impl); } // In file2.cpp TORCH_LIBRARY_FRAGMENT(myops, m) { m.def(\"mul(Tensor self, Tensor other) -\u003e Tensor\", \u0026mul_impl); } Classes# Library# class Library# This object provides the API for defining operators and providing implementations at dispatch keys. Typically, a torch::Library is not allocated directly; instead it is created by the TORCH_LIBRARY() or TORCH_LIBRARY_IMPL() macros. Most methods on torch::Library return a reference to itself, supporting method chaining. // Examples: TORCH_LIBRARY(torchvision, m) { // m is a torch::Library m.def(\"roi_align\", ...); ... } TORCH_LIBRARY_IMPL(aten, XLA, m) { // m is a torch::Library m.impl(\"add\", ...); ... } Public Functions Library(const Library\u0026) = delete# Library \u0026operator=(const Library\u0026) = delete# Library(Library\u0026\u0026) = default# Library \u0026operator=(Library\u0026\u0026) = default# ~Library() = default# inline Library \u0026def(c10::FunctionSchema \u0026\u0026s, const std::vector\u003cat::Tag\u003e \u0026tags = {}, _RegisterOrVerify rv = _RegisterOrVerify::REGISTER) \u0026# Declare an operator with a schema, but don\u2019t provide any implementations for it. You\u2019re expected to then provide implementations using the impl() method. All template arguments are inferred. // Example: TORCH_LIBRARY(myops, m) { m.def(\"add(Tensor self, Tensor other) -\u003e Tensor\"); } Parameters: raw_schema \u2013 The schema of the operator to be defined. Typically, this is a const char* string literal, but any type accepted by torch::schema() is accepted here. inline Library \u0026def(const char *raw_schema, const std::vector\u003cat::Tag\u003e \u0026tags = {}, _RegisterOrVerify rv = _RegisterOrVerify::REGISTER) \u0026# inline Library \u0026set_python_module(const char *pymodule, const char *context = \"\")# Declares that for all operators that are subsequently def\u2019ed, their fake impls may be found in the given Python module (pymodule). This registers some help text that is used if the fake impl cannot be found. Args: pymodule: the python module context: We may include this in the error message. inline Library \u0026impl_abstract_pystub(const char *pymodule, const char *context = \"\")# Deprecated; use set_python_module instead. template\u003ctypename NameOrSchema, typename Func\u003einline Library \u0026def(NameOrSchema \u0026\u0026raw_name_or_schema, Func \u0026\u0026raw_f, const std::vector\u003cat::Tag\u003e \u0026tags = {}) \u0026# Define an operator for a schema and then register an implementation for it. This is typically what you would use if you aren\u2019t planning on making use of the dispatcher to structure your operator implementation. It\u2019s roughly equivalent to calling def() and then impl(), but if you omit the schema of the operator, we will infer it from the type of your C++ function. All template arguments are inferred. // Example: TORCH_LIBRARY(myops, m) { m.def(\"add\", add_fn); } Parameters: raw_name_or_schema \u2013 The schema of the operator to be defined, or just the name of the operator if the schema is to be inferred from raw_f. Typically a const char* literal. raw_f \u2013 The C++ function that implements this operator. Any valid constructor of torch::CppFunction is accepted here; typically you provide a function pointer or lambda. template\u003ctypename Name, typename Func\u003einline Library \u0026impl(Name name, Func \u0026\u0026raw_f, _RegisterOrVerify rv = _RegisterOrVerify::REGISTER) \u0026# Register an implementation for an operator. You may register multiple implementations for a single operator at different dispatch keys (see torch::dispatch()). Implementations must have a corresponding declaration (from def()), otherwise they are invalid. If you plan to register multiple implementations, DO NOT provide a function implementation when you def() the operator. // Example: TORCH_LIBRARY_IMPL(myops, CUDA, m) { m.impl(\"add\", add_cuda); } Parameters: name \u2013 The name of the operator to implement. Do NOT provide schema here. raw_f \u2013 The C++ function that implements this operator. Any valid constructor of torch::CppFunction is accepted here; typically you provide a function pointer or lambda. c10::OperatorName _resolve(const char *name) const# template\u003ctypename Name, typename Func\u003einline Library \u0026impl_UNBOXED(Name, Func*) \u0026# inline Library \u0026def(detail::SelectiveStr\u003cfalse\u003e, const std::vector\u003cat::Tag\u003e \u0026tags[[maybe_unused]] = {}) \u0026# inline Library \u0026def(detail::SelectiveStr\u003ctrue\u003e raw_schema, const std::vector\u003cat::Tag\u003e \u0026tags = {}) \u0026# template\u003ctypename Func\u003einline Library \u0026def(detail::SelectiveStr\u003cfalse\u003e, Func\u0026\u0026, const std::vector\u003cat::Tag\u003e \u0026tags[[maybe_unused]] = {}) \u0026# template\u003ctypename Func\u003einline Library \u0026def(detail::SelectiveStr\u003ctrue\u003e raw_name_or_schema, Func \u0026\u0026raw_f, const std::vector\u003cat::Tag\u003e \u0026tags = {}) \u0026# template\u003ctypename Func\u003einline Library \u0026impl(detail::SelectiveStr\u003cfalse\u003e, Func\u0026\u0026) \u0026# template\u003ctypename Dispatch, typename Func\u003einline Library \u0026impl(detail::SelectiveStr\u003cfalse\u003e, Dispatch\u0026\u0026, Func\u0026\u0026) \u0026# template\u003ctypename Func\u003einline Library \u0026impl_UNBOXED(detail::SelectiveStr\u003cfalse\u003e, Func*) \u0026# template\u003ctypename Func\u003einline Library \u0026impl(detail::SelectiveStr\u003ctrue\u003e name, Func \u0026\u0026raw_f) \u0026# template\u003ctypename Dispatch, typename Func\u003einline Library \u0026impl(detail::SelectiveStr\u003ctrue\u003e name, Dispatch \u0026\u0026key, Func \u0026\u0026raw_f) \u0026# template\u003ctypename Func\u003einline Library \u0026impl_UNBOXED(detail::SelectiveStr\u003ctrue\u003e, Func*) \u0026# template\u003ctypename Func\u003einline Library \u0026fallback(Func \u0026\u0026raw_f) \u0026# Register a fallback implementation for all operators which will be used if there is not a specific implementation for an operator available. There MUST be a DispatchKey associated with a fallback; e.g., only call this from TORCH_LIBRARY_IMPL() with namespace _. // Example: TORCH_LIBRARY_IMPL(_, AutogradXLA, m) { // If there is not a kernel explicitly registered // for AutogradXLA, fallthrough to the next // available kernel m.fallback(torch::CppFunction::makeFallthrough()); } // See aten/src/ATen/core/dispatch/backend_fallback_test.cpp // for a full example of boxed fallback Parameters: raw_f \u2013 The function that implements the fallback. Unboxed functions typically do not work as fallback functions, as fallback functions must work for every operator (even though they have varying type signatures). Typical arguments are CppFunction::makeFallthrough() or CppFunction::makeFromBoxedFunction() template\u003cclass CurClass\u003einline torch::class_\u003cCurClass\u003e class_(const std::string \u0026className)# template\u003cclass CurClass\u003einline torch::class_\u003cCurClass\u003e class_(detail::SelectiveStr\u003ctrue\u003e className)# template\u003cclass CurClass\u003einline detail::ClassNotSelected class_(detail::SelectiveStr\u003cfalse\u003e className)# void reset()# template\u003cclass CurClass\u003einline class_\u003cCurClass\u003e class_(const std::string \u0026className)# template\u003cclass CurClass\u003einline class_\u003cCurClass\u003e class_(detail::SelectiveStr\u003ctrue\u003e className)# Friends friend class detail::TorchLibraryInit Example: TORCH_LIBRARY(myops, m) { // Define with implementation m.def(\"add(Tensor self, Tensor other) -\u003e Tensor\", \u0026add_impl); // Define schema only m.def(\"mul(Tensor self, Tensor other) -\u003e Tensor\"); // Provide backend-specific implementations m.impl(\"mul\", torch::kCPU, \u0026mul_cpu_impl); m.impl(\"mul\", torch::kCUDA, \u0026mul_cuda_impl); } CppFunction# class CppFunction Represents a C++ function that implements an operator. Most users won\u2019t interact directly with this class, except via error messages: the constructors this function define the set of permissible \u201cfunction\u201d-like things you can bind via the interface. This class erases the type of the passed in function, but durably records the type via an inferred schema for the function. Public Functions template\u003ctypename Func\u003einline explicit CppFunction(Func *f, std::enable_if_t\u003cc10::guts::is_function_type\u003cFunc\u003e::value, std::nullptr_t\u003e = nullptr) This overload accepts function pointers, e.g., CppFunction(\u0026add_impl) template\u003ctypename FuncPtr\u003einline explicit CppFunction(FuncPtr f, std::enable_if_t\u003cc10::is_compile_time_function_pointer\u003cFuncPtr\u003e::value, std::nullptr_t\u003e = nullptr) This overload accepts compile time function pointers, e.g., CppFunction(TORCH_FN(add_impl)) template\u003ctypename Lambda\u003einline explicit CppFunction(Lambda \u0026\u0026f, std::enable_if_t\u003cc10::guts::is_functor\u003cstd::decay_t\u003cLambda\u003e\u003e::value, std::nullptr_t\u003e = nullptr) This overload accepts lambdas, e.g., CppFunction([](const Tensor\u0026 self) { ... }) ~CppFunction() CppFunction(const CppFunction\u0026) = delete CppFunction \u0026operator=(const CppFunction\u0026) = delete CppFunction(CppFunction\u0026\u0026) noexcept = default CppFunction \u0026operator=(CppFunction\u0026\u0026) = default inline CppFunction \u0026\u0026debug(std::string d) \u0026\u0026 Public Static Functions static inline CppFunction makeFallthrough() This creates a fallthrough function. Fallthrough functions immediately redispatch to the next available dispatch key, but are implemented more efficiently than a hand written function done in the same way. template\u003cc10::BoxedKernel::BoxedKernelFunction *func\u003estatic inline CppFunction makeFromBoxedFunction() Create a function from a boxed kernel function with signature void(const OperatorHandle\u0026, Stack*); i.e., they receive a stack of arguments in a boxed calling convention, rather than in the native C++ calling convention. Boxed functions are typically only used to register backend fallbacks via torch::Library::fallback(). template\u003cc10::BoxedKernel::BoxedKernelFunction_withDispatchKeys *func\u003estatic inline CppFunction makeFromBoxedFunction() template\u003cclass KernelFunctor\u003estatic inline CppFunction makeFromBoxedFunctor(std::unique_ptr\u003cKernelFunctor\u003e kernelFunctor) Create a function from a boxed kernel functor which defines operator()(const OperatorHandle\u0026, DispatchKeySet, Stack*) (receiving arguments from boxed calling convention) and inherits from c10::OperatorKernel. Unlike makeFromBoxedFunction, functions registered in this way can also carry additional state which is managed by the functor; this is useful if you\u2019re writing an adapter to some other implementation, e.g., a Python callable, which is dynamically associated with the registered kernel. template\u003ctypename FuncPtr, std::enable_if_t\u003cc10::guts::is_function_type\u003cFuncPtr\u003e::value, std::nullptr_t\u003e = nullptr\u003estatic inline CppFunction makeFromUnboxedFunction(FuncPtr *f) Create a function from an unboxed kernel function. This is typically used to register common operators. template\u003ctypename FuncPtr, std::enable_if_t\u003cc10::is_compile_time_function_pointer\u003cFuncPtr\u003e::value, std::nullptr_t\u003e = nullptr\u003estatic inline CppFunction makeFromUnboxedFunction(FuncPtr f) Create a function from a compile time unboxed kernel function pointer. This is typically used to register common operators. Compile time function pointers can be used to allow the compiler to optimize (e.g. inline) calls to it. OrderedDict# template\u003ctypename Key, typename Value\u003eclass OrderedDict# An ordered dictionary implementation, akin to Python\u2019s OrderedDict. Public Types using Iterator = typename std::vector\u003cItem\u003e::iterator# using ConstIterator = typename std::vector\u003cItem\u003e::const_iterator# Public Functions explicit OrderedDict(std::string key_description = \"Key\")# Constructs the OrderedDict with a short description of the kinds of keys stored in the OrderedDict. This description is used in error messages thrown by the OrderedDict. OrderedDict(const OrderedDict \u0026other)# Copy constructs this OrderedDict from other. OrderedDict \u0026operator=(const OrderedDict \u0026other)# Assigns items from other to this OrderedDict. OrderedDict(OrderedDict \u0026\u0026other) noexcept = default# OrderedDict \u0026operator=(OrderedDict \u0026\u0026other) noexcept = default# ~OrderedDict() = default# OrderedDict(std::initializer_list\u003cItem\u003e initializer_list)# Constructs a new OrderedDict and pre-populates it with the given Items. const std::string \u0026key_description() const noexcept# Returns the key description string the OrderedDict was constructed with. Item \u0026front()# Returns the very first item in the OrderedDict and throws an exception if it is empty. const Item \u0026front() const# Returns the very first item in the OrderedDict and throws an exception if it is empty. Item \u0026back()# Returns the very last item in the OrderedDict and throws an exception if it is empty. const Item \u0026back() const# Returns the very last item in the OrderedDict and throws an exception if it is empty. Item \u0026operator[](size_t index)# Returns the item at the index-th position in the OrderedDict. Throws an exception if the index is out of bounds. const Item \u0026operator[](size_t index) const# Returns the item at the index-th position in the OrderedDict. Throws an exception if the index is out of bounds. Value \u0026operator[](const Key \u0026key)# Returns the value associated with the given key. Throws an exception if no such key is stored in the OrderedDict. Use find() for a non-throwing way of accessing a value if it is present. const Value \u0026operator[](const Key \u0026key) const# Returns the value associated with the given key. Throws an exception if no such key is stored in the OrderedDict. Use find() for a non-throwing way of accessing a value if it is present. Value *find(const Key \u0026key) noexcept# Returns a pointer to the value associated with the given key, or a nullptr if no such key is stored in the OrderedDict. const Value *find(const Key \u0026key) const noexcept# Returns a pointer to the value associated with the given key, or a nullptr if no such key is stored in the OrderedDict. bool contains(const Key \u0026key) const noexcept# Returns true if the key is present in the OrderedDict. Iterator begin()# Returns an iterator to the first item in the OrderedDict. Iteration is ordered. ConstIterator begin() const# Returns an iterator to the first item in the OrderedDict. Iteration is ordered. Iterator end()# Returns an iterator one past the last item in the OrderedDict. ConstIterator end() const# Returns an iterator one past the last item in the OrderedDict. size_t size() const noexcept# Returns the number of items currently stored in the OrderedDict. bool is_empty() const noexcept# Returns true if the OrderedDict contains no elements. void reserve(size_t requested_capacity)# Resizes internal storage to fit at least requested_capacity items without requiring reallocation. template\u003ctypename K, typename V\u003eValue \u0026insert(K \u0026\u0026key, V \u0026\u0026value)# Inserts a new (key, value) pair into the OrderedDict. Throws an exception if the key is already present. If insertion is successful, immediately returns a reference to the inserted value. Value \u0026insert(Key key, Value \u0026\u0026value)# Inserts a new (key, value) pair into the OrderedDict. Throws an exception if the key is already present. If insertion is successful, immediately returns a reference to the inserted value. void update(OrderedDict \u0026\u0026other)# Inserts all items from other into this OrderedDict. If any key from other is already present in this OrderedDict, an exception is thrown. void update(const OrderedDict \u0026other)# Inserts all items from other into this OrderedDict. If any key from other is already present in this OrderedDict, an exception is thrown. void erase(const Key \u0026key)# Removes the item that has key from this OrderedDict if exists and if it doesn\u2019t an exception is thrown. void clear()# Removes all items from this OrderedDict. const std::vector\u003cItem\u003e \u0026items() const noexcept# Returns the items stored in the OrderedDict. ::std::vector\u003cKey\u003e keys() const# Returns a newly allocated vector and copies all keys from this OrderedDict into the vector. ::std::vector\u003cValue\u003e values() const# Returns a newly allocated vector and copies all values from this OrderedDict into the vector. ::std::vector\u003cstd::pair\u003cKey, Value\u003e\u003e pairs() const# Returns a newly allocated vector and copies all keys and values from this OrderedDict into a vector of std::pair\u003cKey, Value\u003e. Friends template\u003ctypename K, typename V\u003efriend bool operator==(const OrderedDict\u003cK, V\u003e \u0026a, const OrderedDict\u003cK, V\u003e \u0026b)# Returns true if both dicts contain the same keys and values, in the same order. class Item# Public Functions inline Item(Key key, Value value)# Constructs a new item. inline Value \u0026operator*()# Returns a reference to the value. inline const Value \u0026operator*() const# Returns a reference to the value. inline Value *operator-\u003e()# Allows access to the value using the arrow operator. inline const Value *operator-\u003e() const# Allows access to the value using the arrow operator. inline const Key \u0026key() const noexcept# Returns a reference to the key. inline Value \u0026value() noexcept# Returns a reference to the value. inline const Value \u0026value() const noexcept# Returns a reference to the value. inline const std::pair\u003cKey, Value\u003e \u0026pair() const noexcept# Returns a (key, value) pair. Functions# The library API provides builder methods on the Library class for registering operators. See the Library class documentation above for the full API including def(), impl(), and fallback() methods. Dispatch Keys# Common dispatch keys used with torch::dispatch(): torch::kCPU - CPU backend torch::kCUDA - CUDA backend torch::kAutograd - Autograd backend torch::kMeta - Meta tensor backend",
       "author": {
         "@type": "Organization",
         "name": "PyTorch Contributors",
         "url": "https://pytorch.org"
       },
       "image": "https://pytorch.org/docs/stable/_static/img/pytorch_seo.png",
       "mainEntityOfPage": {
         "@type": "WebPage",
         "@id": "/api/library/registration.html"
       },
       "datePublished": "2023-01-01T00:00:00Z",
       "dateModified": "2023-01-01T00:00:00Z"
     }
 

docsearch:languageen
llm:site-typedocumentation
llm:frameworkPyTorch
llm:descriptionOperator registration in PyTorch C++ — TORCH_LIBRARY, TORCH_LIBRARY_IMPL for custom operators.
llm:navigation-filehttps://pytorch.org/docs/stable/llms.txt
llm:sitemaphttps://pytorch.org/docs/stable/sitemap.xml
llm:versionmain
llm:projectPyTorch
llm:page-typedocumentation
og:imagehttps://docs.pytorch.org/docs/stable/_static/img/pytorch_seo.png
None3

Links:

Skip to main contenthttps://docs.pytorch.org/cppdocs/api/library/registration.html#main-content
Home https://docs.pytorch.org/cppdocs/index.html
mainhttps://docs.pytorch.org/cppdocs/index.html
Installing C++ Distributions of PyTorch https://docs.pytorch.org/cppdocs/installing.html
The C++ Frontend https://docs.pytorch.org/cppdocs/frontend.html
C++ API Reference https://docs.pytorch.org/cppdocs/api/index.html
ATen: Tensor Library https://docs.pytorch.org/cppdocs/api/aten/index.html
C10: Core Utilities https://docs.pytorch.org/cppdocs/api/c10/index.html
Autograd: Automatic Differentiation https://docs.pytorch.org/cppdocs/api/autograd/index.html
CUDA Support https://docs.pytorch.org/cppdocs/api/cuda/index.html
XPU Support https://docs.pytorch.org/cppdocs/api/xpu/index.html
Neural Network Modules (torch::nn) https://docs.pytorch.org/cppdocs/api/nn/index.html
Optimizers (torch::optim) https://docs.pytorch.org/cppdocs/api/optim/index.html
Data Loading (torch::data) https://docs.pytorch.org/cppdocs/api/data/index.html
Serialization (torch::serialize) https://docs.pytorch.org/cppdocs/api/serialize/index.html
Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
Torch Stable API https://docs.pytorch.org/cppdocs/api/stable/index.html
FAQ https://docs.pytorch.org/cppdocs/faq.html
Go to pytorch.org https://pytorch.org
Xhttps://x.com/PyTorch
GitHubhttps://github.com/pytorch/pytorch
PyTorch Forumhttps://discuss.pytorch.org/
PyPihttps://pypi.org/project/torch/
mainhttps://docs.pytorch.org/cppdocs/index.html
Installing C++ Distributions of PyTorch https://docs.pytorch.org/cppdocs/installing.html
The C++ Frontend https://docs.pytorch.org/cppdocs/frontend.html
C++ API Reference https://docs.pytorch.org/cppdocs/api/index.html
ATen: Tensor Library https://docs.pytorch.org/cppdocs/api/aten/index.html
C10: Core Utilities https://docs.pytorch.org/cppdocs/api/c10/index.html
Autograd: Automatic Differentiation https://docs.pytorch.org/cppdocs/api/autograd/index.html
CUDA Support https://docs.pytorch.org/cppdocs/api/cuda/index.html
XPU Support https://docs.pytorch.org/cppdocs/api/xpu/index.html
Neural Network Modules (torch::nn) https://docs.pytorch.org/cppdocs/api/nn/index.html
Optimizers (torch::optim) https://docs.pytorch.org/cppdocs/api/optim/index.html
Data Loading (torch::data) https://docs.pytorch.org/cppdocs/api/data/index.html
Serialization (torch::serialize) https://docs.pytorch.org/cppdocs/api/serialize/index.html
Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
Torch Stable API https://docs.pytorch.org/cppdocs/api/stable/index.html
FAQ https://docs.pytorch.org/cppdocs/faq.html
Go to pytorch.org https://pytorch.org
Xhttps://x.com/PyTorch
GitHubhttps://github.com/pytorch/pytorch
PyTorch Forumhttps://discuss.pytorch.org/
PyPihttps://pypi.org/project/torch/
ATen: Tensor Libraryhttps://docs.pytorch.org/cppdocs/api/aten/index.html
Tensor Classhttps://docs.pytorch.org/cppdocs/api/aten/tensor.html
Tensor Creationhttps://docs.pytorch.org/cppdocs/api/aten/creation.html
Tensor Indexinghttps://docs.pytorch.org/cppdocs/api/aten/indexing.html
Tensor Accessorshttps://docs.pytorch.org/cppdocs/api/aten/accessors.html
C10: Core Utilitieshttps://docs.pytorch.org/cppdocs/api/c10/index.html
Device and DeviceTypehttps://docs.pytorch.org/cppdocs/api/c10/device.html
Device Guardshttps://docs.pytorch.org/cppdocs/api/c10/guards.html
Streamshttps://docs.pytorch.org/cppdocs/api/c10/streams.html
Core Typeshttps://docs.pytorch.org/cppdocs/api/c10/types.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/c10/utilities.html
Autograd: Automatic Differentiationhttps://docs.pytorch.org/cppdocs/api/autograd/index.html
Gradient Computationhttps://docs.pytorch.org/cppdocs/api/autograd/gradient.html
Custom Autograd Functionshttps://docs.pytorch.org/cppdocs/api/autograd/custom_functions.html
Gradient Modeshttps://docs.pytorch.org/cppdocs/api/autograd/modes.html
CUDA Supporthttps://docs.pytorch.org/cppdocs/api/cuda/index.html
CUDA Streamshttps://docs.pytorch.org/cppdocs/api/cuda/streams.html
CUDA Guardshttps://docs.pytorch.org/cppdocs/api/cuda/guards.html
CUDA Utility Functionshttps://docs.pytorch.org/cppdocs/api/cuda/utilities.html
XPU Supporthttps://docs.pytorch.org/cppdocs/api/xpu/index.html
XPU Streamshttps://docs.pytorch.org/cppdocs/api/xpu/streams.html
XPU Utility Functionshttps://docs.pytorch.org/cppdocs/api/xpu/utilities.html
Neural Network Modules (torch::nn)https://docs.pytorch.org/cppdocs/api/nn/index.html
Containershttps://docs.pytorch.org/cppdocs/api/nn/containers.html
Convolution Layershttps://docs.pytorch.org/cppdocs/api/nn/convolution.html
Pooling Layershttps://docs.pytorch.org/cppdocs/api/nn/pooling.html
Linear Layershttps://docs.pytorch.org/cppdocs/api/nn/linear.html
Activation Functionshttps://docs.pytorch.org/cppdocs/api/nn/activation.html
Normalization Layershttps://docs.pytorch.org/cppdocs/api/nn/normalization.html
Dropout Layershttps://docs.pytorch.org/cppdocs/api/nn/dropout.html
Embedding Layershttps://docs.pytorch.org/cppdocs/api/nn/embedding.html
Recurrent Layershttps://docs.pytorch.org/cppdocs/api/nn/recurrent.html
Transformer Layershttps://docs.pytorch.org/cppdocs/api/nn/transformer.html
Loss Functionshttps://docs.pytorch.org/cppdocs/api/nn/loss.html
Functional APIhttps://docs.pytorch.org/cppdocs/api/nn/functional.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/nn/utilities.html
Optimizers (torch::optim)https://docs.pytorch.org/cppdocs/api/optim/index.html
Gradient Descent Optimizershttps://docs.pytorch.org/cppdocs/api/optim/gradient_descent.html
Adaptive Learning Rate Optimizershttps://docs.pytorch.org/cppdocs/api/optim/adaptive.html
Second-Order Optimizershttps://docs.pytorch.org/cppdocs/api/optim/second_order.html
Learning Rate Schedulershttps://docs.pytorch.org/cppdocs/api/optim/schedulers.html
Data Loading (torch::data)https://docs.pytorch.org/cppdocs/api/data/index.html
Datasetshttps://docs.pytorch.org/cppdocs/api/data/datasets.html
DataLoaderhttps://docs.pytorch.org/cppdocs/api/data/dataloader.html
Samplershttps://docs.pytorch.org/cppdocs/api/data/samplers.html
Transformshttps://docs.pytorch.org/cppdocs/api/data/transforms.html
Serialization (torch::serialize)https://docs.pytorch.org/cppdocs/api/serialize/index.html
Saving and Loadinghttps://docs.pytorch.org/cppdocs/api/serialize/save_load.html
Archiveshttps://docs.pytorch.org/cppdocs/api/serialize/archives.html
Checkpointshttps://docs.pytorch.org/cppdocs/api/serialize/checkpoints.html
Torch Library APIhttps://docs.pytorch.org/cppdocs/api/library/index.html
Operator Registrationhttps://docs.pytorch.org/cppdocs/api/library/registration.html
Custom Classeshttps://docs.pytorch.org/cppdocs/api/library/custom_classes.html
Library Versioninghttps://docs.pytorch.org/cppdocs/api/library/versioning.html
Torch Stable APIhttps://docs.pytorch.org/cppdocs/api/stable/index.html
Library Registration Macroshttps://docs.pytorch.org/cppdocs/api/stable/registration.html
Stable Operatorshttps://docs.pytorch.org/cppdocs/api/stable/operators.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/stable/utilities.html
https://docs.pytorch.org/cppdocs/index.html
C++ API Referencehttps://docs.pytorch.org/cppdocs/api/index.html
Torch Library APIhttps://docs.pytorch.org/cppdocs/api/library/index.html
#https://docs.pytorch.org/cppdocs/api/library/registration.html#operator-registration
#https://docs.pytorch.org/cppdocs/api/library/registration.html#macros
#https://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library
#https://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library
TORCH_LIBRARY()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a0bd5fb09d25dfb58e750d712fc5afb84
#https://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library-impl
#https://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY_IMPL
TORCH_LIBRARY()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a0bd5fb09d25dfb58e750d712fc5afb84
TORCH_LIBRARY_IMPL()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a800b28569c0f7d0d9732bf8b6342d9f3
#https://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library-fragment
#https://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY_FRAGMENT
TORCH_LIBRARY()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a0bd5fb09d25dfb58e750d712fc5afb84
#https://docs.pytorch.org/cppdocs/api/library/registration.html#classes
#https://docs.pytorch.org/cppdocs/api/library/registration.html#library
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library
TORCH_LIBRARY()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a0bd5fb09d25dfb58e750d712fc5afb84
TORCH_LIBRARY_IMPL()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a800b28569c0f7d0d9732bf8b6342d9f3
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERK7Library
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERK7Library
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryaSERK7Library
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERR7Library
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERR7Library
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryaSERR7Library
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryD0Ev
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defERRN3c1014FunctionSchemaERKNSt6vectorIN2at3TagEEE17_RegisterOrVerify
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a59330802ab9deaff247d32a22092bdfb
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEPKcRKNSt6vectorIN2at3TagEEE17_RegisterOrVerify
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library17set_python_moduleEPKcPKc
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library20impl_abstract_pystubEPKcPKc
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
NameOrSchemahttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library3defER7LibraryRR12NameOrSchemaRR4FuncRKNSt6vectorIN2at3TagEEE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library3defER7LibraryRR12NameOrSchemaRR4FuncRKNSt6vectorIN2at3TagEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library3defER7LibraryRR12NameOrSchemaRR4FuncRKNSt6vectorIN2at3TagEEE
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a398873331a101b4456ea3c0ebd6d766f
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a59330802ab9deaff247d32a22092bdfb
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Namehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7Library4NameRR4Func17_RegisterOrVerify
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7Library4NameRR4Func17_RegisterOrVerify
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7Library4NameRR4Func17_RegisterOrVerify
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a398873331a101b4456ea3c0ebd6d766f
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a398873331a101b4456ea3c0ebd6d766f
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch7Library8_resolveEPKc
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Namehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library12impl_UNBOXEDER7Library4NameP4Func
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library12impl_UNBOXEDER7Library4NameP4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library12impl_UNBOXEDER7Library4NameP4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEN6detail12SelectiveStrIXL0EEEEA[maybe_unused]_RKNSt6vectorIN2at3TagEEE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEN6detail12SelectiveStrIXL1EEEERKNSt6vectorIN2at3TagEEE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL0EEEERR4FuncA[maybe_unused]_RKNSt6vectorIN2at3TagEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL0EEEERR4FuncA[maybe_unused]_RKNSt6vectorIN2at3TagEEE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL1EEEERR4FuncRKNSt6vectorIN2at3TagEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL1EEEERR4FuncRKNSt6vectorIN2at3TagEEE
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Dispatchhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR8DispatchRR4Func
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR8DispatchRR4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR8DispatchRR4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL0EEEEP4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL0EEEEP4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Dispatchhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR8DispatchRR4Func
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR8DispatchRR4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR8DispatchRR4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL1EEEEP4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL1EEEEP4Func
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library8fallbackER7LibraryRR4Func
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library8fallbackER7LibraryRR4Func
TORCH_LIBRARY_IMPL()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchlibrary_8h_1a800b28569c0f7d0d9732bf8b6342d9f3
class_https://docs.pytorch.org/cppdocs/api/library/custom_classes.html#_CPPv4I0EN5torch6class_E
CurClasshttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEERKNSt6stringE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEERKNSt6stringE
class_https://docs.pytorch.org/cppdocs/api/library/custom_classes.html#_CPPv4I0EN5torch6class_E
CurClasshttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEEN6detail12SelectiveStrIXL1EEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEEN6detail12SelectiveStrIXL1EEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN6detail16ClassNotSelectedEN6detail12SelectiveStrIXL0EEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library5resetEv
class_https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassERKNSt6stringE
CurClasshttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassERKNSt6stringE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassERKNSt6stringE
class_https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassEN6detail12SelectiveStrIXL1EEEE
CurClasshttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassEN6detail12SelectiveStrIXL1EEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassEN6detail12SelectiveStrIXL1EEEE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#cppfunction
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionEP4FuncNSt11enable_if_tIN3c104guts16is_function_typeI4FuncE5valueENSt9nullptr_tEEE
Funchttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionEP4FuncNSt11enable_if_tIN3c104guts16is_function_typeI4FuncE5valueENSt9nullptr_tEEE
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionE7FuncPtrNSt11enable_if_tIN3c1032is_compile_time_function_pointerI7FuncPtrE5valueENSt9nullptr_tEEE
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionE7FuncPtrNSt11enable_if_tIN3c1032is_compile_time_function_pointerI7FuncPtrE5valueENSt9nullptr_tEEE
Lambdahttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionERR6LambdaNSt11enable_if_tIN3c104guts10is_functorINSt7decay_tI6LambdaEEE5valueENSt9nullptr_tEEE
Lambdahttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction11CppFunctionERR6LambdaNSt11enable_if_tIN3c104guts10is_functorINSt7decay_tI6LambdaEEE5valueENSt9nullptr_tEEE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunction11CppFunctionERK11CppFunction
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunction11CppFunctionERR11CppFunction
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
torch::Library::fallback()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_library_1a662da4bc1e19e98ff41d3e483d0865bc
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
KernelFunctorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch11CppFunction20makeFromBoxedFunctorE11CppFunctionNSt10unique_ptrI13KernelFunctorEE
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0_NSt11enable_if_tIN3c104guts16is_function_typeI7FuncPtrE5valueENSt9nullptr_tEEEEN5torch11CppFunction23makeFromUnboxedFunctionE11CppFunctionP7FuncPtr
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0_NSt11enable_if_tIN3c104guts16is_function_typeI7FuncPtrE5valueENSt9nullptr_tEEEEN5torch11CppFunction23makeFromUnboxedFunctionE11CppFunctionP7FuncPtr
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0_NSt11enable_if_tIN3c1032is_compile_time_function_pointerI7FuncPtrE5valueENSt9nullptr_tEEEEN5torch11CppFunction23makeFromUnboxedFunctionE11CppFunction7FuncPtr
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11CppFunctionE
FuncPtrhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0_NSt11enable_if_tIN3c1032is_compile_time_function_pointerI7FuncPtrE5valueENSt9nullptr_tEEEEN5torch11CppFunction23makeFromUnboxedFunctionE11CppFunction7FuncPtr
#https://docs.pytorch.org/cppdocs/api/library/registration.html#ordereddict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict8IteratorE
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict13ConstIteratorE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictENSt6stringE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERK11OrderedDict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERK11OrderedDict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictaSERK11OrderedDict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERR11OrderedDict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERR11OrderedDict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictaSERR11OrderedDict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictD0Ev
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictENSt16initializer_listI4ItemEE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict_1_1_item
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict15key_descriptionEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5frontEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5frontEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4backEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4backEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictixE6size_t
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDictixE6size_t
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictixERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
find()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict_1a5ba19de165424dfcb5a99677657bffb3
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDictixERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
find()https://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict_1a5ba19de165424dfcb5a99677657bffb3
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4findERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4findERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict8containsERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Iteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict8IteratorE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5beginEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
ConstIteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict13ConstIteratorE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5beginEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Iteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict8IteratorE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict3endEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
ConstIteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict13ConstIteratorE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict3endEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4sizeEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict8is_emptyEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict7reserveE6size_t
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Khttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDict6insertER5ValueRR1KRR1V
Vhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDict6insertER5ValueRR1KRR1V
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDict6insertER5ValueRR1KRR1V
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6insertE3KeyRR5Value
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6updateERR11OrderedDict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6updateERK11OrderedDict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5eraseERK3Key
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5clearEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5itemsEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4keysEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict6valuesEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5pairsEv
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#PyTorchclasstorch_1_1_ordered_dict
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Khttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
Vhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Khttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
Vhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4Item4ItemE3Key5Value
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemmlEv
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4ItemmlEv
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemptEv
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4ItemptEv
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item3keyEv
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4Item5valueEv
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item5valueEv
Keyhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Valuehttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
#https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item4pairEv
#https://docs.pytorch.org/cppdocs/api/library/registration.html#functions
#https://docs.pytorch.org/cppdocs/api/library/registration.html#dispatch-keys
previous Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
next Custom Classes https://docs.pytorch.org/cppdocs/api/library/custom_classes.html
PyData Sphinx Themehttps://pydata-sphinx-theme.readthedocs.io/en/stable/index.html
previous Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
next Custom Classes https://docs.pytorch.org/cppdocs/api/library/custom_classes.html
Macroshttps://docs.pytorch.org/cppdocs/api/library/registration.html#macros
TORCH_LIBRARYhttps://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library
TORCH_LIBRARYhttps://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY
TORCH_LIBRARY_IMPLhttps://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library-impl
TORCH_LIBRARY_IMPLhttps://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY_IMPL
TORCH_LIBRARY_FRAGMENThttps://docs.pytorch.org/cppdocs/api/library/registration.html#torch-library-fragment
TORCH_LIBRARY_FRAGMENThttps://docs.pytorch.org/cppdocs/api/library/registration.html#c.TORCH_LIBRARY_FRAGMENT
Classeshttps://docs.pytorch.org/cppdocs/api/library/registration.html#classes
Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#library
torch::Libraryhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryE
Library()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERK7Library
operator=()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryaSERK7Library
Library()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library7LibraryERR7Library
operator=()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryaSERR7Library
~Library()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7LibraryD0Ev
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defERRN3c1014FunctionSchemaERKNSt6vectorIN2at3TagEEE17_RegisterOrVerify
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEPKcRKNSt6vectorIN2at3TagEEE17_RegisterOrVerify
set_python_module()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library17set_python_moduleEPKcPKc
impl_abstract_pystub()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library20impl_abstract_pystubEPKcPKc
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library3defER7LibraryRR12NameOrSchemaRR4FuncRKNSt6vectorIN2at3TagEEE
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7Library4NameRR4Func17_RegisterOrVerify
_resolve()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch7Library8_resolveEPKc
impl_UNBOXED()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library12impl_UNBOXEDER7Library4NameP4Func
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEN6detail12SelectiveStrIXL0EEEEA[maybe_unused]_RKNSt6vectorIN2at3TagEEE
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NR5torch7Library3defEN6detail12SelectiveStrIXL1EEEERKNSt6vectorIN2at3TagEEE
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL0EEEERR4FuncA[maybe_unused]_RKNSt6vectorIN2at3TagEEE
def()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library3defER7LibraryN6detail12SelectiveStrIXL1EEEERR4FuncRKNSt6vectorIN2at3TagEEE
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR4Func
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL0EEEERR8DispatchRR4Func
impl_UNBOXED()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL0EEEEP4Func
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR4Func
impl()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00ENR5torch7Library4implER7LibraryN6detail12SelectiveStrIXL1EEEERR8DispatchRR4Func
impl_UNBOXED()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library12impl_UNBOXEDER7LibraryN6detail12SelectiveStrIXL1EEEEP4Func
fallback()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0ENR5torch7Library8fallbackER7LibraryRR4Func
class_()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEERKNSt6stringE
class_()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN5torch6class_I8CurClassEEN6detail12SelectiveStrIXL1EEEE
class_()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_EN6detail16ClassNotSelectedEN6detail12SelectiveStrIXL0EEEE
reset()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch7Library5resetEv
class_()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassERKNSt6stringE
class_()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I0EN5torch7Library6class_E6class_I8CurClassEN6detail12SelectiveStrIXL1EEEE
CppFunctionhttps://docs.pytorch.org/cppdocs/api/library/registration.html#cppfunction
OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#ordereddict
torch::OrderedDicthttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDictE
Iteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict8IteratorE
ConstIteratorhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict13ConstIteratorE
OrderedDict()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictENSt6stringE
OrderedDict()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERK11OrderedDict
operator=()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictaSERK11OrderedDict
OrderedDict()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictERR11OrderedDict
operator=()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictaSERR11OrderedDict
~OrderedDict()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictD0Ev
OrderedDict()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict11OrderedDictENSt16initializer_listI4ItemEE
key_description()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict15key_descriptionEv
front()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5frontEv
front()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5frontEv
back()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4backEv
back()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4backEv
operator[]()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictixE6size_t
operator[]()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDictixE6size_t
operator[]()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDictixERK3Key
operator[]()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDictixERK3Key
find()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4findERK3Key
find()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4findERK3Key
contains()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict8containsERK3Key
begin()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5beginEv
begin()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5beginEv
end()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict3endEv
end()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict3endEv
size()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4sizeEv
is_empty()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict8is_emptyEv
reserve()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict7reserveE6size_t
insert()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDict6insertER5ValueRR1KRR1V
insert()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6insertE3KeyRR5Value
update()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6updateERR11OrderedDict
update()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict6updateERK11OrderedDict
erase()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5eraseERK3Key
clear()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict5clearEv
items()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5itemsEv
keys()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4keysEv
values()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict6valuesEv
pairs()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict5pairsEv
operator==https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4I00EN5torch11OrderedDicteqEbRK11OrderedDictI1K1VERK11OrderedDictI1K1VE
torch::OrderedDict::Itemhttps://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemE
Item()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4Item4ItemE3Key5Value
operator*()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemmlEv
operator*()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4ItemmlEv
operator->()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4ItemptEv
operator->()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4ItemptEv
key()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item3keyEv
value()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4N5torch11OrderedDict4Item5valueEv
value()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item5valueEv
pair()https://docs.pytorch.org/cppdocs/api/library/registration.html#_CPPv4NK5torch11OrderedDict4Item4pairEv
Functionshttps://docs.pytorch.org/cppdocs/api/library/registration.html#functions
Dispatch Keyshttps://docs.pytorch.org/cppdocs/api/library/registration.html#dispatch-keys
Show Source https://docs.pytorch.org/cppdocs/_sources/api/library/registration.md.txt
ExecuTorchhttps://docs.pytorch.org/executorch
Helionhttps://docs.pytorch.org/helion
torchaohttps://docs.pytorch.org/ao
kinetohttps://github.com/pytorch/kineto
torchtitanhttps://github.com/pytorch/torchtitan
TorchRLhttps://docs.pytorch.org/rl
torchvisionhttps://docs.pytorch.org/vision
torchaudiohttps://docs.pytorch.org/audio
tensordicthttps://docs.pytorch.org/tensordict
PyTorch on XLA Deviceshttps://docs.pytorch.org/xla
View Docshttps://docs.pytorch.org/docs/stable/index.html
View Tutorialshttps://docs.pytorch.org/tutorials
View Resourceshttps://pytorch.org/resources
Privacy Policyhttps://www.linuxfoundation.org/privacy/
https://www.facebook.com/pytorch
https://twitter.com/pytorch
https://www.youtube.com/pytorch
https://www.linkedin.com/company/pytorch
https://pytorch.slack.com
https://pytorch.org/wechat
Policieshttps://www.linuxfoundation.org/legal/policies
Trademark Usagehttps://www.linuxfoundation.org/trademark-usage
Privacy Policyhttp://www.linuxfoundation.org/privacy
Cookies Policyhttps://opensource.fb.com/legal/cookie-policy
Sphinxhttps://www.sphinx-doc.org/
PyData Sphinx Themehttps://pydata-sphinx-theme.readthedocs.io/en/stable/index.html

Viewport: width=device-width, initial-scale=1


URLs of crawlers that visited me.