Recent studies show that in developing regions such as Africa and South East Asia fast Internet connectivity lifted around 2.5 million people out of extreme poverty and techniques to improve web performance (for example, Google’s AMP) improved profit by 20%. Given the results of these studies, it is unsurprising that significant work and effort have gone into improving connectivity in these regions.
These efforts range from improving mobile networks (from 2G to 4G and now 5G) and improving networking infrastructure to reduce the cost of mobile data rates and increase the amount of local language content. Although these efforts offer tremendous benefits, a significant piece of the connectivity puzzle remains overlooked — the capability of users’ mobile devices.
Improving network performance has 3x greater effect on high-end phones than low-end phones
Although recent studies show that users in developing regions often have multiple phones, we at Brown University and UCLA recently published results of our analysis of a large-scale social network, demonstrating that these phones are most often low-end phones with low CPU and memory. Moreover, our study showed that over the last five years, while the hardware characteristics of mobile devices in developed regions increased by a factor of two to three, devices in developing regions remained largely stagnant (Figure 1).
We note that this stagnation is naturally at the averages; the top 1% of these developing regions experienced increased growth.
A consequence of these dominant low-end phones is that the improvements to connectivity and network interconnectivity have yielded limited benefits. This problem is akin to improving highways and eliminating congestion — these efforts will significantly benefit cars and trucks but provide minimal benefits to cyclists and pedestrians. To illustrate, Figure 2 demonstrates the impact of various network connectivity speeds on a high-end (LG G5 with 4GB of RAM and 2×2.15, 2×1.6 GHz CPU) and a low-end (QMobile Q Infinity B with 1GB RAM and Quad-core 4×1.2 GHz CPU) phone.
These results show that improving network performance has a ~10X impact on web performance on a high-end phone, whereas, on a low-end phone, improved network performance yields limited web performance (only 3X). The muted impact of better network performance on low-end phones motivates the need for more mobile device-specific optimizations.
Emerging protocols compound the problem
As a first step towards developing such optimizations, my group and I have been designing a variety of data-driven methods to dissect, characterize and understand mobile performance.
Our tool also provides insights into the specific coding patterns that lead to such high resource consumption. Interestingly, we find these patterns to be pervasive on many websites.
More recently, we also analysed emerging web protocols, for example, HTTP/3 and QUIC, to understand their role in addressing this problem.
Read: Dissecting the performance of production QUIC
We observed that these protocols compound the problem. On the one hand, their designs consume significantly more CPU resources, which is challenging for low-end phones. On the other hand, our study showed that optimizing these protocols, in practice, can be difficult and time-consuming considering the overhead of dealing with the new edge cases introduced by them and the overhead of implementing congestion control algorithms from scratch.
There are clear performance benefits from the recent efforts to optimize the network. However, we believe that there is a solid need to revisit mobile device optimizations in the face of device limitations. This need is especially true in light of recent efforts by Google and Opera-mini.
A central tenet of this work will be to aim for designs that simultaneously promote openness and inclusiveness while being lightweight and feature-rich. Returning to the earlier example, our optimizations are akin to adding electric motors to bicycles or adding roller skates to pedestrians to better use the improved and congestion-free roads.
Theophilus A. Benson is an assistant professor in the Computer Science Department at Brown University.
The views expressed by the authors of this blog are their own and do not necessarily reflect the views of APNIC. Please note a Code of Conduct applies to this blog.