US20160274938A1 - Method and computer program for offloading execution of computing tasks of a wireless equipment - Google Patents

Method and computer program for offloading execution of computing tasks of a wireless equipment Download PDF

Info

Publication number
US20160274938A1
US20160274938A1 US15/034,770 US201415034770A US2016274938A1 US 20160274938 A1 US20160274938 A1 US 20160274938A1 US 201415034770 A US201415034770 A US 201415034770A US 2016274938 A1 US2016274938 A1 US 2016274938A1
Authority
US
United States
Prior art keywords
execution
task
criterion
wireless equipment
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US15/034,770
Other versions
US10013282B2 (en
Inventor
Emilio Calvanese Strinati
Sergio BARBAROSSA
Jessica OUEIS
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Universita degli Studi di Roma La Sapienza
Original Assignee
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Universita degli Studi di Roma La Sapienza
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Commissariat a lEnergie Atomique et aux Energies Alternatives CEA, Universita degli Studi di Roma La Sapienza filed Critical Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Publication of US20160274938A1 publication Critical patent/US20160274938A1/en
Assigned to COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, UNIVERSITA DEGLI STUDI DI ROMA "LA SAPIENZA" reassignment COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CALVANESE STRINATI, EMILIO, Oueis, Jessica, BARBAROSSA, Sergio
Application granted granted Critical
Publication of US10013282B2 publication Critical patent/US10013282B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the field of the invention is that of cellular radio communication systems.
  • the invention more particularly concerns a distributed processing method for computing tasks according to which the execution of certain tasks is offloaded from a wireless equipment to a remote, third-party equipment.
  • Wireless equipments for example mobile user equipments or wireless sensors, are increasingly capable of executing complex software applications that require significant computer processing capacities, resulting in particular in needs for memory and power resources.
  • a microcell radius of less than 2 km
  • a picocell the range of which is less than 200 m
  • a femtocell range of about 10 m
  • a wireless sensor data collection gateway has resources that can be used by the sensors.
  • Such offloading requires a decision to be made, generally based on the consideration of a single parameter, i.e. a compromise between the power consumed to perform the offload execution of a task and the power saved by the wireless equipment by having offloaded this execution.
  • the purpose of the invention is to meet this need and in this respect offer a method for processing a computing task, the execution of which is required by a wireless equipment of a cellular communication network, characterised in that it comprises:
  • the classifying step being performed by traversing an oriented graph consisting of decision nodes, each having successor nodes in the graph and terminal nodes, each assigned to one of the classes of said group, the decision nodes being distributed into at least three hierarchical levels, themselves distributed into at least three subsets of levels, the traversal of the graph taking place from an initial decision node to reach a terminal node, and comprising:
  • the invention further relates to a computer program product comprising code instructions for executing the classifying step of the method described hereinabove, when said program is executed on a computer.
  • FIG. 1 is a drawing illustrating an oriented graph capable of being used in one possible embodiment of the method according to the invention
  • FIGS. 2 to 4 are drawings derived from simulations illustrating the performance levels of the invention in terms of power consumption, compared to other offloading decision-making processes, according to different scenarios.
  • the invention relates to a method for processing a computing task, the execution of which is required by a wireless equipment of a cellular communication network. It further relates to a computer program product comprising code instructions for executing the steps of the method when said program is executed on a computer.
  • the invention proposes a decision-making process regarding the offloading of a computing task in view of its execution, not by the wireless equipment itself, but by a remote third-party equipment such as a local access point to the cellular communication network (micro-, pico- or femtocell base station), a relay to such a local access point, or even a gateway, for example a wireless sensor data collection gateway.
  • a remote third-party equipment such as a local access point to the cellular communication network (micro-, pico- or femtocell base station), a relay to such a local access point, or even a gateway, for example a wireless sensor data collection gateway.
  • This process uses a hierarchical classification system that takes into consideration multiple parameters for example power consumption, latency constraints,: memory needs, computer processing capacities or communication conditions), without increasing the complexity of the decision-making process.
  • the parameters taken into consideration can also be modified according to the target applications, in particular dynamically according to the system's evolutions.
  • the hierarchical classification includes a series of successive classifying operations, each operation being based on the consideration of a parameter affecting the decision of whether or not to offload.
  • the method according to the invention is implemented for each of the computing tasks generated by the software application(s) being executed on the wireless equipment.
  • the method according to the invention comprises a step of classifying the task in a class belonging to a group of classes formed from at least one class of immediate offload execution and one class of immediate local execution.
  • Each class is therefore associated with a specific decision with regard to the processing of the task.
  • This classifying step is then followed, if the task belongs to the class of immediate offloaded execution, by a step of transmitting an offloaded execution request for the execution of the task by a third-party equipment of the cellular communication network. Where relevant, the wireless equipment is then informed of the acceptance of this request via the receipt of an authorisation message authorising the offloaded execution of the task.
  • the classifying step is further followed, if the task belongs to the class of immediate local execution, by a step for the prioritised execution of the task by the wireless equipment.
  • said group of classes is formed from at least four classes: one class of immediate offloaded execution, one class of deferred offloaded execution, one class of immediate local execution and one class of deferred local execution. It can also comprise a deferred decision class. If the execution (local or offloaded) or the decision is deferred, a classification of the task can be repeated during the next time slot or during a later time slot.
  • the classifying step is more particularly performed by traversing an oriented graph, one example embodiment of which is illustrated in FIG. 1 .
  • the oriented graph consists of decision nodes D 1 -D 7 , each having successor nodes in the graph, and of terminal nodes T 1 -T 8 , each assigned to one of the classes of said group.
  • the decision nodes can in particular be binary decision nodes, each having two successor nodes in the graph.
  • the remainder of the description hereinbelow will therefore refer to such binary decision nodes, made with reference to the example embodiment illustrated in FIG. 1 , without being limited thereto, whereby a decision node of the oriented graph is capable of comprising more than two successor nodes according to the criterion verified during the transit through said node.
  • the binary decision nodes D 1 -D 7 are distributed into at least three hierarchical levels N 1 -N 4 , these levels themselves being distributed into at least three subsets of levels A 1 -A 3 , each comprising at least one level.
  • the levels of a subset of levels can be hierarchically consecutive levels of the graph, without being limited thereto.
  • the first subset of levels A 1 comprises a single level N 1 where the binary decision node D 1 is located, acting as a vertex or initial decision node of the oriented graph.
  • the second subset of levels A 1 comprises two levels N 2 and N 3 where the binary decision nodes D 2 , D 4 and D 3 are respectively located.
  • the third subset of levels A 3 comprises a single level N 4 where the decision nodes D 5 -D 7 are located.
  • the traversal of the graph takes place from an initial binary decision node (node D 1 in the example in FIG. 1 ) to reach a terminal node T 1 -T 8 .
  • This traversal comprises:
  • the first, second and third subsets of levels A 1 -A 3 are therefore hierarchically arranged in the graph. This takes place such that the feasibility criterion or criteria is are studied before the criticality criterion or criteria, itself/themselves being studied before the opportunity criterion or criteria.
  • the invention is not however limited to this scenario, and the terms “first”, “second” and “third” subsets must be understood as describing a specific subset, and not as a hierarchical order in the graph. Therefore, for the purposes of illustration, the first subset can indeed be traversed after the third subset, itself traversed after the second subset. It is recalled that the levels of a subset of levels are not necessarily consecutive in the graph.
  • the invention is also not limited to the three subsets of levels described hereinabove and covering the feasibility, criticality and opportunity decision criteria families. On the contrary, it extends to a larger number of subsets so as to enable other decision criteria families to be incorporated, for example a subset of levels for verifying a security criterion for the execution of the task, or even for verifying a criterion regarding the non-invasion of privacy (for example if personal data could be transmitted to a third party in the event of offloaded execution), etc.
  • the following description aims to provide, with reference to the purely illustrative example in FIG. 1 , examples of decision criteria that can be associated with a decision node, the satisfaction or non-satisfaction of which is verified during the traversal of the group to classify a task into one of the classes.
  • a feasibility criterion F for the offloading of the task for execution by the third-party equipment is therefore associated with an initial binary decision node D 1 .
  • the transit through this node D 1 results in a step for determining the satisfaction or non-satisfaction of this criterion, and therefore in the production of a distinction between tasks that can be offloaded and tasks that cannot be offloaded.
  • the feasibility criterion F is, for example, a technical criterion such as a hardware configuration parameter required to execute the task.
  • the verification of this criterion consists, for example, in querying a look-up table where the offloading capability of a task is recorded (such a table can be built via a learning process, for example by recording the result of a task offloading test), or in directly querying the task when the offloading capability is provided during its programming.
  • the feasibility criterion F can also take into consideration the quality of a communication channel linking the wireless equipment and the remote third-party equipment.
  • the verification of the satisfaction of this criterion can therefore further include a measurement of the connectivity status of the wireless equipment with the cellular communication network, said criterion not being satisfied when the status measured is less than a threshold. For example, in the event of no connectivity, the feasibility criterion F is not met.
  • the traversal of the graph continues via the transit through the binary decision node D 2 with which is associated a first criticality criterion for the execution of the task C 1 , in this case provided to produce a distinction between urgent and non-urgent tasks.
  • This first criterion C 1 is, for example, met when the latency associated with the task is less than a given threshold, which depends, for example, on the quality of experience QoE expected by a user.
  • This first criterion C 1 can therefore use the time to live (TTL) of the task, which can be entered into a look-up table, the criterion being met when the time to live of the task is less than a threshold, for example a percentage of a maximum time to live that is acceptable to the user.
  • TTL time to live
  • This first criticality criterion C 1 is met, the traversal of the graph in FIG. 1 continues via the transit through the binary decision node D 3 with which is associated a second criticality criterion for the execution of the task C 2 .
  • This second criterion C 2 is more particularly a criticality criterion for the execution of the task by the wireless equipment.
  • This second criterion C 2 is applied to the urgent tasks capable of being offloaded, however which local execution by the wireless equipment is not ruled out. However, the local execution of these tasks may be impossible because of a lack of the resources required in the wireless equipment. In this case, these tasks must be offloaded.
  • the determination of the satisfaction or non-satisfaction of this second criterion C 2 can take on the form of a series of tests taking into consideration the processing capacities, the memory needs and the battery consumption. For the purposes of illustration, this criterion C 2 is satisfied if one of the following conditions is met:
  • this second criticality criterion C 2 is not met, the local execution of the task is not considered to be critical, and the urgent task capable of being offloaded can therefore either be offloaded or executed locally.
  • the decision in this case is made by the transit through the decision node D 5 with which is associated an opportunity criterion O 1 for the execution of the task.
  • the opportunity criterion is, for example, an opportunity criterion for the execution of the task by the third-party equipment. This can be a power-related opportunity criterion, and the determination of the satisfaction of this criterion O 1 may consist in verifying whether the offloaded execution by the third-party equipment consumes less power than the local execution.
  • the traversal of the graph transits through the decision node D 6 , with which is associated an opportunity criterion O 2 for the execution of the task.
  • the purpose of this criterion O 2 is, for example, to study the opportunity of offloading the task, even though it is not urgent.
  • the determination of the satisfaction or non-satisfaction of this opportunity criterion O 2 consists, for example, in examining if the capacity of the communication channel allows for the transmission of all tasks classed into the class of immediate offloaded execution (terminal nodes T 1 and T 2 ). For example, if the current channel coefficient is greater than the mean coefficient, the channel status is considered to be good. The opportunity criterion O 2 is therefore met, the traversal of the graph results in the terminal node T 4 , in this case associated with the class of immediate offloaded execution. This allows for the offloading of the execution of a maximum number of non-urgent tasks capable of being offloaded, while, for example, prioritising those with the lowest latencies.
  • Such an offloading of non-urgent tasks can be considered to not only be an opportunistic use of the radio link, but also a tool designed to relieve the system during subsequent time slots. Conversely, the system is prevented from performing expensive offloaded processes if the channel conditions are not good.
  • the traversal of the graph transits through the decision node D 4 , with which is associated the first criticality criterion C 1 for the execution of the task already described hereinabove. Therefore, depending on the latency of the task, the latter is classed as urgent or non-urgent.
  • the traversal of the graph leads to the terminal node T 6 , in this case associated with the class of immediate local execution. Conversely, if this criticality criterion C 1 is not met (the task is not urgent), the traversal of the graph transits through the decision node D 7 , with which is associated an opportunity criterion O 3 for the non-urgent execution of the task by the mobile user equipment.
  • This opportunity criterion O 3 is, for example, similar to the criticality criterion C 2 and is used to verify whether the non-urgent execution of the task would be critical for the mobile user equipment.
  • the resources of the mobile equipment are used opportunistically to perform the immediate local execution of the task, even though said task is not urgent.
  • the traversal of the graph thus results in the terminal node T 8 , in this case associated with the class of immediate local execution.
  • the traversal of the graph results in the terminal node T 7 , in this case associated with the class of deferred local execution.
  • Simulations have been made to estimate the performance levels of the method according to the invention (method A according to the example in FIG. 1 , the battery discharge of which is illustrated by the curves with crosses in FIGS. 2-4 ) in comparison with other task processing methods that must be implemented by a mobile user equipment.
  • method B curves with diamonds
  • method C curves with dots
  • method D curves with circles
  • the simulations have been performed by taking into consideration a single user located 5 metres from the base station of a femtocell.
  • the uplink bandwidth is 20 MHz
  • the attenuation coefficient along the path is equal to 5
  • the noise has a power of 10 ⁇ 3 W
  • a channel coherence time 10 ms.
  • the transmission power is 0.2 W and the simulations were performed on about 2.10 5 channel instances per hour.
  • the wireless equipment is characterised by a power consumption per instruction estimated to be between 17 nJ and 19 nJ, a total power capacity of between 4 Wh and 8 Wh, and an available memory of 5 MB.
  • An application call generates a slave of 10 tasks, each characterised by a memory need between 1 KB and 1 MB, a number of bits to be offloaded between 1 KB and 20 KB and a latency constraint between 90 ms and 300 ms,
  • the application call is modelled according to a Poisson distribution with a rate of 2 over 10 ms.
  • FIG. 2 illustrates the power discharge of the battery DB during the time t An hours) for the four methods A-D presented hereinabove, within the scope of scenario No. 1.
  • the offloading is observed to always be beneficial and method A according to the invention is shown to be more efficient than all of the other methods with a battery life extended by a factor of 2.29 compared to method B and by a factor of 1.55 compared to method D.
  • FIG. 3 illustrates the battery discharge over time for the four methods A-D presented hereinabove, within the scope of scenario No. 2.
  • This scenario shows that method A according to the invention is less efficient than method C (offloading only based on the power criterion) and method B (no offloading). This is because method A offloads urgent tasks capable of being offloaded, regardless of the channel conditions. This affects consumption, however guarantees good QoE.
  • FIG. 4 illustrates the battery discharge over time for the four methods A-D presented hereinabove, within the scope of scenario No. 3.
  • This random scenario shows that method A according to the invention is more efficient than method C (offloading only based on the power criterion), with a battery life extended by a factor of 1.45 compared to method B.
  • the method according to the invention has the advantage of limiting occurrences during which memory capacity and computing capacity are exceeded.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A method of processing a computing task required by wireless equipment of a cellular communication network, including classifying the task in at least one class of immediate offloaded execution and a class of immediate local execution, by traversing oriented graph decision nodes and terminal nodes each assigned to one of the classes, the decision nodes being distributed into at least three hierarchical levels themselves distributed into at least three subsets of levels. Traversal of the graph includes: during transit through any decision node of a first subset of levels, verification of a feasibility criterion for the offloading of the task for execution by third-party equipment; during transit through any decision node of a second subset of levels, verification of a criticality criterion for execution of the task, and during transit through any decision node of a third subset of levels, verification of an opportunity criterion for execution of the task.

