Thứ Năm, 14 tháng 3, 2019

[OS] Dynamix Review



PAPER REVIEW: DYNAMIX

Summary

As multi-devices technology has been developing drastically, sharing resources are paramount and available in host and client devices. However, the ways of sharing data between devices have disadvantages such as limited storage coverage, complex programming efforts or huge inter-device network traffic.
Dynamix is a framework supporting efficient cross-device resource sharing. First, Dynamix maximizes resource coverage by integrating CPU, memory and I/O resources. Second, it mitigates efforts of programming by move data sharing details from app layer to lower layer. Third, the framework minimizes inter-device network traffic by dynamic task redistribution.
Existing sharing mechanisms support I/O request forwarding, but they support only I/O resources for resource sharing, require carefully designed abstraction layers to support single-device applications and can suffer from severe network overheads.
Code Offloading and Distributed Computation utilize remote computation resources (e.g., CPU, memory) by offloading performance-critical code regions to more powerful devices. However, they support only computation resources for cross-device sharing, which leaves I/O resources to be wasted. The migrated tasks should eventually go back to the requesting device, which restricts the scope of performance-critical task redistributions.
Distributed Programming Platform is limited to computation resources for cross-device sharing for resource coverage and leaves the burden of difficult multi-device programming to application developers.

There are three goals of Dynamix: High Resource Coverage, Single-device Application Support and Resource-aware Task Redistribution.
To do so, three key points of implementation proposed by authors are Resource Integrator, Thread Migrator and a Master Daemon.
The framework is evaluated on Google Nexus smartphones, an in-house Samsung Smart TV and a photo classifier using TensorFlow library and gains impressive results: e.g., Dynamix achieves 8.3-x higher throughput than RF (Request Forwarding), while paying only 11% performance drop from the maximum throughput for 1080p or 8.2 FPS to 24 FPS on the home theater.
Criticism
Comment
Dynamix should be evaluated using a sufficient platform or testbed, not just on popular platforms.
Dynamix should consider the scenario that we share resource with untrusted devices.
Question
Dynamix just cover a sub-field of problem, what if we want to cover everything of device not just CPU, memory and I/O? Maybe we need a more comprehensive platform.
Is master daemon keep tracking of resource availability on all devices? What if it fails on a device to perform operations? Any back-up solutions?


Không có nhận xét nào:

Đăng nhận xét