IP Library Patent Application 16835193
Patent Application
App. No. 16/835,193

PRIVACY-PRESERVING DISTRIBUTED VISUAL DATA PROCESSING

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
16/835,193
Abstract

In one embodiment, an apparatus comprises a processor to: identify a workload comprising a plurality of tasks; generate a workload graph based on the workload, wherein the workload graph comprises information associated with the plurality of tasks; identify a device connectivity graph, wherein the device connectivity graph comprises device connectivity information associated with a plurality of processing devices; identify a privacy policy associated with the workload; identify privacy level information associated with the plurality of processing devices; identify a privacy constraint based on the privacy policy and the privacy level information; and determine a workload schedule, wherein the workload schedule comprises a mapping of the workload onto the plurality of processing devices, and wherein the workload schedule is determined based on the privacy constraint, the workload graph, and the device connectivity graph. The apparatus further comprises a communication interface to send the workload schedule to the plurality of processing devices.

Claims (76)

1 .- 25 . (canceled)

26 . A computing device to perform privacy-preserving workload scheduling across a computing infrastructure, comprising:

network interface circuitry to communicate over a network; and

processing circuitry to:

receive, via the network interface circuitry, a request to schedule a workload for execution across the computing infrastructure;

access a privacy policy associated with the workload, wherein the privacy policy indicates a plurality of privacy requirements for execution of the workload;

access a privacy level agreement associated with the computing infrastructure, wherein the privacy level agreement indicates a plurality of privacy levels provided across the computing infrastructure;

determine, based at least in part on the privacy policy and the privacy level agreement, a workload schedule for executing the workload, wherein the workload schedule assigns execution of the workload across a portion of the computing infrastructure; and

send, via the network interface circuitry, the workload schedule to the portion of the computing infrastructure assigned to execute the workload.

27 . The computing device of claim 3 , wherein:

the workload comprises a plurality of tasks and a plurality of task dependencies among the plurality of tasks; and

the computing infrastructure comprises a plurality of processing devices and a plurality of device connectivity links among the plurality of processing devices.

28 . The computing device of claim 27 , wherein:

the plurality of privacy requirements are required across the plurality of task dependencies of the workload; and

the plurality of privacy levels are provided across the plurality of device connectivity links of the computing infrastructure.

29 . The computing device of claim 28 , wherein the workload schedule assigns execution of the plurality of tasks of the workload across a subset of the plurality of processing devices of the computing infrastructure.

30 . The computing device of claim 29 , wherein the workload schedule maps the plurality of task dependencies of the workload across a subset of the plurality of device connectivity links of the computing infrastructure.

31 . The computing device of claim 4 , wherein the processing circuitry to send, via the network interface circuitry, the workload schedule to the portion of the computing infrastructure assigned to execute the workload is further to:

send, via the network interface circuitry, the workload schedule to the subset of the plurality of processing devices of the computing infrastructure assigned to execute the plurality of tasks of the workload.

32 . The computing device of claim 27 , wherein at least some of the plurality of tasks of the workload are to process sensor data captured by one or more sensors.

33 . The computing device of claim 32 , wherein:

the one or more sensors comprise one or more cameras; and

the sensor data comprises visual data captured by the one or more cameras.

34 . The computing device of claim 33 , wherein at least some of the plurality of privacy requirements are associated with processing the visual data captured by the one or more cameras.

35 . The computing device of claim 26 , wherein the processing circuitry to determine, based at least in part on the privacy policy and the privacy level agreement, the workload schedule for executing the workload is further to:

solve an integer linear programming model based on the privacy policy associated with the workload and the privacy level agreement associated with the computing infrastructure; and

map the workload across the computing infrastructure based on a solution to the integer linear programming model.

36 . At least one non-transitory machine-readable storage medium having instructions stored thereon, wherein the instructions, when executed on processing circuitry, cause the processing circuitry to:

receive, via network interface circuitry, a request to schedule a workload for execution across a computing infrastructure;

access a privacy policy associated with the workload, wherein the privacy policy indicates a plurality of privacy requirements for execution of the workload;

access a privacy level agreement associated with the computing infrastructure, wherein the privacy level agreement indicates a plurality of privacy levels provided across the computing infrastructure;

determine, based at least in part on the privacy policy and the privacy level agreement, a workload schedule for executing the workload, wherein the workload schedule assigns execution of the workload across a portion of the computing infrastructure; and

send, via the network interface circuitry, the workload schedule to the portion of the computing infrastructure assigned to execute the workload.

37 . The storage medium of claim 36 , wherein:

