template <IndexType InDims, IndexType OutDims>
class AffineTransformSparseInput {
public:
- // Input/output type
// Input/output type
using InputType = std::uint8_t;
using OutputType = std::int32_t;
return hashValue;
}
- static IndexType get_weight_index_scrambled(IndexType i)
+ static constexpr IndexType get_weight_index_scrambled(IndexType i)
{
return
(i / ChunkSize) % (PaddedInputDimensions / ChunkSize) * OutputDimensions * ChunkSize +
i % ChunkSize;
}
- static IndexType get_weight_index(IndexType i)
+ static constexpr IndexType get_weight_index(IndexType i)
{
#if defined (USE_SSSE3)
return get_weight_index_scrambled(i);
return !stream.fail();
}
// Forward propagation
- const OutputType* propagate(
+ void propagate(
const InputType* input, OutputType* output) const {
#if defined (USE_SSSE3)
PaddedInputDimensions,
OutputDimensions>(output, weights, biases, input);
#endif
-
- return output;
}
private: