31 float *scratch_output)
33 if (!input || !output || n == 0)
return;
34 if (!scratch_input || !scratch_output)
return;
46 const uint16_t *d_output,
50 float *scratch_d_output,
51 float *scratch_d_input)
53 if (!input || !d_output || !d_input || n == 0)
return;
54 if (!scratch_input || !scratch_d_output || !scratch_d_input)
return;
static void float_tensor_to_bf16(const float *src, uint16_t *dst, size_t count)
static void bf16_tensor_to_float(const uint16_t *src, float *dst, size_t count)
void sigmoid_backward(const float *input, const float *d_output, float *d_input, size_t n)
void sigmoid_forward(const float *input, float *output, size_t n)
void sigmoid_forward_bf16(const uint16_t *input, uint16_t *output, size_t n, float *scratch_input, float *scratch_output)
void sigmoid_backward_bf16(const uint16_t *input, const uint16_t *d_output, uint16_t *d_input, size_t n, float *scratch_input, float *scratch_d_output, float *scratch_d_input)