the workload comprises a plurality of tasks and a plurality of task dependencies among the plurality of tasks; and

the computing infrastructure comprises a plurality of processing devices and a plurality of device connectivity links among the plurality of processing devices.

38 . The storage medium of claim 7 , wherein:

the plurality of privacy requirements are required across the plurality of task dependencies of the workload; and

the plurality of privacy levels are provided across the plurality of device connectivity links of the computing infrastructure.

39 . The storage medium of claim 38 , wherein the workload schedule assigns execution of the plurality of tasks of the workload across a subset of the plurality of processing devices of the computing infrastructure.

40 . The storage medium of claim 39 , wherein the workload schedule maps the plurality of task dependencies of the workload across a subset of the plurality of device connectivity links of the computing infrastructure.

41 . The storage medium of claim 39 , wherein the instructions that cause the processing circuitry to send, via the network interface circuitry, the workload schedule to the portion of the computing infrastructure assigned to execute the workload further cause the processing circuitry to:

send, via the network interface circuitry, the workload schedule to the subset of the plurality of processing devices of the computing infrastructure assigned to execute the plurality of tasks of the workload.

42 . The storage medium of claim 8 , wherein:

at least some of the plurality of tasks of the workload are to process visual data captured by one or more cameras; and

at least some of the plurality of privacy requirements are associated with processing the visual data captured by the one or more cameras.

43 . The storage medium of claim 36 , wherein the instructions that cause the processing circuitry to determine, based at least in part on the privacy policy and the privacy level agreement, the workload schedule for executing the workload further cause the processing circuitry to:

solve an integer linear programming model based on the privacy policy associated with the workload and the privacy level agreement associated with the computing infrastructure; and

map the workload across the computing infrastructure based on a solution to the integer linear programming model.

44 . A method of performing privacy-preserving workload scheduling across a computing infrastructure, comprising:

receiving, via network interface circuitry, a request to schedule a workload for execution across the computing infrastructure;

accessing a privacy policy associated with the workload, wherein the privacy policy indicates a plurality of privacy requirements for execution of the workload;

accessing a privacy level agreement associated with the computing infrastructure, wherein the privacy level agreement indicates a plurality of privacy levels provided across the computing infrastructure;

determining, based at least in part on the privacy policy and the privacy level agreement, a workload schedule for executing the workload, wherein the workload schedule assigns execution of the workload across a portion of the computing infrastructure; and

sending, via the network interface circuitry, the workload schedule to the portion of the computing infrastructure assigned to execute the workload.

45 . The method of claim 44 , wherein:

the workload comprises a plurality of tasks and a plurality of task dependencies among the plurality of tasks; and

the computing infrastructure comprises a plurality of processing devices and a plurality of device connectivity links among the plurality of processing devices.

46 . The method of claim 45 , wherein:

the plurality of privacy requirements are required across the plurality of task dependencies of the workload; and

the plurality of privacy levels are provided across the plurality of device connectivity links of the computing infrastructure.

47 . The method of claim 46 , wherein:

the workload schedule assigns execution of the plurality of tasks of the workload across a subset of the plurality of processing devices of the computing infrastructure; and

the workload schedule maps the plurality of task dependencies of the workload across a subset of the plurality of device connectivity links of the computing infrastructure.

48 . The method of claim 45 , wherein:

at least some of the plurality of tasks of the workload are to process visual data captured by one or more cameras; and

at least some of the plurality of privacy requirements are associated with processing the visual data captured by the one or more cameras.

49 . The method of claim 11 , wherein determining, based at least in part on the privacy policy and the privacy level agreement, the workload schedule for executing the workload comprises:

solving an integer linear programming model based on the privacy policy associated with the workload and the privacy level agreement associated with the computing infrastructure; and

mapping the workload across the computing infrastructure based on a solution to the integer linear programming model.

50 . A system for performing privacy-preserving workload scheduling across a computing infrastructure, comprising:

means for receiving a request to schedule a workload for execution across the computing infrastructure;

means for accessing a privacy policy associated with the workload, wherein the privacy policy indicates a plurality of privacy requirements for execution of the workload;

means for accessing a privacy level agreement associated with the computing infrastructure, wherein the privacy level agreement indicates a plurality of privacy levels provided across the computing infrastructure;

means for determining, based at least in part on the privacy policy and the privacy level agreement, a workload schedule for executing the workload, wherein the workload schedule assigns execution of the workload across a portion of the computing infrastructure; and

means for sending the workload schedule to the portion of the computing infrastructure assigned to execute the workload.