The number and variety of applications for mobile devices continue to grow. However, the resources on mobile devices including computation and storage do not keep pace with the growth. Incorporating the computation capacity on cloud servers into mobile computing has been desired. However, there are numbers of challenging issues to realize it. In this work, we design and implement an elastic computation framework to take advantage the computation capacity on connected devices, to meet the computation demands of ever growing mobile applications. The computation framework enables resource-aware workload migration between mobile devices and connected computers. The framework was experimented and evaluated on cuckoos framework with Android applications, where communication and computation resources are taken into account. The experiments show that the application can be executed with dynamic allocated resources, either local or remote, to enhance its performance. With the elastic framework, the runtime environment can allocate local and remote resources to mobile applications with resource-aware policies.
The number and variety of applications for mobile devices continue to grow. However, the resources on mobile devices including computation and storage do not keep pace with the growth. How to incorporate the computation capacity on cloud servers into mobile computing has been desired and challenge issues to resolve. In this work, we design a flexible computation framework to take advantage the heterogeneous computation capacity on cloud servers, which are CPUs and GPGPUs, to meet the computation demands of ever growing mobile applications. The computation framework extends OpenCL framework to link remote processors with local mobile applications. The framework is flexible in the sense that the computation can be stopped at any time and gains results, which is called imprecise computation in real-time computing literature. The framework has been evaluated against OpenCL benchmark and physical computation engine for gaming. The results show that the framework supports OpenCL benchmark, RODINIA, without modifying the codes with few exceptions. The imprecise computation model allows the cloud servers to support more mobile clients without sacrificing their QoS requirements. The experiment results also show that IO intensive applications do not perform well when the network capacity is insufficient or unreliable.
Many of earlier attempts on mobile cloud integrations aim on increasing storage capacity of mobile devices, rather than its computation capacity. Traditional distributed computing model relies on static and reliable network connections to share workload among collaborative devices. The researches on pervasive and ubiquitous computing community enable collaborative computation to be conducted on connected computers. Similarly, it is limited to predefined computation services including predefined services and computation platforms. The computation resources in modern computation environment are heterogeneous and evolve over time. The aforementioned computation models do not make good use of such resources. We design and implement an extended OpenCL framework to federate the computation resources of mobile devices with cloud service so as to share its workload and shorten application response times. A virtual cloud core is attached to OpenCL context and can unify the computation between mobile devices and cloud services. The framework does not blindly off-load computation but take into account network capacity and load on connected servers so as to effectively share the load. It also allows a computation request to be conducted either on CPU on mobile device or GPU on connected servers. Our experiments show that the response time can be improved for up to 25 times with modern wireless network connection.
Heterogeneous multi-core processors are now widely deployed to meet computation requirements for multimedia applications on embedded mobile devices. However, due to the difference on computation capability of heterogeneous multi-cores, it is challenging to share the load among cores and to better utilize the cores on the processor. In this work, we develop a fairness scheduler to share the load among cores to meet the above challenge. The developed framework ensures that each virtual machine receives its proportional share of computation time over different processing elements. To fairly schedule the tasks on the platform, VM-aware fair scheduler (VMAFS) takes into account the preemptibility of processes on co-processors. A family of algorithms is designed to schedule tasks on preemptive and non-preemptive processing elements. We define fairness on such architectures and use this metric to efficiently drive VMAFS algorithm so as to fairly manage non-preemptive computing resources. Performance evaluations result show that when VMAFS algorithm is used, scheduling fairness is not sensitive to the amount of computation time of non-preemptive tasks. In addition, VMAFS algorithm greatly outperforms credit-based scheduling algorithm, which is deployed in existing virtualization environment.
Heterogeneous multi-core processors are now widely deployed to meet computation requirements for multimedia applications on embedded mobile devices. However, due to the difference on computation capability of heterogeneous multi-cores, it is challenging to share the load among cores and to better utilize the cores on the processor. In this work, we develop a fairness scheduler to share the load among cores to meet the above challenge. The developed framework ensures that each virtual machine receives its proportional share of computation time over different processing elements. To fairly schedule the tasks on the platform, VM-aware fair scheduler (VMAFS) takes into account the preemptibility of processes on co-processors. We define fairness on such architectures and use this metric to efficiently drive VMAFS-N so as to fairly manage non-preemptive computing resources. Performance evaluations result show that when VMAFS-N algorithm is used, scheduling fairness is not sensitive to the amount of computation time of non-preemptive tasks. In addition, VMAFS-N algorithm greatly outperforms credit-based scheduling algorithm, which is deployed in existing virtualization environment.
C. S. Shih合作论文数Department of Computer Science and Information Engineering, National Taiwan University6