Brown CS Blog

A Look Into A Missing Piece In The Global Digital Divide Puzzle


    by Professor Theophilus A. Benson

    Recent studies show that, in developing regions (e.g. Africa and Southeast Asia), fast internet connectivity lifted approximately 2.5 million people out of extreme poverty [1] and techniques to improve web performance (e.g. Google’s AMP) improved profit by 20% [2]. Given these studies, it is unsurprising that significant work and effort have gone into improving connectivity in these regions. These efforts range from improving the mobile networks (from 2G to 4G and now 5G) and improving networking infrastructure to reducing the cost of mobile data rates and increasing the amount of local language content. Although these efforts offer tremendous benefits, a significant piece of the connectivity puzzle remains overlooked – namely, the user’s mobile devices.

    Image 1.png

    Although recent studies show that users in developing regions often have multiple phones, our analysis [3] of a large-scale social network demonstrates 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 2X-3X, devices in developed regions remain largely stagnant. 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 interconnects has 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, in the Figure below, we demonstrate the impact of various network connectivity speeds on a high-end (LG G5 with 4GB of RAM and 2x2.15, 2x1.6 GHz CPU) and a low-end (QMobile Q Infinity B with 1GB RAM and Quad-core 4x1.2 GHz CPU) phone. These results show that improving network performance has a ~10X impact on web performance on the high-end phone, whereas, on the low-end phones, 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. 

    Image 2.png

    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:

    • In particular, over the last two years, we have developed a tool to analyze and dissect the cause of poor performance on mobile devices. Specifically, our tool provides quantifiable evidence to support anecdotal knowledge that javascript is the key culprit. Our tools also provide 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 analyzed emerging web protocols, e.g. HTTP/3 and QUIC, to understand their role in addressing this problem [4]. We observe 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. To date, our research has mainly focused on analyzing and understanding the problem. As part of future work, we plan to explore an ensemble of data-driven techniques that learn about device characteristics and use this information to transform the javascript and alter protocol behavior which, in turn, optimize performance. A central tenet of this work will be to aim for designs that simultaneously promote openness and inclusivity 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 utilize the improved and congestion free roads.





    For more information, click the link that follows to contact Brown CS Communication and Outreach Specialist Jesse C. Polhemus.