MCPcopy Create free account
hub / github.com/ARM-software/ComputeLibrary / fill_tensor_uniform

Method fill_tensor_uniform

tests/AssetsLibrary.h:728–833  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

726
727template <typename T>
728void AssetsLibrary::fill_tensor_uniform(T &&tensor, std::random_device::result_type seed_offset) const
729{
730 switch (tensor.data_type())
731 {
732 case DataType::U8:
733 case DataType::QASYMM8:
734 {
735 std::uniform_int_distribution<unsigned int> distribution_u8(std::numeric_limits<uint8_t>::lowest(),
736 std::numeric_limits<uint8_t>::max());
737 fill(tensor, distribution_u8, seed_offset);
738 break;
739 }
740 case DataType::S8:
741 case DataType::QSYMM8:
742 case DataType::QSYMM8_PER_CHANNEL:
743 case DataType::QASYMM8_SIGNED:
744 {
745 std::uniform_int_distribution<int> distribution_s8(std::numeric_limits<int8_t>::lowest(),
746 std::numeric_limits<int8_t>::max());
747 fill(tensor, distribution_s8, seed_offset);
748 break;
749 }
750 case DataType::U16:
751 case DataType::QASYMM16:
752 {
753 std::uniform_int_distribution<uint16_t> distribution_u16(std::numeric_limits<uint16_t>::lowest(),
754 std::numeric_limits<uint16_t>::max());
755 fill(tensor, distribution_u16, seed_offset);
756 break;
757 }
758 case DataType::S16:
759 case DataType::QSYMM16:
760 {
761 std::uniform_int_distribution<int16_t> distribution_s16(std::numeric_limits<int16_t>::lowest(),
762 std::numeric_limits<int16_t>::max());
763 fill(tensor, distribution_s16, seed_offset);
764 break;
765 }
766 case DataType::U32:
767 {
768 std::uniform_int_distribution<uint32_t> distribution_u32(std::numeric_limits<uint32_t>::lowest(),
769 std::numeric_limits<uint32_t>::max());
770 fill(tensor, distribution_u32, seed_offset);
771 break;
772 }
773 case DataType::S32:
774 {
775 std::uniform_int_distribution<int32_t> distribution_s32(std::numeric_limits<int32_t>::lowest(),
776 std::numeric_limits<int32_t>::max());
777 fill(tensor, distribution_s32, seed_offset);
778 break;
779 }
780 case DataType::U64:
781 {
782 std::uniform_int_distribution<uint64_t> distribution_u64(std::numeric_limits<uint64_t>::lowest(),
783 std::numeric_limits<uint64_t>::max());
784 fill(tensor, distribution_u64, seed_offset);
785 break;

Callers 15

accumulateFunction · 0.80
accumulate_weightedFunction · 0.80
accumulate_squaredFunction · 0.80
TEST_CASEFunction · 0.80
TEST_CASEFunction · 0.80
fillMethod · 0.80
fillMethod · 0.80
fillMethod · 0.80
fill_zeroMethod · 0.80
fillMethod · 0.80
fillMethod · 0.80
fillMethod · 0.80

Calls 3

lowestFunction · 0.85
fillFunction · 0.85
data_typeMethod · 0.45

Tested by

no test coverage detected