Baremetal-NN
Baremetal-NN API documentation
Loading...
Searching...
No Matches
nn_i32.h File Reference

Baremetal-NN Library functions for signed long integer (i32) numbers. More...

#include "float16.h"
Include dependency graph for nn_i32.h:

Go to the source code of this file.

Data Structures

struct  Tensor0D_I32
 A 0D tensor (scalar) with a int32_t data type. More...
 
struct  Tensor1D_I32
 A 1D tensor with a int32_t data type. More...
 
struct  Tensor2D_I32
 A 2D tensor with a int32_t data type. More...
 

Functions

Tensor0D_I32nn_tensor0d_i32 (int32_t data)
 Creates a 0D tensor with type I32. More...
 
Tensor1D_I32nn_tensor1d_i32 (size_t shape[1], const int32_t *data)
 Creates a 1D tensor with type I32. More...
 
Tensor2D_I32nn_tensor2d_i32 (size_t shape[2], const int32_t *data)
 Creates a 2D tensor with type I32. More...
 
Tensor0D_I32nn_zeros0d_i32 ()
 Creates a 0D tensor with type I32 and initializes it to 0. More...
 
Tensor1D_I32nn_zeros1d_i32 (size_t shape[1])
 Creates a 1D tensor with type I32 and initializes it to 0. More...
 
Tensor2D_I32nn_zeros2d_i32 (size_t shape[2])
 Creates a 2D tensor with type I32 and initializes it to 0. More...
 
Tensor0D_I32nn_ones0d_i32 ()
 Creates a 0D tensor with type I32 and initializes it to 1. More...
 
Tensor1D_I32nn_ones1d_i32 (size_t shape[1])
 Creates a 1D tensor with type I32 and initializes it to 1. More...
 
Tensor2D_I32nn_ones2d_i32 (size_t shape[2])
 Creates a 2D tensor with type I32 and initializes it to 1. More...
 
Tensor0D_I32nn_full0d_i32 (int32_t data)
 Creates a 0D tensor with type I32 and initializes it to a given value. More...
 
Tensor1D_I32nn_full1d_i32 (size_t shape[1], int32_t data)
 Creates a 1D tensor with type I32 and initializes it to a given value. More...
 
Tensor2D_I32nn_full2d_i32 (size_t shape[2], int32_t data)
 Creates a 2D tensor with type I32 and initializes it to a given value. More...
 
Tensor0D_I32nn_rand0d_i32 ()
 Creates a 0D tensor with type I32 and initializes it to a random value. More...
 
Tensor1D_I32nn_rand1d_i32 (size_t shape[1])
 Creates a 1D tensor with type I32 and initializes it to a random value. More...
 
Tensor2D_I32nn_rand2d_i32 (size_t shape[2])
 Creates a 2D tensor with type I32 and initializes it to a random value. More...
 
void nn_print_i32 (int32_t v)
 Prints a int32_t number. More...
 
void nn_print_tensor1d_i32 (const Tensor1D_I32 *tensor)
 Prints the content of a 1D tensor with type I32. More...
 
void nn_print_tensor2d_i32 (const Tensor2D_I32 *tensor)
 Prints the content of a 2D tensor with type I32. More...
 
uint8_t nn_equals0d_i32 (const Tensor0D_I32 *a, const Tensor0D_I32 *b)
 Checks if two 0D tensors with type I32 are equal. More...
 
uint8_t nn_equals1d_i32 (const Tensor1D_I32 *a, const Tensor1D_I32 *b)
 Checks if two 1D tensors with type I32 are equal. More...
 
uint8_t nn_equals2d_i32 (const Tensor2D_I32 *a, const Tensor2D_I32 *b)
 Checks if two 2D tensors with type I32 are equal. More...
 
void nn_add1d_i32 (Tensor1D_I32 *y, const Tensor1D_I32 *x1, const Tensor1D_I32 *x2)
 Adds x1 and x2 element-wise and stores the result in y. More...
 
void nn_add2d_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *x1, const Tensor2D_I32 *x2)
 Adds x1 and x2 element-wise and stores the result in y. More...
 
void nn_addscalar1d_i32 (Tensor1D_I32 *y, const Tensor1D_I32 *x, int32_t scalar)
 Adds a scalar to a 1D tensor and stores the result in y. More...
 
void nn_addscalar2d_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *x, int32_t scalar)
 Adds a scalar to a 2D tensor and stores the result in y. More...
 
void nn_dot_i32 (Tensor1D_I32 *y, const Tensor1D_I32 *x1, const Tensor1D_I32 *x2)
 Computes the dot product of two 1D tensors and stores the result in y. More...
 
void nn_mm_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *x1, const Tensor2D_I32 *x2)
 Performs matrix multiplication of two 2D tensors and stores the result in y. More...
 
void nn_addmm_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *c, const Tensor2D_I32 *x1, const Tensor2D_I32 *x2)
 Performs matrix multiplication of two 2D tensors and adds the result to a third tensor. More...
 
void nn_linear_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *x, const Tensor2D_I32 *weight, const Tensor1D_I32 *bias)
 Linear neural network layer. More...
 
void nn_relu2d_i32 (Tensor2D_I32 *y, const Tensor2D_I32 *x)
 Applies the ReLU activation function to a 2D tensor. More...
 

Detailed Description

Baremetal-NN Library functions for signed long integer (i32) numbers.

This file contains the declarations of the functions and structures for the Baremetal-NN Library.