21 const std::string& layerName,
22 unsigned int slotIndex)
28 std::vector<unsigned int> strides(numDims, 0);
29 strides[numDims - 1] = inputShape[numDims - 1];
31 for (
unsigned int i = 2; i <= numDims; i++)
33 strides[numDims - i] = strides[numDims - i + 1] * inputShape[numDims - i];
37 std::cout <<
"\"layerGuid\": " << guid <<
", ";
38 std::cout <<
"\"layerName\": \"" << layerName <<
"\", ";
39 std::cout <<
"\"outputSlot\": " << slotIndex <<
", ";
40 std::cout <<
"\"shape\": ";
43 for (
unsigned int i = 0; i < numDims; i++)
45 std::cout << inputShape[i];
53 std::cout <<
"\"min\": " 54 <<
static_cast<float>(*std::min_element(inputData, inputData + numElements)) <<
", ";
56 std::cout <<
"\"max\": " 57 <<
static_cast<float>(*std::max_element(inputData, inputData + numElements)) <<
", ";
59 std::cout <<
"\"data\": ";
61 for (
unsigned int i = 0; i < numElements; i++)
63 for (
unsigned int j = 0; j < numDims; j++)
65 if (i % strides[j] == 0)
71 std::cout << static_cast<float>(inputData[i]);
73 for (
unsigned int j = 0; j < numDims; j++)
75 if ((i+1) % strides[j] == 0)
81 if (i != numElements - 1)
87 std::cout <<
" }" << std::endl;
93 const std::string& layerName,
94 unsigned int slotIndex);
97 const Half* inputData,
99 const std::string& layerName,
100 unsigned int slotIndex);
103 const float* inputData,
105 const std::string& layerName,
106 unsigned int slotIndex);
109 const uint8_t* inputData,
111 const std::string& layerName,
112 unsigned int slotIndex);
115 const int8_t* inputData,
117 const std::string& layerName,
118 unsigned int slotIndex);
121 const int16_t* inputData,
123 const std::string& layerName,
124 unsigned int slotIndex);
127 const int32_t* inputData,
129 const std::string& layerName,
130 unsigned int slotIndex);
const TensorShape & GetShape() const
template void Debug< int8_t >(const TensorInfo &inputInfo, const int8_t *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
Copyright (c) 2021 ARM Limited and Contributors.
template void Debug< BFloat16 >(const TensorInfo &inputInfo, const BFloat16 *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
template void Debug< float >(const TensorInfo &inputInfo, const float *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
template void Debug< int16_t >(const TensorInfo &inputInfo, const int16_t *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
template void Debug< uint8_t >(const TensorInfo &inputInfo, const uint8_t *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
void Debug(const TensorInfo &inputInfo, const T *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
template void Debug< Half >(const TensorInfo &inputInfo, const Half *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
template void Debug< int32_t >(const TensorInfo &inputInfo, const int32_t *inputData, LayerGuid guid, const std::string &layerName, unsigned int slotIndex)
unsigned int GetNumDimensions() const
unsigned int GetNumElements() const