Accelerating and Compressing Deep Neural Networks for Massive MIMO CSI
  Feedback
The recent advances in machine learning and deep neural networks have made
them attractive candidates for wireless communications functions such as
channel estimation, decoding, and downlink channel state information (CSI)
compression. However, most of these neural networks are large and inefficient
making it a barrier for deployment in practical wireless systems that require
low-latency and low memory footprints for individual network functions. To
mitigate these limitations, we propose accelerated and compressed efficient
neural networks for massive MIMO CSI feedback. Specifically, we have thoroughly
investigated the adoption of network pruning, post-training dynamic range
quantization, and weight clustering to optimize CSI feedback compression for
massive MIMO systems. Furthermore, we have deployed the proposed model
compression techniques on commodity hardware and demonstrated that in order to
achieve inference gains, specialized libraries that accelerate computations for
sparse neural networks are required. Our findings indicate that there is
remarkable value in applying these model compression techniques and the
proposed joint pruning and quantization approach reduced model size by 86.5%
and inference time by 76.2% with minimal impact to model accuracy. These
compression methods are crucial to pave the way for practical adoption and
deployments of deep learning-based techniques in commercial wireless systems.
Omar Erak, Hatem Abou-Zeid
# Accelerating and Compressing Deep Neural Networks for Massive MIMO CSI Feedback

###### Abstract

The recent advances in machine learning and deep neural networks have made them attractive candidates for wireless communications functions such as channel estimation, decoding, and downlink channel state information (CSI) compression. However, most of these neural networks are large and inefficient making it a barrier for deployment in practical wireless systems that require low-latency and low memory footprints for individual network functions. To mitigate these limitations, we propose accelerated and compressed efficient neural networks for massive MIMO CSI feedback. Specifically, we have thoroughly investigated the adoption of network pruning, post-training dynamic range quantization, and weight clustering to optimize CSI feedback compression for massive MIMO systems. Furthermore, we have deployed the proposed model compression techniques on commodity hardware and demonstrated that in order to achieve inference gains, specialized libraries that accelerate computations for sparse neural networks are required. Our findings indicate that there is remarkable value in applying these model compression techniques and the proposed joint pruning and quantization approach reduced model size by 86.5% and inference time by 76.2% with minimal impact to model accuracy. These compression methods are crucial to pave the way for practical adoption and deployments of deep learning-based techniques in commercial wireless systems.

 Deep learning, CSI feedback, accelerated neural networks, model compression, massive MIMO.

## I Introduction

In recent years, machine learning (ML) has proven to be a fast, reliable, and robust alternative for solving complex problems in different fields, such as computer vision [1], autonomous driving [2] and medical diagnosis [3]. As a result, there is a growing interest to explore the potential applications of machine learning in wireless communications to improve performance and reliability. For example, [4] have demonstrated promising performance for different coding schemes such as low-density parity-check (LDPC) and BCH codes using a graph neural network (GNN)-based architecture for channel decoding. The work in [5] has shown that it is possible to use a neural network (NN) for the synchronization of narrowband physical random-access channel (NPRACH) for uplink narrowband internet of things (NB-IoT). Machine learning has also been used for downlink applications. CsiNet was developed using deep learning and has proven to be a successful channel state information (CSI) sensing and recovery mechanism that outperformed existing compressive sensing (CS)-based methods [6].

The performance and reliability improvements that have been achieved as a result of applying machine learning techniques in wireless communications continues to drive further research forward. However, these improvements come with a hefty cost that is often neglected. These machine learning solutions are usually computationally demanding and they require a large amount of resources, including memory, CPU, and energy to train and deploy the models, and this has significantly hindered their practical deployment.

Recently, there has been a growing focus on developing tiny and efficient machine learning models that are small enough to run on embedded systems with limited resources. By applying pruning, trained quantization and huffman coding [7] were able to compress AlexNet, LeNet and VGG-16 by 35\(\times\), 39\(\times\) and 49\(\times\) respectively with no loss in accuracy. More recently, a convolutional neural network (CNN) architecture called SqueezeNet was developed and it was able to achieve the same accuracy AlexNet achieved on ImageNet whilst being 510\(\times\) smaller in size [8]. These examples showcase the tremendous success of developing tiny, efficient neural networks in computer vision. However, there has been limited work accelerating and compressing deep neural networks in wireless communications.

Our work aims to demonstrate the potential and importance of accelerating and compressing deep learning based wireless communications solutions. Developing efficient models will pave the way for practical adoption and deployments in commercial systems. The main contributions of this paper are:

* as well as the results of combining multiple techniques together.
* A thorough investigation of the degree of neural network pruning and different quantization levels has been conducted, and new insights on the resulting performances and trade-offs are drawn.
* We have deployed the proposed model compression techniques on a Raspberry Pi 4 and demonstrated that to achieve inference gains, specialized libraries that accelerate computations for sparse neural networks are required. To the best of our knowledge, this is the first study to deploy CsiNet compressed models on commodity hardware, use acceleration libraries, and measure inference times.
* The proposed compression method that combines network pruning and quantization achieved an average of 86.5% reduction in model size and reduced inference time by 76.2% compared to the original CsiNet models with minimal impact to model accuracy.

The results of this paper highlight the significant gains model compression techniques can have for wireless communications deep learning models. All the code to reproduce our results and conduct further research to other CSI compression networks, and other wireless communications models will be made available upon acceptance.

The rest of this paper is organized as follows. In Section II we provide a summary of related research. Following that, Section III presents the system model of CsiNet [6] and our proposed model compression techniques for CsiNet. In Section IV we describe our experimental setup and evaluation metrics, and Section V discusses the results of our findings. Finally, we discuss conclusions and future directions in Section VI.

## II Related Work

A limited number of studies have investigated and researched the development of the low-complexity deep learning models in the context of ML for wireless communications. Recently, [9] developed a tiny ML approach for channel estimation and signal detection. Their approach splits each large layer in a deep neural network into three smaller sub-layers, and they were able to achieve 4.5\(\times\) reduction in model storage. In [10], the authors have explored the applications of some model compression techniques and demonstrated their potential for signal detection in MIMO communications and CSI feedback compression. The authors of [11] and [12] developed lightweight neural networks for CSI feedback in massive MIMO. In [11], a new lightweight network called ShuffleCsiNet that achieved around 5\(\times\) reduction in parameter number compared to ConvCsiNet is proposed, and in [12] the authors reduce the complexity of existing networks by 25.50%-43.46% using knowledge distillation, with minimal impacts to accuracy.

Despite the promising results achieved, a comprehensive understanding of neural network pruning, quantization, and weight clustering on deep learning compression models for massive MIMO CSI feedback has not been conducted. To this end, in this paper we have applied these standard model compression techniques and analyzed both their individual and combined performances to a deep learning network for CSI feedback compression. We have measured the key quantitative metrics of model storage, prediction accuracy, and inference time. Different from prior work, we measure real-world _inference time_ on a Raspberry Pi 4 after deploying the compressed deep learning models on the hardware. We then show that specialized libraries that can accelerate the computations for sparse neural networks are required to realize the inference gains that are cited in literature as theoretical reductions in computational complexity. Our results indicate that without such accelerators there may be limited real-world gains in inference time.

## III Accelerated and Compressed Deep Learning Models for CSI Feedback

### _System Model of CsiNet_

CsiNet is a CNN that is used for channel state information (CSI) sensing and recovery mechanism. This model uses an encoder (sensing) and decoder (recovery) to compress CSI at the user equipment (UE) and reconstruct it at the base station (BS). CsiNet outperformed traditional compressive sensing algorithms at all compression ratios [6].

When developing CsiNet, the authors of [6] considered a massive single-cell downlink MIMO system with a single receiver antenna at the UE. The number of transmitting antennas at the BS is \(N_{t}\gg 1\). This system operates in OFDM over \(\hat{N_{c}}\) subcarriers.

Let \(\hat{\textbf{H}}\) be the CSI matrix in the spatial frequency domain acquired at the UE. To reduce the significant impact of feedback, [6] proposed converting \(\hat{\textbf{H}}\) into an angular delay domain matrix **H** using a 2D discrete Fourier transform (DFT) as follows:

\[\textbf{H}=\textbf{F}_{d}\hat{\textbf{H}}\textbf{F}_{a}^{H} \tag{1}\]

where \(\textbf{F}_{d}\) is a \(\hat{N_{c}}\)\(\times\)\(\hat{N_{c}}\) DFT matrix and \(\textbf{F}_{a}\) is a \(N_{t}\)\(\times\)\(N_{t}\) DFT matrix. The total number of feedback parameters is given by \(N\) = \(N_{t}\)\(\times\)\(\hat{N_{c}}\).

CsiNet implements an encoder that takes the angular delay domain matrix **H** as input applies the encoding function **f** and returns an \(M\) dimensional encoded vector **s**, where \(M\)\(<\)\(N\) as shown below:

\[\textbf{s}=\textbf{f(H)} \tag{2}\]

The compression ratio \(\gamma\) for the encoded vector is given by \(M/N\). In this paper, we will evaluate the performance of CsiNet, and the proposed efficient and compressed CsiNet networks for various compression ratios. CsiNet also implements a decoder at the BS that takes **s** as the input and ideally returns the original angular delay domain matrix **H** as follows:

\[\textbf{H}=\textbf{f}^{-1}\textbf{(s)} \tag{3}\]

Let \(\tilde{\textbf{H}}\) be the recovered channel from CsiNet. To evaluate the performance of the CSI reconstruction the normalized mean square error (NMSE) is used as follows:

\[\textbf{NMSE}=\mathbb{E}\left\{\frac{||\tilde{\textbf{H}}-\textbf{H}||_{2}^{ 2}}{||\textbf{H}||_{2}^{2}}\right\} \tag{4}\]

Another metric used by [6] to evaluate the performance of CsiNet is the cosine similarity \(\rho\) to measure the quality of the beamforming vector \(\textbf{v}_{n}\). \(\rho\) and \(\textbf{v}_{n}\) are given as follows:

\[\textbf{v}_{n}=\frac{\textbf{h}_{n}}{||\textbf{h}_{n}||_{2}} \tag{5}\]

\[\rho=\mathbb{E}\left\{\frac{1}{\hat{N_{c}}}\sum_{n=1}^{\hat{N_{c}}}\frac{|| \textbf{h}_{n}^{H}\tilde{\textbf{h}}_{n}|}{||\textbf{h}_{n}||_{2}||\textbf{h}_{ n}||_{2}}\right\} \tag{6}\]
original channel vector of the \(n\)th subcarrier.

The training and testing samples used in this paper are equivalent to the ones used by [6] to ensure a fair comparison is made. The channel matrices for two environments are created using the COST 2100 model [13]. The first environment is the indoor picocellular at the 5.3GHz band and the second environment is the outdoor rural environment at the 300 MHz band. All parameters follow their default setting in [13].

### _Compression Techniques_

In this work, we apply three common model compression techniques individually and then we combine post-training quantization with pruning and with weight clustering. Figure 1 summarizes the workflow used to apply the different techniques and evaluate their overall performance.

#### Iii-B1 **Magnitude-Based Weight Pruning**

Pruning is a model compression technique used to remove parameters from a large, dense network, yielding a sparse subnetwork that is smaller in size and more computationally efficient compared to the original network. There are different pruning methods and workflows, in this paper we apply magnitude-based weight pruning which works by ranking connections in a network according to the absolute values of their weights, i.e how much they contribute to the overall output. A target sparsity ratio is selected and low-weight connections that have minimal impact are set to 0 and then removed to achieve the targeted sparsity ratio. The resultant sparse model is then retrained so new weights can be determined in order to maintain similar accuracy [14][15].

Firstly, we restructure the original model to comply with the constrains of XNNPack sparse inference for CNN models [16][17]. XNNPack is a highly optimized library of neural network inference operators that allows us to improve the inference performance for the sparse pruned model. Common nueral network operators that are used in the original CsiNet model and are supported by XNNPack include: 2D Convolution, Leaky ReLU and sigmoid [6][17]. Then, we apply magnitude based weight pruning to the restructured CsiNet model, we apply pruning to the dense layers and we avoid pruning the first and final layers so that the model's accuracy is not significantly impacted. We also use the PruneForLatencyOnXNNPack pruning policy which ensures that only parts of the model that are compliant with XNNPack sparse inference are pruned [14][16][17]. Finally, we fine-tune the pruned model by retraining it. Algorithm 1 presents the pseudo-code for magnitude-based weight pruning of dense layers.

#### Iii-B2 **Post-Training Quantization**

This is a model compression technique that works by storing weights and activations with a lower precision, for example, weights can be stored as 16 bit floating point values or as 8 bit integers instead of the full precision of 32 bit floating point values. This would allow for around \(2\times\) to \(4\times\) reduction in model size. Furthermore, hardware support for 8 bit integer computations is typically faster compared to 32 bit floating point values computations, which helps improve inference time.

We apply quantization to a trained model and we evaluate the quantized model without retraining. We apply dynamic range quantization which statically quantizes only the weights and activations from floating point to integer and performs computations with 8-bit weights and activations [14]. The above method is unchanged when we combine post-training quantization with other techniques.

#### Iii-B3 **Weight Clustering**

This is a model compression technique that works by grouping \(n\) weights \(W=\{w_{1},w_{2}...,w_{n}\}\) of each layer in a network into \(k\) clusters \(C=\{c_{1},c_{2},...,c_{k}\}\) where \(n\gg k\). The clusters' centroids are then initialized using a centroid initialization method such as linear, density, random and kmeans++ initialization. The clusters' centroid value is then shared for all the weights belonging to the cluster. The model is then fine-tuned by retraining for less epochs in order to maintain a high accuracy [7][14].

We apply weight clustering to a trained model. We only apply weight clustering to the dense layers and we avoid weight clustering the first and final layers so that the model's accuracy is not significantly impacted. Finally, we fine-tune

Fig. 1: Process of Applying Different Model Compression Techniques
the weight clustered model by retraining it.

#### Iii-B4 **Combining Techniques**

In this paper we combine dynamic range quantization with pruning and dynamic range quantization with weight clustering. Figure 1 summarizes the workflow used to combine these compression techniques. For pruning and weight clustering, the models needs to be retrained so that they are fine-tuned which helps maintain a high accuracy. Therefore we apply quantization in the final step once the models have been trained so that the new retrained weights are quantized. Algorithm 1 presents the pseudo-code for combining pruning with quantization.

```
Input:model:CsiNet Model ratio:Sparsity Ratio level:Quantization Level Output:final model:Pruned Quantized Model FunctionPruneQuantize(model, ratio, level):\(model\Leftarrow\)SparseModelOptimization(model) foreach\(layer\in model.layers\)do if\(layer==Dense\)then \(T\Leftarrow\)TotalNumberOfWeights(layer.weights) \(S\Leftarrow\)Sort(layer.weights) \(min\Leftarrow S[integer(T*ratio)]\) foreach\(weight\in layer.weights\)do if\(weight<min\)then \(weight\Leftarrow\) 0 \(model\Leftarrow\)FineTuneTraining(model) final model \(\Leftarrow\)Quantization(model, level) returnfinal model
```

**Algorithm 1**CsiNet Magnitude-Based Weight Pruning and Quantization

## IV Experimental Setup

### _Hardware and Software Platforms_

The results in this paper were obtained using the following hardware and software platforms:

**Hardware** The system used to conduct the experiments is a Raspberry Pi 4. It has a 64-bit quad-core ARM Cortex-A72 (BCM2711) CPU running at 1.5GHz. This system has 4GB of LPDDR4-3200 SDRAM.

**Software** The system used to conduct the experiments runs the Raspberry Pi OS, Kernel version: 5.15 Debian version: 11 (bullseye). We use Python (v3.9.2) and TensorFlow (2.10.0). We use the TensorFlow Lite interpreter to perform inference, and benchmark using the TensorFlow Lite benchmark tool.

### _Evaluation Metrics_

To evaluate the effectiveness of pruning, post-training quantization and weight clustering on the CsiNet models we use the following metrics:

**Model Size (lower is better)** This is the model binary size once it is saved on disk. This metric is measured in megabytes.

**Inference Time (lower is better)** This is the time it takes the model to process the input and produce a valid output. This metric is measured in microseconds.

**Normalized Mean Square Error (lower is better)** This is the metric described by Equation 4 to evaluate the performance of the model. It is the normalized difference between the recovered channel and the original channel.

**Cosine Similarity** (higher is better) This is the metric described by Equation 6 and is also used to evaluate the performance of the model. This metric measures the quality of the beamforming vector and will be referred to as \(\rho\).

## V Numerical Results and Analysis

In this section we first evaluate and explain the results observed from applying pruning, post-training quantization and weight clustering independently to CsiNet. These results are summarized in Table I. We then present the results obtained from combining different model compression techniques together. These results are summarized in Table II. Next, we investigate the effects of applying different levels of model sparsity percentages and quantization levels - both independently and jointly. These results presented in Figure 2 provide insights on the trade-offs between accuracy, inference time, and model size - and indicate the sparsity and quantization levels that provide an excellent operating point for CsiNet. Finally, we demonstrate the need to leverage and implement sparse inference acceleration for hardware implementations of pruned neural networks. These results are presented in Figure 3 and show the gains in inference time with the XNNPack sparse inference accelerator [16][17].

### _Pruning_

The pruned models used to collect the results in Table I and II have 50% sparsity in the dense layers. This value was experimentally chosen to give a good trade-off between model size, inference time and NMSE (results shown in Sec V-F).

#### V-A1 **Model Size**

Pruning successfully reduced the size of CsiNet for the four different compression ratios \(\gamma\) used in [6]. An average size reduction of 43.9% was achieved for the four different \(\gamma\) values.

#### V-A2 **Inference**

Pruning achieved the lowest latency compared to the original, quantized and weight clustered models for all values of \(\gamma\). On average, pruning provided 66.8% decrease in inference time when compared to the original CsiNet model. This is because 0 weights were skipped during inference when XNNPack acceleration is implemented. These results demonstrate the effectiveness of pruning in enabling low-latency in wireless communications.

#### V-A3 **NMSE and \(\rho\)**

The performance of the pruned CsiNet models was comparable to the original models for most cases. In an indoor environment, \(\rho\) for the original and pruned models were identical for all values of \(\gamma\). For \(\gamma\) = 1/4, 1/16 and 1/32 in an indoor environment the pruned model outperformed the original model in terms of NMSE by a small margin. In an outdoor environment the original model outperformed the pruned model in \(\rho\) and NMSE. This was most significant for \(\gamma\) = 1/16 where the NMSE of the pruned model was on average 15.3% larger than the original model and suggests that for compressed CsiNets in an outdoor environment a lower sparsity level is needed to maintain an on par accuracy.
### _Post-Training Quantization_

Dynamic range quantization was used to collect the results in Table I and Table II. This level of quantization was experimentally chosen to give the best trade-off between model size, inference time and accuracy (results shown in Sec V-F).

#### V-B1 **Model Size**

Post-training dynamic range quantization was very effective in reducing the size of CsiNet for all compression ratios \(\gamma\) - reducing the size of CsiNet by 73.1% on average. This suggests that post-training quantization is an effective and quick method to apply to wireless deep neural networks as the network size is dominated by its weights and activations which can be significantly reduced by quantization with minimal impact to performance.