Description

    TECHNICAL FIELD
  • The field of the invention is that of cellular radio communication systems. The invention more particularly concerns a distributed processing method for computing tasks according to which the execution of certain tasks is offloaded from a wireless equipment to a remote, third-party equipment.
  • PRIOR ART
  • Wireless equipments, for example mobile user equipments or wireless sensors, are increasingly capable of executing complex software applications that require significant computer processing capacities, resulting in particular in needs for memory and power resources.
  • However, these resources are limited and offloading the execution of certain computing tasks from the wireless equipment to a remote third-party equipment of the cellular radio communication system offers the possibility of expanding the capacities of the wireless equipment as well as its battery life. With regard to mobile user equipment, one may refer to the study by K. Karthik et al. entitled “A Survey of Computation Offloading for Mobile Systems”, Mobile Networks and Applications, vol. 18, No. 1, 2013.
  • With the emergence of advanced mobile user equipment such as “smartphones” and the arrival of new applications consuming data traffic, cellular telecommunication network operators must overcome an exponential increase in data traffic. The consequence of this is increasing congestion in the cells of the access network, and therefore degradation to the quality of service offered to network users. One development of these networks aiming at overcoming this congestion problem involves adding local, low-power access points offering limited radio coverage, generally dedicated to residential or business use. Therefore, the addition, beside the conventional base stations covering a macrocell, the radius of which generally extends from 2 km to 35 km, of local, low-power access points covering a small cell, such as a microcell (radius of less than 2 km), a picocell (the range of which is less than 200 m), or a femtocell (range of about 10 m) is used to satisfy this increase in traffic.
  • Although such local access points bring radio resources close to users, they also bring close to users resources comprising memory and processing capacities which can he used to offload a part of the computing tasks that must be executed by the mobile user equipment. Similarly, a wireless sensor data collection gateway has resources that can be used by the sensors.
  • Such offloading requires a decision to be made, generally based on the consideration of a single parameter, i.e. a compromise between the power consumed to perform the offload execution of a task and the power saved by the wireless equipment by having offloaded this execution.
  • However, many other parameters and conditions can be considered to consolidate the decision and adapt it to suit the conditions of the system in question. For example, limitations affecting wireless equipments other than power consumption can be considered, such as computer processing capacities or the memory resource. Moreover, the off-loading decision greatly depends on the task in question, for example on its latency constraints, the complexity of its computer processing, or its memory needs, etc. It is understood that the consideration of a single parameter, such as the compromise involving :power consumption, does not allow for a holistic decision to be made, in particular to meet the quality of experience (QoE) expected by the users.
  • Other works have therefore concentrated on drawing up multi-criteria decision algorithms in order to optimise decision-making. These algorithms however require the resolution of relatively complex optimisation problems. One example of this can be found in the article by Kovachev, D. et al. entitled “Adaptive Computation Offloading from Mobile Devices into the Cloud”, 2012 10th IEEE International Symposium on Parallel and Distributed Processing with Applications (ISPA), pp. 784, 791, 10-13 Jul. 2012, which proposes a decision algorithm taking into consideration power, memory and execution time.
  • DESCRIPTION OF THE INVENTION
  • There is therefore a need for a decision-making process for the offloading of the execution of a computing task from a wireless equipment to a remote third-party equipment that can take into consideration multiple parameters, without including them in a complex optimisation problem.
  • The purpose of the invention is to meet this need and in this respect offer a method for processing a computing task, the execution of which is required by a wireless equipment of a cellular communication network, characterised in that it comprises:
      • a step of classifying the task in a class belonging to a group of classes formed from at least one class of immediate offloaded execution and one class of immediate local execution,
      • if the task belongs to the class of immediate offloaded execution, a step of transmitting an offload execution request for the execution of the task by a third-party equipment of the cellular communication network, and
      • if the task belongs to the class of immediate local execution, a step for the prioritised execution of the task by the wireless equipment,
  • the classifying step being performed by traversing an oriented graph consisting of decision nodes, each having successor nodes in the graph and terminal nodes, each assigned to one of the classes of said group, the decision nodes being distributed into at least three hierarchical levels, themselves distributed into at least three subsets of levels, the traversal of the graph taking place from an initial decision node to reach a terminal node, and comprising:
      • during the transit through a decision node of a first subset of levels, the verification of a feasibility criterion for the off-loading of the task for execution by a third-party equipment,
      • during the transit through a decision node of a second subset of levels, the verification of a criticality criterion for the execution of the task, and
      • during the transit through a decision node of a third subset of levels, the verification of an opportunity criterion for the execution of the task.
  • Some preferred, however non-limiting aspects of the method are as follows:
      • it includes the receipt by the mobile user equipment of an authorisation message authorising the offloaded execution of the task;
      • the group of classes is formed from at least one class of immediate offloaded execution, one class of deferred offloaded execution, one class of immediate local execution and one class of deferred local execution;
      • the verification of a feasibility criterion for the offloading of the task for execution by a third-party equipment comprises a measurement of the connectivity status of the wireless equipment with the cellular communication network;
      • the verification of a criticality criterion for the execution of the task comprises the determination of the latency of the task;
      • it comprises the verification of a criticality criterion for the execution of the task by the wireless equipment;
      • it comprises the verification of an opportunity criterion for the offloading of the task for execution by a third-party equipment;
      • it comprises the verification of an opportunity criterion for the execution of the task by the wireless equipment;
      • the wireless equipment is a mobile user equipment and the third-party equipment is a local access point to the cellular communication network covering a microcell, a picocell or a femtocell, or a relay to said local access point.
  • The invention further relates to a computer program product comprising code instructions for executing the classifying step of the method described hereinabove, when said program is executed on a computer.
  • BRIEF DESCRIPTION OF THE FIGURES
  • Other aspects, purposes, advantages and characteristics of the invention shall be better understood upon reading the following detailed description given of the non-limiting preferred embodiments of the invention, provided for illustration purposes, with reference to the appended figures, in which:
  • FIG. 1 is a drawing illustrating an oriented graph capable of being used in one possible embodiment of the method according to the invention;
  • FIGS. 2 to 4 are drawings derived from simulations illustrating the performance levels of the invention in terms of power consumption, compared to other offloading decision-making processes, according to different scenarios.
  • DETAILED DESCRIPTION OF THE SPECIFIC EMBODIMENTS
  • The invention relates to a method for processing a computing task, the execution of which is required by a wireless equipment of a cellular communication network. It further relates to a computer program product comprising code instructions for executing the steps of the method when said program is executed on a computer.
  • The invention proposes a decision-making process regarding the offloading of a computing task in view of its execution, not by the wireless equipment itself, but by a remote third-party equipment such as a local access point to the cellular communication network (micro-, pico- or femtocell base station), a relay to such a local access point, or even a gateway, for example a wireless sensor data collection gateway. This process uses a hierarchical classification system that takes into consideration multiple parameters for example power consumption, latency constraints,: memory needs, computer processing capacities or communication conditions), without increasing the complexity of the decision-making process. The parameters taken into consideration can also be modified according to the target applications, in particular dynamically according to the system's evolutions.
  • The hierarchical classification includes a series of successive classifying operations, each operation being based on the consideration of a parameter affecting the decision of whether or not to offload.
  • At each time slot being considered, the method according to the invention is implemented for each of the computing tasks generated by the software application(s) being executed on the wireless equipment.
  • For each of these tasks, the method according to the invention comprises a step of classifying the task in a class belonging to a group of classes formed from at least one class of immediate offload execution and one class of immediate local execution. Each class is therefore associated with a specific decision with regard to the processing of the task.
  • This classifying step is then followed, if the task belongs to the class of immediate offloaded execution, by a step of transmitting an offloaded execution request for the execution of the task by a third-party equipment of the cellular communication network. Where relevant, the wireless equipment is then informed of the acceptance of this request via the receipt of an authorisation message authorising the offloaded execution of the task.
  • The classifying step is further followed, if the task belongs to the class of immediate local execution, by a step for the prioritised execution of the task by the wireless equipment.
  • In one possible embodiment, said group of classes is formed from at least four classes: one class of immediate offloaded execution, one class of deferred offloaded execution, one class of immediate local execution and one class of deferred local execution. It can also comprise a deferred decision class. If the execution (local or offloaded) or the decision is deferred, a classification of the task can be repeated during the next time slot or during a later time slot.
  • The classifying step is more particularly performed by traversing an oriented graph, one example embodiment of which is illustrated in FIG. 1. The oriented graph consists of decision nodes D1-D7, each having successor nodes in the graph, and of terminal nodes T1-T8, each assigned to one of the classes of said group.
  • The decision nodes can in particular be binary decision nodes, each having two successor nodes in the graph. The remainder of the description hereinbelow will therefore refer to such binary decision nodes, made with reference to the example embodiment illustrated in FIG. 1, without being limited thereto, whereby a decision node of the oriented graph is capable of comprising more than two successor nodes according to the criterion verified during the transit through said node.
  • The binary decision nodes D1-D7 are distributed into at least three hierarchical levels N1-N4, these levels themselves being distributed into at least three subsets of levels A1-A3, each comprising at least one level. The levels of a subset of levels can be hierarchically consecutive levels of the graph, without being limited thereto.
  • With reference to the example in FIG. 1, the first subset of levels A1 comprises a single level N1 where the binary decision node D1 is located, acting as a vertex or initial decision node of the oriented graph. The second subset of levels A1 comprises two levels N2 and N3 where the binary decision nodes D2, D4 and D3 are respectively located. The third subset of levels A3 comprises a single level N4 where the decision nodes D5-D7 are located.
  • The traversal of the graph takes place from an initial binary decision node (node D1 in the example in FIG. 1) to reach a terminal node T1-T8. This traversal comprises:
      • during the transit through a binary decision node D1 of a first subset of levels A1, the verification of a feasibility criterion for the offloading of the task for execution by the third-party equipment,
      • during the transit through a binary decision node C1, C2 of a second subset of levels A2, the verification of a criticality criterion for the execution of the task, and
      • during the transit through a binary decision node O1, O2, O3 of a third subset of levels A3, the verification of an opportunity criterion for the execution of the task.
  • In one possible embodiment, such as that illustrated in FIG. 1, the first, second and third subsets of levels A1-A3 are therefore hierarchically arranged in the graph. This takes place such that the feasibility criterion or criteria is are studied before the criticality criterion or criteria, itself/themselves being studied before the opportunity criterion or criteria. The invention is not however limited to this scenario, and the terms “first”, “second” and “third” subsets must be understood as describing a specific subset, and not as a hierarchical order in the graph. Therefore, for the purposes of illustration, the first subset can indeed be traversed after the third subset, itself traversed after the second subset. It is recalled that the levels of a subset of levels are not necessarily consecutive in the graph.
  • The invention is also not limited to the three subsets of levels described hereinabove and covering the feasibility, criticality and opportunity decision criteria families. On the contrary, it extends to a larger number of subsets so as to enable other decision criteria families to be incorporated, for example a subset of levels for verifying a security criterion for the execution of the task, or even for verifying a criterion regarding the non-invasion of privacy (for example if personal data could be transmitted to a third party in the event of offloaded execution), etc.
  • The following description aims to provide, with reference to the purely illustrative example in FIG. 1, examples of decision criteria that can be associated with a decision node, the satisfaction or non-satisfaction of which is verified during the traversal of the group to classify a task into one of the classes.
  • In this example, a feasibility criterion F for the offloading of the task for execution by the third-party equipment is therefore associated with an initial binary decision node D1. The transit through this node D1 results in a step for determining the satisfaction or non-satisfaction of this criterion, and therefore in the production of a distinction between tasks that can be offloaded and tasks that cannot be offloaded.
  • The feasibility criterion F is, for example, a technical criterion such as a hardware configuration parameter required to execute the task. The verification of this criterion consists, for example, in querying a look-up table where the offloading capability of a task is recorded (such a table can be built via a learning process, for example by recording the result of a task offloading test), or in directly querying the task when the offloading capability is provided during its programming.
  • The feasibility criterion F can also take into consideration the quality of a communication channel linking the wireless equipment and the remote third-party equipment. The verification of the satisfaction of this criterion can therefore further include a measurement of the connectivity status of the wireless equipment with the cellular communication network, said criterion not being satisfied when the status measured is less than a threshold. For example, in the event of no connectivity, the feasibility criterion F is not met.
  • If the feasibility criterion or criteria is/are met, and still with reference to the example in FIG. 1, the traversal of the graph continues via the transit through the binary decision node D2 with which is associated a first criticality criterion for the execution of the task C1, in this case provided to produce a distinction between urgent and non-urgent tasks.
  • This first criterion C1 is, for example, met when the latency associated with the task is less than a given threshold, which depends, for example, on the quality of experience QoE expected by a user. This first criterion C1 can therefore use the time to live (TTL) of the task, which can be entered into a look-up table, the criterion being met when the time to live of the task is less than a threshold, for example a percentage of a maximum time to live that is acceptable to the user.
  • If this first criticality criterion C1 is met, the traversal of the graph in FIG. 1 continues via the transit through the binary decision node D3 with which is associated a second criticality criterion for the execution of the task C2. This second criterion C2 is more particularly a criticality criterion for the execution of the task by the wireless equipment.
  • This second criterion C2 is applied to the urgent tasks capable of being offloaded, however which local execution by the wireless equipment is not ruled out. However, the local execution of these tasks may be impossible because of a lack of the resources required in the wireless equipment. In this case, these tasks must be offloaded. The determination of the satisfaction or non-satisfaction of this second criterion C2 can take on the form of a series of tests taking into consideration the processing capacities, the memory needs and the battery consumption. For the purposes of illustration, this criterion C2 is satisfied if one of the following conditions is met:
      • the battery power level is less than a pre-set critical threshold;
      • the task consumes more than a given percentage of remaining power;
      • the memory needs for the task are greater than an authorised percentage of available memory of the wireless equipment;
      • the task requires processing capacities that are greater than a percentage of the processing capacities of the wireless equipment.
  • If this second criticality criterion C2 is met, the local execution of the task is considered to be critical, and the traversal of the graph leads to the terminal node T1, in this case associated with the class of immediate offloaded execution.
  • If this second criticality criterion C2 is not met, the local execution of the task is not considered to be critical, and the urgent task capable of being offloaded can therefore either be offloaded or executed locally. The decision in this case is made by the transit through the decision node D5 with which is associated an opportunity criterion O1 for the execution of the task. The opportunity criterion is, for example, an opportunity criterion for the execution of the task by the third-party equipment. This can be a power-related opportunity criterion, and the determination of the satisfaction of this criterion O1 may consist in verifying whether the offloaded execution by the third-party equipment consumes less power than the local execution.
  • If this criterion O1 is satisfied, the traversal of the graph results in the terminal node T2, in this case associated, as for the terminal node T1, with the class of immediate offloaded execution. Conversely, if this criterion O1 is not satisfied, the traversal of the graph results in the terminal node T3, in this case associated with the class of immediate local execution.
  • Back to the decision node D2, if the criticality criterion C1 is not met (the task can therefore be offloaded but is not urgent), the traversal of the graph transits through the decision node D6, with which is associated an opportunity criterion O2 for the execution of the task. The purpose of this criterion O2 is, for example, to study the opportunity of offloading the task, even though it is not urgent.
  • The determination of the satisfaction or non-satisfaction of this opportunity criterion O2 consists, for example, in examining if the capacity of the communication channel allows for the transmission of all tasks classed into the class of immediate offloaded execution (terminal nodes T1 and T2). For example, if the current channel coefficient is greater than the mean coefficient, the channel status is considered to be good. The opportunity criterion O2 is therefore met, the traversal of the graph results in the terminal node T4, in this case associated with the class of immediate offloaded execution. This allows for the offloading of the execution of a maximum number of non-urgent tasks capable of being offloaded, while, for example, prioritising those with the lowest latencies.
  • Conversely, if the opportunity criterion O2 is not met, the traversal of the graph results in the terminal node T5, in this case associated with the class of deferred offloaded execution.
  • Such an offloading of non-urgent tasks can be considered to not only be an opportunistic use of the radio link, but also a tool designed to relieve the system during subsequent time slots. Conversely, the system is prevented from performing expensive offloaded processes if the channel conditions are not good.
  • Back to the decision node D1, if the feasibility criterion F is not met (the task cannot be offloaded), the traversal of the graph transits through the decision node D4, with which is associated the first criticality criterion C1 for the execution of the task already described hereinabove. Therefore, depending on the latency of the task, the latter is classed as urgent or non-urgent.
  • If the first criticality criterion C1 is satisfied (the task is urgent), the traversal of the graph leads to the terminal node T6, in this case associated with the class of immediate local execution. Conversely, if this criticality criterion C1 is not met (the task is not urgent), the traversal of the graph transits through the decision node D7, with which is associated an opportunity criterion O3 for the non-urgent execution of the task by the mobile user equipment. This opportunity criterion O3 is, for example, similar to the criticality criterion C2 and is used to verify whether the non-urgent execution of the task would be critical for the mobile user equipment.
  • If not, the resources of the mobile equipment are used opportunistically to perform the immediate local execution of the task, even though said task is not urgent. The traversal of the graph thus results in the terminal node T8, in this case associated with the class of immediate local execution.
  • If such an opportunistic use is not possible, the traversal of the graph results in the terminal node T7, in this case associated with the class of deferred local execution.
  • Simulations have been made to estimate the performance levels of the method according to the invention (method A according to the example in FIG. 1, the battery discharge of which is illustrated by the curves with crosses in FIGS. 2-4) in comparison with other task processing methods that must be implemented by a mobile user equipment. For the purposes of comparison, the following methods are considered: a method wherein no offloading takes place (method B: curves with diamonds), a method inspired by the standard approach wherein the offloading decision is made when the power consumed by the wireless equipment to execute the task is less than the power consumed by the wireless equipment to offload the task to a local access point such as a femtocell (method C: curves with dots), and a method wherein an off-siting process is systematically performed if the task is capable of being offloaded (method D: curves with circles).
  • Three scenarios have also been considered, combining parameters representing a mean channel coefficient (low αmin, random αmix or high αmax) and a computing intensity per task (low TCmin, random TCmix or high TCmax). According to scenario No. 1, the channel conditions are good (αmax) and the tasks require a high computing intensity (TCmax). According to scenario No. 2, the channel conditions are poor (αmin) and the tasks require a low computing intensity (TCmin). According to scenario No. 3, the channel conditions are random (αmix) and the tasks require a random computing intensity (TCmix).
  • The simulations have been performed by taking into consideration a single user located 5 metres from the base station of a femtocell. The uplink bandwidth is 20 MHz, the attenuation coefficient along the path is equal to 5, the noise has a power of 10−3 W, and a channel coherence time of 10 ms. The transmission power is 0.2 W and the simulations were performed on about 2.105 channel instances per hour.
  • The wireless equipment is characterised by a power consumption per instruction estimated to be between 17 nJ and 19 nJ, a total power capacity of between 4 Wh and 8 Wh, and an available memory of 5 MB.
  • An application call generates a slave of 10 tasks, each characterised by a memory need between 1 KB and 1 MB, a number of bits to be offloaded between 1 KB and 20 KB and a latency constraint between 90 ms and 300 ms, The application call is modelled according to a Poisson distribution with a rate of 2 over 10 ms.
  • FIG. 2 illustrates the power discharge of the battery DB during the time t An hours) for the four methods A-D presented hereinabove, within the scope of scenario No. 1. The offloading is observed to always be beneficial and method A according to the invention is shown to be more efficient than all of the other methods with a battery life extended by a factor of 2.29 compared to method B and by a factor of 1.55 compared to method D.
  • FIG. 3 illustrates the battery discharge over time for the four methods A-D presented hereinabove, within the scope of scenario No. 2. This scenario shows that method A according to the invention is less efficient than method C (offloading only based on the power criterion) and method B (no offloading). This is because method A offloads urgent tasks capable of being offloaded, regardless of the channel conditions. This affects consumption, however guarantees good QoE.
  • FIG. 4 illustrates the battery discharge over time for the four methods A-D presented hereinabove, within the scope of scenario No. 3. This random scenario shows that method A according to the invention is more efficient than method C (offloading only based on the power criterion), with a battery life extended by a factor of 1.45 compared to method B.
  • The results of these simulations are recorded in the table below.
  • Memory Computing
    Battery life capacity exceeded capacity exceeded
    Scenario Method (min) (%) (%)
    1 A 223.9 0 0
    B 97.86 2.61 5.02
    C 144.77 0.17 4.31
    D 144.77 0.17 4.31
    2 A 235.64 0 0
    B 263.19 0.3 0
    C 277.8 0.02 0
    D 231.02 <0.01 0
    3 A 223.96 0 0
    B 153.09 1.29 0
    C 187.09 0 0
    D 158.87 0 0
  • Therefore, further to its interest in terms of energy savings, the method according to the invention has the advantage of limiting occurrences during which memory capacity and computing capacity are exceeded.

