GithubHelp home page GithubHelp logo

pensieve-5g's Introduction

Pensieve PPO for 5G traces

Key Motivation

I further investigate the key reason why RL-based methods fail to perform well in 5G. Here are some key findings.

  1. the state inputs have not been accurately normalized with the proper scale, while recent work illustrates that state normalization is critical for RL-based tasks [1]. For example, state[2] represents the throughput in Mbps, while most of the bandwidth in 5G is over 100Mbps, even 1Gbps, and eventually, resulting in the unexcepted scale. Some observations are also shown in the video chunk sizes.

https://github.com/SIGCOMM21-5G/artifact/blob/df62dc3bb8661eb2bdca4f853b6dd2d396b28007/Video-Streaming/ABR-5G/rl_server/rl_server_no_training.py#L150

Some observations are also shown in the video chunk sizes (MB).

https://github.com/SIGCOMM21-5G/artifact/blob/df62dc3bb8661eb2bdca4f853b6dd2d396b28007/Video-Streaming/ABR-5G/rl_server/rl_server_no_training.py#L152

Meanwhile, the reward function requires reward scaling since the maximum bitrate is sized over 160Mbps.

  1. Another feature is inherited from Pensieve. The download time measured by the RL server means chunk download end - chunk download start. However, in the simulator, the download time is computed as chunk ended - request start. Thus, there exists a gap between those two, i.e., an RTT. Note that such gaps are acceptable for 3G and 4G traces.

https://github.com/SIGCOMM21-5G/artifact/blob/df62dc3bb8661eb2bdca4f853b6dd2d396b28007/Video-Streaming/ABR-5G/rl_server/rl_server_no_training.py#L132

Pensieve simulator: delay

Putting them together, we retrained Pensieve w.r.t 5G datasets and videos godka/Pensieve-5G.

However, due to the coronavirus outbreak, we are not allowed to work in the lab. Thus, we employed trace-driven simulation rather than emulation. We first confirmed the correctness of the simulation environment. We compared the results of simulation and emulation via the pre-trained Pensieve model (i.e., nn_model_44200.ckpt). Origin Emulation Results vs. Our Simulation Results are shown below.

Origin Emulation Results

Our Simulation Results

Next, we reported our retrained results here. As shown, we can see that Pensieve can also achieve a good performance in 5G networks.

figure17-retrained

Moreover, we demonstrated Pensieve's last 50,000 epochs, aka., Pensieve's Pareto Frontier. As expected, Pensieve can always satisfy the requirements.

figure17-PF

Main Takeaway

In general, we argue that Pensieve can also be well-performed in 5G networks. The key reason for the results in the paper is the lack of RL tricks, such as state normalization and sim-to-real gaps, rather than Pensieve itself. At the same time, we also provide the pre-trained model in here. Moreover, another team run the model on our emulation setup and get similar results as we posted (plot attached). 130872647-7d0fbe09-3ab6-47d1-b59f-6ccd9aa12ac2

Reference [1] Abbasloo S, Yen C Y, Chao H J. Classic meets modern: A pragmatic learning-based congestion control for the Internet[C]//Proceedings of the Annual conference of the ACM Special Interest Group on Data Communication on the applications, technologies, architectures, and protocols for computer communication. 2020: 632-647.

pensieve-5g's People

Contributors

godka avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.