#### V-B2 **Inference**

Applying post-training quantization reduced inference compared to the original CsiNet model for all values of \(\gamma\). The inference time for the quantized model was on average 10.4% less than the original model. This acceleration is because computations performed with 8-bit weights and activations are less computationally intensive compared to 32 bit floating point computations. Post-training dynamic range quantization was most effective for \(\gamma\) = 1/4, resulting in 22.6% decrease in inference time. This is because for larger models there are more weights to quantize which leads to more gains.

#### V-B3 **NMSE and \(\rho\)**

Applying post-training dynamic range quantization to the original CsiNet models had very little impact on the values of NMSE and \(\rho\). For all values of \(\gamma\) in an indoor and outdoor environment \(\rho\) was equivalent between the original CsiNet models and the quantized models. In an indoor environment for \(\gamma\) = 1/32, 1/64 the quantized model outperformed the original model in terms of NMSE by a very small margin and for \(\gamma\) = 1/4 the original model outperformed the quantized model by a negligible amount. These results suggest that post-training dynamic range quantization has a very minimal effect on model performance, and in essence the model size and latency gains can be "free".

### _Weight Clustering_

The weight clustered models used to collect the results in Table I and Table II use kmeans++ centroid initialization and 32 clusters per network layer. This value was experimentally chosen to give a good trade-off between model size, inference time and accuracy.

#### V-C1 **Model Size**

Weight clustering had the best performance in terms of model size reduction compared to pruning and quantization. Weight clustering reduced the size of CsiNet by 79.2% on average for the four different values of \(\gamma\). This suggests that weight clustering is an effective method to apply to wireless models to achieve significant reduction in model size. Weight clustering works by grouping weights into N clusters. Therefore by choosing a suitable value of N for any wireless model, significant model size reductions are expected.

#### V-C2 **Inference**

Weight clustering did not provide inference time gains. As shown in Table I, the weight clustered models had a comparable inference time to that of the base models. This is expected since weight clustering reduces the number
of unique weights but does not affect the total number of inference operations.

#### Iii-C3 **NMSE and \(\rho\)**

Weight clustering performed very well in the outdoor environment but had a worse performance in the indoor environment compared to pruning and quantization. For the indoor environment, \(\rho\) was on average 2.71% smaller compared to the original models for all values of \(\gamma\). The NMSE for the weight clustered models was on average 17.5% larger compared to the original CsiNet models. The weight clustered model performed much better in an outdoor environment and provided the best NMSE out of all methods for \(\gamma=4\). This suggests that extra care is needed when applying weight clustering to different models and environments and a generalized approach is not as reliable as with pruning and quantization.

### _Pruning and Post-Training Quantization_

#### Iii-D1 **Model Size**

Combining pruning and post-training quantization achieved the smallest model size compared to all other results presented in this work. Pruning and post-training quantization reduced the size of CsiNet by 86.5% on average for the four different values of \(\gamma\). This result is higher than results achieved by pruning and quantization individually, which demonstrates that combining pruning and quantization is an effective way to significantly reduce the model size.

#### Iii-D2 **Inference**

Combining pruning and post-training dynamic range quantization resulted in the lowest latency out of all the models presented in Table I and II. The inference time for the pruned dynamic range quantized models were on average 76.2% shorter than the original CsiNet models. These results demonstrate the effectiveness of pruning and post training dynamic range quantization in enabling low-latency in wireless communications.

#### Iii-D3 **NMSE and \(\rho\)**

The results for NMSE and the cosine similarity \(\rho\) when combining pruning and post-training dynamic range quantization were comparable to the results obtained by the original model for an indoor environment. The model unperformed slightly in an outdoor environment which is expected because the original pruned model before quantization also underperformed in an outdoor environment.

### _Weight Clustering and Post-Training Quantization_