Claims (15)

1-14. (canceled)
15. A method for processing a computing task, execution of which is required by a wireless equipment of a cellular communication network, the method comprising:
classifying the task in a class belonging to a group of classes formed from at least one class of immediate offloaded execution and one class of immediate local execution;
if the task belongs to the class of immediate offloaded execution, transmitting an offload execution request for the execution of the task by a third-party equipment of the cellular communication network; and
if the task belongs to the class of immediate local execution, performing prioritized execution of the task by the wireless equipment;
the classifying being performed by traversing an oriented graph of decision nodes, each having successor nodes in the graph and terminal nodes, each assigned to one of the classes of the group, the decision nodes being distributed into at least three hierarchical levels, themselves distributed into at least three subsets of levels, traversal of the graph taking place from an initial decision node to reach a terminal node, and comprising:
during transit through a decision node of a first subset of levels, verification of a feasibility criterion for offloading of the task for execution by a third-party equipment item,
during transit through a decision node of a second subset of levels, verification of a criticality criterion for execution of the task, and
during transit through a decision node of a third subset of levels, verification of an opportunity criterion for execution of the task.
16. The method according to claim 15, further comprising receiving, by the wireless equipment, an authorization message authorizing the offloaded execution of the task.
17. The method according to claim 15, wherein the group of classes is formed from at least one class of immediate offloaded execution, one class of deferred offloaded execution, one class of immediate local execution, and one class of deferred local execution.
18. The method according to claim 15, wherein the verification of a feasibility criterion for the offloading of the task for execution by a third-party equipment comprises a measurement of connectivity status of the wireless equipment with the cellular communication network, the feasibility criterion not being verified if the measured connectivity status is less than a threshold.
19. The method according to claim 15, wherein the verification of a criticality criterion for the execution of the task comprises determination of latency of the task, the criticality criterion not being verified if the determined latency is greater than a threshold.
20. The method according to claim 15, further comprising verification of a criticality criterion for the execution of the task by the wireless equipment.
21. The method according to claim 20, wherein the criticality criterion for the execution of the task by the wireless equipment is verified when a power level of a battery of the wireless equipment is less than a threshold, or when execution of the task consumes more than a given percentage of the power level of the battery, or when memory needs for the task are greater than a percentage of available memory of the wireless equipment, or when the task requires processing capacities that exceed a percentage of processing capacities of the wireless equipment.
22. The method according to claim 15, wherein the verification of an opportunity criterion for the offloading of the task comprises verifying the opportunity criterion for the offloading of the task for execution by a third-party equipment.
23. The method according to claim 22, wherein the verification of the opportunity criterion for the offloading of the task for execution by a third-party equipment comprises a comparison between connectivity status of the wireless equipment with the cellular communication network and a mean connectivity status.
24. The method according to claim 22, wherein the verification of the opportunity criterion for the offloading of the task for execution by a third-party equipment item comprises a comparison between quantity of power consumed if the execution of the task is offloaded to the third-party equipment and quantity of power consumed if the execution of the task is performed locally by the wireless equipment.
25. The method according to claim 15, wherein the verification of an opportunity criterion for the execution of the task comprises verifying the opportunity criterion for the execution of the task by the wireless equipment.
26. The method according to claim 25, wherein the opportunity criterion for the execution of the task by the wireless equipment is not verified when a power level of a battery of the wireless equipment is less than a threshold, or when execution of the task consumes more than a given percentage of the power level of the battery, or when memory needs for the task are greater than a percentage of available memory of the wireless equipment, or when the task requires processing capacities that exceed a percentage of processing capacities of the wireless equipment.
27. The method according to claim 15, wherein the wireless equipment is a mobile user equipment item and the third-party equipment is a local access point to the cellular communication network covering a microcell, a picocell or a femtocell, or a relay to the local access point.
28. A non-transitory computer program product comprising computer code instructions for executing the classifying of the method according to claim 15, when the computer code instructions are executed on a computer.
US15/034,770 2013-11-05 2014-11-03 Method and computer program for offloading execution of computing tasks of a wireless equipment Active 2035-02-24 US10013282B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1360817A FR3012895B1 (en) 2013-11-05 2013-11-05 METHOD AND COMPUTER PROGRAM FOR PERFORMING COMPUTER TASKS OF WIRELESS EQUIPMENT
FR1360817 2013-11-05
PCT/EP2014/073548 WO2015067554A1 (en) 2013-11-05 2014-11-03 Method and computer program for the off-site execution of computing tasks of an item of wireless equipment

Publications (2)

Publication Number Publication Date
US20160274938A1 true US20160274938A1 (en) 2016-09-22
US10013282B2 US10013282B2 (en) 2018-07-03

Family

ID=50473378

Family Applications (1)

Application Number Title Priority Date Filing Date
US15/034,770 Active 2035-02-24 US10013282B2 (en) 2013-11-05 2014-11-03 Method and computer program for offloading execution of computing tasks of a wireless equipment

Country Status (4)

Country Link
US (1) US10013282B2 (en)
EP (1) EP3066565B1 (en)
FR (1) FR3012895B1 (en)
WO (1) WO2015067554A1 (en)

Cited By (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170068550A1 (en) * 2015-09-08 2017-03-09 Apple Inc. Distributed personal assistant
US10978090B2 (en) 2013-02-07 2021-04-13 Apple Inc. Voice trigger for a digital assistant
US10984798B2 (en) 2018-06-01 2021-04-20 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11009970B2 (en) 2018-06-01 2021-05-18 Apple Inc. Attention aware virtual assistant dismissal
US11037565B2 (en) 2016-06-10 2021-06-15 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11087759B2 (en) 2015-03-08 2021-08-10 Apple Inc. Virtual assistant activation
CN113365290A (en) * 2021-06-10 2021-09-07 中山大学 Greedy strategy-based game theory calculation unloading method in world fusion network
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11152002B2 (en) 2016-06-11 2021-10-19 Apple Inc. Application integration with a digital assistant
US11169616B2 (en) 2018-05-07 2021-11-09 Apple Inc. Raise to speak
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11257504B2 (en) 2014-05-30 2022-02-22 Apple Inc. Intelligent assistant for home automation
US11321116B2 (en) 2012-05-15 2022-05-03 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US11348582B2 (en) 2008-10-02 2022-05-31 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11380310B2 (en) 2017-05-12 2022-07-05 Apple Inc. Low-latency intelligent automated assistant
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11405466B2 (en) 2017-05-12 2022-08-02 Apple Inc. Synchronization and task delegation of a digital assistant
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US11431642B2 (en) 2018-06-01 2022-08-30 Apple Inc. Variable latency device coordination
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11516537B2 (en) 2014-06-30 2022-11-29 Apple Inc. Intelligent automated assistant for TV user interactions
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US11580990B2 (en) 2017-05-12 2023-02-14 Apple Inc. User-specific acoustic models
US11599331B2 (en) 2017-05-11 2023-03-07 Apple Inc. Maintaining privacy of personal information
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11670289B2 (en) 2014-05-30 2023-06-06 Apple Inc. Multi-command single utterance input method
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US11675491B2 (en) 2019-05-06 2023-06-13 Apple Inc. User configurable task triggers
US11675829B2 (en) 2017-05-16 2023-06-13 Apple Inc. Intelligent automated assistant for media exploration
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11705130B2 (en) 2019-05-06 2023-07-18 Apple Inc. Spoken notifications
US11710482B2 (en) 2018-03-26 2023-07-25 Apple Inc. Natural assistant interaction
US11727219B2 (en) 2013-06-09 2023-08-15 Apple Inc. System and method for inferring user intent from speech inputs
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US11783815B2 (en) 2019-03-18 2023-10-10 Apple Inc. Multimodality in digital assistant systems
US11782768B2 (en) * 2015-12-23 2023-10-10 Interdigital Patent Holdings, Inc. Methods of offloading computation from mobile device to cloud
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US11809783B2 (en) 2016-06-11 2023-11-07 Apple Inc. Intelligent device arbitration and control
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US11854539B2 (en) 2018-05-07 2023-12-26 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US11853647B2 (en) 2015-12-23 2023-12-26 Apple Inc. Proactive assistance based on dialog communication between devices
US11888791B2 (en) 2019-05-21 2024-01-30 Apple Inc. Providing message response suggestions
US11886805B2 (en) 2015-11-09 2024-01-30 Apple Inc. Unconventional virtual assistant interactions
US11893992B2 (en) 2018-09-28 2024-02-06 Apple Inc. Multi-modal inputs for voice commands
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US11947873B2 (en) 2015-06-29 2024-04-02 Apple Inc. Virtual assistant for media playback
US12001933B2 (en) 2015-05-15 2024-06-04 Apple Inc. Virtual assistant in a communication session
US12010262B2 (en) 2013-08-06 2024-06-11 Apple Inc. Auto-activating smart responses based on activities from remote devices
US12014118B2 (en) 2017-05-15 2024-06-18 Apple Inc. Multi-modal interfaces having selection disambiguation and text modification capability
US12051413B2 (en) 2015-09-30 2024-07-30 Apple Inc. Intelligent device identification
US12067985B2 (en) 2018-06-01 2024-08-20 Apple Inc. Virtual assistant operations in multi-device environments
US12073147B2 (en) 2013-06-09 2024-08-27 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US12087308B2 (en) 2010-01-18 2024-09-10 Apple Inc. Intelligent automated assistant
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
US12223282B2 (en) 2016-06-09 2025-02-11 Apple Inc. Intelligent automated assistant in a home environment
US12254887B2 (en) 2017-05-16 2025-03-18 Apple Inc. Far-field extension of digital assistant services for providing a notification of an event to a user
US12260234B2 (en) 2017-01-09 2025-03-25 Apple Inc. Application integration with a digital assistant
US12301635B2 (en) 2020-05-11 2025-05-13 Apple Inc. Digital assistant hardware abstraction

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109379727B (en) * 2018-10-16 2021-10-01 重庆邮电大学 Distributed task offloading and cooperative execution scheme based on MEC in the Internet of Vehicles
KR102648102B1 (en) 2019-01-18 2024-03-18 삼성전자주식회사 Apparatus and mehtod for providing work environment for application program between electronic device and external server
CN117891532B (en) * 2024-03-15 2024-07-05 东北大学 A terminal energy efficiency optimization offloading method based on attention multi-index sorting

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140095695A1 (en) * 2012-09-28 2014-04-03 Ren Wang Cloud aware computing distribution to improve performance and energy for mobile devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2658337A1 (en) 1990-02-09 1991-08-16 Philips Electronique Lab METHOD FOR LEARNING A HIERARCHISED NEURONE NETWORK AND HIERARCHISED NEURON NETWORK.
US6182058B1 (en) * 1997-02-28 2001-01-30 Silicon Graphics, Inc. Bayes rule based and decision tree hybrid classifier
FR2883396B1 (en) * 2005-03-21 2008-05-02 Giat Ind Sa METHOD FOR COORDINATING AND ASSISTING THE DISTRIBUTION OF TASKS WITHIN A TEAM OF OPERATORS
US7370039B2 (en) 2005-04-05 2008-05-06 International Business Machines Corporation Method and system for optimizing configuration classification of software
US8495129B2 (en) * 2010-03-16 2013-07-23 Microsoft Corporation Energy-aware code offload for mobile devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140095695A1 (en) * 2012-09-28 2014-04-03 Ren Wang Cloud aware computing distribution to improve performance and energy for mobile devices

Cited By (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11671920B2 (en) 2007-04-03 2023-06-06 Apple Inc. Method and system for operating a multifunction portable electronic device using voice-activation
US11979836B2 (en) 2007-04-03 2024-05-07 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US11348582B2 (en) 2008-10-02 2022-05-31 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11900936B2 (en) 2008-10-02 2024-02-13 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11423886B2 (en) 2010-01-18 2022-08-23 Apple Inc. Task flow identification based on user intent
US12087308B2 (en) 2010-01-18 2024-09-10 Apple Inc. Intelligent automated assistant
US12165635B2 (en) 2010-01-18 2024-12-10 Apple Inc. Intelligent automated assistant
US11120372B2 (en) 2011-06-03 2021-09-14 Apple Inc. Performing actions associated with task items that represent tasks to perform
US11321116B2 (en) 2012-05-15 2022-05-03 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US12009007B2 (en) 2013-02-07 2024-06-11 Apple Inc. Voice trigger for a digital assistant
US10978090B2 (en) 2013-02-07 2021-04-13 Apple Inc. Voice trigger for a digital assistant
US11557310B2 (en) 2013-02-07 2023-01-17 Apple Inc. Voice trigger for a digital assistant
US11862186B2 (en) 2013-02-07 2024-01-02 Apple Inc. Voice trigger for a digital assistant
US12277954B2 (en) 2013-02-07 2025-04-15 Apple Inc. Voice trigger for a digital assistant
US11636869B2 (en) 2013-02-07 2023-04-25 Apple Inc. Voice trigger for a digital assistant
US11388291B2 (en) 2013-03-14 2022-07-12 Apple Inc. System and method for processing voicemail
US11798547B2 (en) 2013-03-15 2023-10-24 Apple Inc. Voice activated device for use with a voice-based digital assistant
US11727219B2 (en) 2013-06-09 2023-08-15 Apple Inc. System and method for inferring user intent from speech inputs
US12073147B2 (en) 2013-06-09 2024-08-27 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US12010262B2 (en) 2013-08-06 2024-06-11 Apple Inc. Auto-activating smart responses based on activities from remote devices
US11133008B2 (en) 2014-05-30 2021-09-28 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US12067990B2 (en) 2014-05-30 2024-08-20 Apple Inc. Intelligent assistant for home automation
US11257504B2 (en) 2014-05-30 2022-02-22 Apple Inc. Intelligent assistant for home automation
US11699448B2 (en) 2014-05-30 2023-07-11 Apple Inc. Intelligent assistant for home automation
US12118999B2 (en) 2014-05-30 2024-10-15 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11810562B2 (en) 2014-05-30 2023-11-07 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US11670289B2 (en) 2014-05-30 2023-06-06 Apple Inc. Multi-command single utterance input method
US11516537B2 (en) 2014-06-30 2022-11-29 Apple Inc. Intelligent automated assistant for TV user interactions
US12200297B2 (en) 2014-06-30 2025-01-14 Apple Inc. Intelligent automated assistant for TV user interactions
US11838579B2 (en) 2014-06-30 2023-12-05 Apple Inc. Intelligent automated assistant for TV user interactions
US12236952B2 (en) 2015-03-08 2025-02-25 Apple Inc. Virtual assistant activation
US11087759B2 (en) 2015-03-08 2021-08-10 Apple Inc. Virtual assistant activation
US11842734B2 (en) 2015-03-08 2023-12-12 Apple Inc. Virtual assistant activation
US12154016B2 (en) 2015-05-15 2024-11-26 Apple Inc. Virtual assistant in a communication session
US12001933B2 (en) 2015-05-15 2024-06-04 Apple Inc. Virtual assistant in a communication session
US11070949B2 (en) 2015-05-27 2021-07-20 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on an electronic device with a touch-sensitive display
US11947873B2 (en) 2015-06-29 2024-04-02 Apple Inc. Virtual assistant for media playback
US20170068550A1 (en) * 2015-09-08 2017-03-09 Apple Inc. Distributed personal assistant
US11853536B2 (en) 2015-09-08 2023-12-26 Apple Inc. Intelligent automated assistant in a media environment
US11500672B2 (en) 2015-09-08 2022-11-15 Apple Inc. Distributed personal assistant
US12204932B2 (en) 2015-09-08 2025-01-21 Apple Inc. Distributed personal assistant
US11126400B2 (en) 2015-09-08 2021-09-21 Apple Inc. Zero latency digital assistant
US11954405B2 (en) 2015-09-08 2024-04-09 Apple Inc. Zero latency digital assistant
US11550542B2 (en) 2015-09-08 2023-01-10 Apple Inc. Zero latency digital assistant
US11809483B2 (en) 2015-09-08 2023-11-07 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) * 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US12051413B2 (en) 2015-09-30 2024-07-30 Apple Inc. Intelligent device identification
US11526368B2 (en) 2015-11-06 2022-12-13 Apple Inc. Intelligent automated assistant in a messaging environment
US11809886B2 (en) 2015-11-06 2023-11-07 Apple Inc. Intelligent automated assistant in a messaging environment
US11886805B2 (en) 2015-11-09 2024-01-30 Apple Inc. Unconventional virtual assistant interactions
US11853647B2 (en) 2015-12-23 2023-12-26 Apple Inc. Proactive assistance based on dialog communication between devices
US11782768B2 (en) * 2015-12-23 2023-10-10 Interdigital Patent Holdings, Inc. Methods of offloading computation from mobile device to cloud
US12223282B2 (en) 2016-06-09 2025-02-11 Apple Inc. Intelligent automated assistant in a home environment
US11657820B2 (en) 2016-06-10 2023-05-23 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US11037565B2 (en) 2016-06-10 2021-06-15 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US12175977B2 (en) 2016-06-10 2024-12-24 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
US11152002B2 (en) 2016-06-11 2021-10-19 Apple Inc. Application integration with a digital assistant
US11749275B2 (en) 2016-06-11 2023-09-05 Apple Inc. Application integration with a digital assistant
US11809783B2 (en) 2016-06-11 2023-11-07 Apple Inc. Intelligent device arbitration and control
US12293763B2 (en) 2016-06-11 2025-05-06 Apple Inc. Application integration with a digital assistant
US12260234B2 (en) 2017-01-09 2025-03-25 Apple Inc. Application integration with a digital assistant
US11467802B2 (en) 2017-05-11 2022-10-11 Apple Inc. Maintaining privacy of personal information
US11599331B2 (en) 2017-05-11 2023-03-07 Apple Inc. Maintaining privacy of personal information
US11837237B2 (en) 2017-05-12 2023-12-05 Apple Inc. User-specific acoustic models
US11405466B2 (en) 2017-05-12 2022-08-02 Apple Inc. Synchronization and task delegation of a digital assistant
US11538469B2 (en) 2017-05-12 2022-12-27 Apple Inc. Low-latency intelligent automated assistant
US11862151B2 (en) 2017-05-12 2024-01-02 Apple Inc. Low-latency intelligent automated assistant
US11580990B2 (en) 2017-05-12 2023-02-14 Apple Inc. User-specific acoustic models
US11380310B2 (en) 2017-05-12 2022-07-05 Apple Inc. Low-latency intelligent automated assistant
US12014118B2 (en) 2017-05-15 2024-06-18 Apple Inc. Multi-modal interfaces having selection disambiguation and text modification capability
US11532306B2 (en) 2017-05-16 2022-12-20 Apple Inc. Detecting a trigger of a digital assistant
US12026197B2 (en) 2017-05-16 2024-07-02 Apple Inc. Intelligent automated assistant for media exploration
US12254887B2 (en) 2017-05-16 2025-03-18 Apple Inc. Far-field extension of digital assistant services for providing a notification of an event to a user
US11675829B2 (en) 2017-05-16 2023-06-13 Apple Inc. Intelligent automated assistant for media exploration
US11710482B2 (en) 2018-03-26 2023-07-25 Apple Inc. Natural assistant interaction
US12211502B2 (en) 2018-03-26 2025-01-28 Apple Inc. Natural assistant interaction
US11900923B2 (en) 2018-05-07 2024-02-13 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11907436B2 (en) 2018-05-07 2024-02-20 Apple Inc. Raise to speak
US11169616B2 (en) 2018-05-07 2021-11-09 Apple Inc. Raise to speak
US11854539B2 (en) 2018-05-07 2023-12-26 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US11487364B2 (en) 2018-05-07 2022-11-01 Apple Inc. Raise to speak
US11630525B2 (en) 2018-06-01 2023-04-18 Apple Inc. Attention aware virtual assistant dismissal
US11431642B2 (en) 2018-06-01 2022-08-30 Apple Inc. Variable latency device coordination
US12061752B2 (en) 2018-06-01 2024-08-13 Apple Inc. Attention aware virtual assistant dismissal
US11009970B2 (en) 2018-06-01 2021-05-18 Apple Inc. Attention aware virtual assistant dismissal
US12067985B2 (en) 2018-06-01 2024-08-20 Apple Inc. Virtual assistant operations in multi-device environments
US12080287B2 (en) 2018-06-01 2024-09-03 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11360577B2 (en) 2018-06-01 2022-06-14 Apple Inc. Attention aware virtual assistant dismissal
US10984798B2 (en) 2018-06-01 2021-04-20 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11893992B2 (en) 2018-09-28 2024-02-06 Apple Inc. Multi-modal inputs for voice commands
US11783815B2 (en) 2019-03-18 2023-10-10 Apple Inc. Multimodality in digital assistant systems
US12136419B2 (en) 2019-03-18 2024-11-05 Apple Inc. Multimodality in digital assistant systems
US11675491B2 (en) 2019-05-06 2023-06-13 Apple Inc. User configurable task triggers
US12154571B2 (en) 2019-05-06 2024-11-26 Apple Inc. Spoken notifications
US11705130B2 (en) 2019-05-06 2023-07-18 Apple Inc. Spoken notifications
US12216894B2 (en) 2019-05-06 2025-02-04 Apple Inc. User configurable task triggers
US11888791B2 (en) 2019-05-21 2024-01-30 Apple Inc. Providing message response suggestions
US11657813B2 (en) 2019-05-31 2023-05-23 Apple Inc. Voice identification in digital assistant systems
US11237797B2 (en) 2019-05-31 2022-02-01 Apple Inc. User activity shortcut suggestions
US11790914B2 (en) 2019-06-01 2023-10-17 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11765209B2 (en) 2020-05-11 2023-09-19 Apple Inc. Digital assistant hardware abstraction
US12197712B2 (en) 2020-05-11 2025-01-14 Apple Inc. Providing relevant data items based on context
US11924254B2 (en) 2020-05-11 2024-03-05 Apple Inc. Digital assistant hardware abstraction
US11914848B2 (en) 2020-05-11 2024-02-27 Apple Inc. Providing relevant data items based on context
US12301635B2 (en) 2020-05-11 2025-05-13 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11838734B2 (en) 2020-07-20 2023-12-05 Apple Inc. Multi-device audio adjustment coordination
US12219314B2 (en) 2020-07-21 2025-02-04 Apple Inc. User identification using headphones
US11696060B2 (en) 2020-07-21 2023-07-04 Apple Inc. User identification using headphones
US11750962B2 (en) 2020-07-21 2023-09-05 Apple Inc. User identification using headphones
CN113365290A (en) * 2021-06-10 2021-09-07 中山大学 Greedy strategy-based game theory calculation unloading method in world fusion network

Also Published As

Publication number Publication date
FR3012895A1 (en) 2015-05-08
EP3066565B1 (en) 2022-09-14
EP3066565A1 (en) 2016-09-14
WO2015067554A1 (en) 2015-05-14
US10013282B2 (en) 2018-07-03
FR3012895B1 (en) 2015-12-25

Similar Documents

Publication Publication Date Title
US10013282B2 (en) Method and computer program for offloading execution of computing tasks of a wireless equipment
Tran et al. Joint task offloading and resource allocation for multi-server mobile-edge computing networks
Gao et al. PORA: Predictive offloading and resource allocation in dynamic fog computing systems
Kasgari et al. Model-free ultra reliable low latency communication (URLLC): A deep reinforcement learning framework
Labidi et al. Energy-optimal resource scheduling and computation offloading in small cell networks
Wang et al. A high reliable computing offloading strategy using deep reinforcement learning for iovs in edge computing
CN111466103B (en) Method and system for generation and adaptation of network baselines
Tareq et al. Ultra reliable, low latency vehicle-to-infrastructure wireless communications with edge computing
Liu et al. Joint task offloading and resource allocation for obtaining fresh status updates in multi-device MEC systems
Markova et al. Flexible spectrum management in a smart city within licensed shared access framework
Wei et al. Joint optimization of cluster formation and power control for interference-limited machine-to-machine communications
Falkenberg et al. Discover your competition in LTE: Client-based passive data rate prediction by machine learning
Yang et al. Locally adaptive scheduling policy for optimizing information freshness in wireless networks
Liu et al. Joint scheduling and power optimization for delay constrained transmissions in coded caching over wireless fading channels
US8649269B2 (en) Method of controlling resource usage in communication systems
Wu et al. Mobile data offloading under attractor selection in heterogeneous networks
CN116781520A (en) A slice wireless resource configuration method, device and storage medium
Han et al. Throughput-efficient channel allocation in multi-channel cognitive vehicular networks
Liu et al. Optimizing IoT energy efficiency on edge (EEE): a cross-layer design in a cognitive mesh network
US20230254723A1 (en) Data transmission method and communication apparatus
Lee et al. CASTLE over the air: Distributed scheduling for cellular data transmissions
Zhan et al. Delay-aware distributionally robust trajectory UAV-assisted MEC with uncertain task size
Yang et al. Reliability-optimal designs in MEC networks with finite blocklength codes and outdated CSI
Meng et al. Energy Optimization in Statistical AoI-aware MEC Systems
Subramanian et al. HTmRPL++: a trust-aware RPL routing protocol for fog enabled Internet of Things

Legal Events

Date Code Title Description
AS Assignment

Owner name: UNIVERSITA DEGLI STUDI DI ROMA "LA SAPIENZA", ITAL

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CALVANESE STRINATI, EMILIO;BARBAROSSA, SERGIO;OUEIS, JESSICA;SIGNING DATES FROM 20160509 TO 20171213;REEL/FRAME:044653/0811

Owner name: COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CALVANESE STRINATI, EMILIO;BARBAROSSA, SERGIO;OUEIS, JESSICA;SIGNING DATES FROM 20160509 TO 20171213;REEL/FRAME:044653/0811

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4