Mobile Coprocessing via Virtual CPU Abstraction Layer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile devices face performance limitations due to their central processing units (CPUs) being constrained by power and thermal issues, leading to frequent upgrades driven by software processing requirements, which can result in users experiencing slow performance until they are eligible for subsidized upgrades.
Innovation Solution
Implementing a system that enables mobile coprocessing by establishing a wireless communication link between a mobile device CPU and an auxiliary computing device, allowing the allocation of processing tasks based on the auxiliary device's capabilities and communication link metrics, thereby offloading tasks to enhance performance without the need for immediate hardware upgrades.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the mobile device CPU processes all tasks locally, then the device maintains full control and simplicity, but the processing performance is limited by power and thermal constraints
Solution Approach 1:
The processing tasks are segmented into two categories: those executed locally on the mobile device CPU and those offloaded to the auxiliary computing device. This segmentation allows the system to distribute computational load, improving overall processing performance while managing power consumption by performing only essential tasks locally.
Solution Approach 2:
An abstraction layer is introduced as an intermediary between the mobile device CPU and the auxiliary computing device. This intermediary manages task allocation, communication, and coordination, enabling the system to leverage external processing power while maintaining control and managing power consumption effectively.
2Speed
If the mobile device CPU processes all tasks locally, then the device maintains operational independence, but the processing speed is constrained by thermal issues
Solution Approach 1:
The auxiliary computing device acts as an intermediary that handles computationally intensive tasks, thereby increasing processing speed without subjecting the mobile device to additional thermal constraints. The abstraction layer coordinates this distributed processing.
3Productivity
If users wait for subsidized upgrades, then they reduce immediate expenses, but they experience slow performance of new applications
Solution Approach 1:
Instead of physically upgrading the mobile device hardware, the system creates a virtual extension by connecting to an auxiliary computing device. This copying approach allows the mobile device to access enhanced processing capabilities remotely, improving application performance without the need for immediate hardware upgrades or waiting for subsidized replacements.
4Productivity
If the system offloads tasks to auxiliary computing devices, then processing performance is improved, but the system complexity increases
Solution Approach 1:
The abstraction layer serves as an intermediary that manages the complexity of task offloading, communication, and coordination between the mobile device and auxiliary computing devices. By encapsulating these complex operations, the system achieves improved processing performance while hiding the underlying complexity from users and applications.
Data Source
AI summary
Embodiments include apparatuses, systems, and methods mobile coprocessing. A connection is established between a mobile device and an auxiliary computing device. The mobile device implements a CPU abstraction layer and a virtual CPU between a software stack and a CPU of the mobile device. The abstraction layer allows for the mobile device to offload tasks to the auxiliary computing device while the software stack interacts with the abstraction layer as if the tasks are being executed by the CPU of the mobile device. The mobile device of allocates tasks to the auxiliary computing device based on various parameters, including properties of the auxiliary computing device, metrics of the connection, and priorities of the tasks.