The weight clustered models used to collect the results in Table I and Table II use 32 clusters and kmeans++ centroid initialization. These clustering parameters were experimentally chosen to give high accuracy and low model size.

#### Iii-E1 **Model Size**

Combining weight clustering and post-training dynamic range quantization resulted in a large reduction in model size compared to the original CsiNet models. Weight clustering and quantization reduced the size of CsiNet by 85.0% on average for the four different values of \(\gamma\). This reduction is higher than results achieved by weight clustering and quantization individually, this is because once the weights are grouped into N clusters they are then represented as 8 bit integers instead of 32 bit floating point values. However, because there are less unique weight values, there are less weights to quantize and we only see a small improvement when we combine the two techniques.

#### Iii-E2 **Inference**

The combination of weight clustering and post-training dynamic range quantization resulted in lower inference times compared to the inference times of the original CsiNet models. This is mainly due to inference improvements that result from post-training dynamic range quantization. The inference time for the weight clustered and quantized models were on average 10.5% less than the original CsiNet models.

#### Iii-E3 **NMSE and \(\rho\)**

The results for NMSE and \(\rho\) when combining weight clustering and post-training dynamic range quantization were equivalent to the results achieved by weight clustering individually. As we saw earlier, post-training dynamic quantization had minimal effects on the NMSE and \(\rho\) and this is confirmed again here as the results obtained from combining both compression techniques were identical to the results obtained by the weight clustered models.

### _Varying Pruning and Quantization Parameters_

#### Iii-F1 **Model Size**

Figure 2(a) highlights the impact of model sparsity % and quantization level on model size. It is evident

Fig. 2: Results of Varying Sparsity and Quantization Levels for \(\gamma\) = 1/4 in an indoor environment (a) Model Size (b) Inference Time (c) NMSE
that increasing model sparsity leads to a large decrease in model size regardless of the quantization level. Dynamic range quantization provides the smallest model size, followed by floating point 16 quantization and then the original model in floating point 32. At a high model sparsity %, the effects of quantization become less noticeable. This is expected because there are less weights to quantize at a higher model sparsity.

#### V-C2 **Inference**

Figure 2(b) highlights the impact of model sparsity % and quantization level on inference time. The higher the model sparsity %, the lower the inference time. Inference time for floating point 16 quantization was very similar to the original floating point 32 model. Dynamic range quantization provided the best inference improvements compared to all other levels of quantization.

#### V-C3 **Nmse**

Figure 2(c) highlights the impact of model sparsity % and quantization level on the NMSE. The quantization level has minimal effects on the NMSE, and the model sparsity % is the dominant factor. Therefore, quantization to 8-bits should always be conducted to reap its model size and acceleration gains. At 70% sparsity we see a drop in NMSE and at 90% sparsity we see the largest drop. These results indicate that the configuration of 50% sparsity and 8-bit quantization provides the largest complexity reduction gains without an impact to accuracy.

### _Accelerating Sparse Models_

**Inference:** Figure 3 demonstrates the importance of XNNPack sparse inference to improve the inference time of the resultant sparse models after pruning. Pruning provides remarkable improvements in model size, however without XNNPack sparse inference, the inference time of the pruned model is comparable to the original model. This highlights the importance of optimized neural network inference operators, and opens the door for future research that can focus on accelerating sparse models further [16][17].

## VI Conclusion

This paper presented a comprehensive study on applying three common model compression techniques to CsiNet, a wireless communications deep learning model for massive MIMO CSI feedback. We demonstrated the effectiveness of these techniques in terms of model size, inference time, and accuracy - and analyzed the interaction of combining multiple compression techniques to obtain even more efficient networks that do not impact performance. Furthermore, we show the importance of accelerating sparse models to achieve low inference times on commodity hardware. The results of this paper demonstrate the importance of adopting these techniques when developing deep learning wireless models to obtain tiny, efficient, and accurate models that can provide low-latency processing and consume limited memory and power. These methods are crucial to pave the way for practical adoption and deployments of deep learning-based techniques in commercial wireless systems.
