IP Library › Granted Patent US 10,678,444
Granted Patent B2
US 10,678,444 · App. 15/943,640 · Granted Jun 9, 2020

Optimizing serverless computing using a distributed computing framework

Inventors: Xinyuan Huang (San Jose, CA); Johnu George (San Jose, CA); Marc Solanas Tarre (San Jose, CA); Komei Shimamura (London, GB); Purushotham Kamath (San Jose, CA); Debojyoti Dutta (Santa Clara, CA)
Assignee: CISCO TECHNOLOGY, INC.
G06F3/0613G06F3/067G06F3/0661G06F9/4843G06F16/256
View Patent ↗
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 10,678,444
App. No.
15/943,640
Granted
Jun 9, 2020
Kind
B2
Abstract

Aspects of the technology provide improvements to a Serverless Computing (SLC) workflow by determining when and how to optimize SLC jobs for computing in a Distributed Computing Framework (DCF). DCF optimization can be performed by abstracting SLC tasks into different workflow configurations to determined optimal arrangements for execution in a DCF environment. A process of the technology can include steps for receiving an SLC job including one or more SLC tasks, executing one or more of the tasks to determine a latency metric and a throughput metric for the SLC tasks, and determining if the SLC tasks should be converted to a Distributed Computing Framework (DCF) format based on the latency metric and the throughput metric. Systems and machine-readable media are also provided.

Claims (48)

1. A computer-implemented method for optimizing a Serverless Computing (SLC) workflow, comprising:

receiving a SLC job comprising SLC tasks;

executing the SLC tasks in the SLC job to determine a latency metric and a throughput metric for the SLC tasks;

converting at least one but not all of the SLC tasks to a Distributed Computing Framework (DCF) format based on the latency metric and the throughput metric; and

processing, in hybrid SLC/DCF pipelines, the SLC job as a combination of converted ones of the SLC tasks in DCF format and unconverted ones of the SLC tasks.

2. The computer-implemented method of claim 1 , wherein the converting comprises automatically converting the at least one but not all of the SLC tasks to DCF format.

3. The computer-implemented method of claim 2 , wherein automatically converting the at least one but not all of the SLC tasks to DCF format further comprises:

performing a map reduce function on the SLC tasks.

4. The computer-implemented method of claim 1 , wherein the latency metric is determined based on a time period required to fully execute the SLC tasks.

5. The computer-implemented method of claim 1 , wherein the throughput metric is determined based on a frequency that SLC tasks are triggered.

6. The computer-implemented method of claim 1 , wherein the converting further comprises:

comparing the latency metric to a predetermined latency threshold; and

converting the at least one but not all of the SLC tasks to DCF format if the latency metric exceeds the predetermined latency threshold.

7. The computer-implemented method of claim 1 , wherein the converting further comprises:

comparing the throughput metric to a predetermined throughput threshold; and

converting the at least one but not all of the SLC tasks to DCF format if the throughput metric exceeds the predetermined throughput threshold.

8. A system for optimizing a Serverless Computing (SLC) workflow, comprising:

one or more processors; and

a computer-readable medium comprising instructions stored therein, which when executed by the processors, cause the processors to perform operations comprising:

receiving a SLC job comprising SLC tasks;

executing of the SLC tasks to determine at least a latency metric and a throughput metric for the SLC tasks;

converting at least one but not all of the SLC tasks to a Distributed Computing Framework (DCF) format based on the latency metric and the throughput metric; and

processing, in hybrid SLC/DCF pipelines, the SLC job as a combination of converted ones of the SLC task in DCF format and unconverted ones of the SLC tasks.

9. The system of claim 8 , wherein the converting comprises automatically converting the at least one but not all of the SLC tasks to DCF format.

10. The system of claim 9 , wherein automatically converting the at least one but not all of the SLC tasks to DCF format further comprises:

performing a map reduce function on the at least one but not all of the SLC tasks of the SLC job.

11. The system of claim 8 , wherein the latency metric is determined based on a time period required to fully execute the SLC tasks.

12. The system of claim 8 , wherein the throughput metric is determined based on a frequency that the SLC tasks are triggered.

13. The system of claim 8 , wherein the converting further comprises:

comparing the latency metric to a predetermined latency threshold; and

converting the at least one but not all of the SLC tasks to DCF format if the latency metric exceeds the predetermined latency threshold.

14. The system of claim 8 , wherein the converting further comprises:

comparing the throughput metric to a predetermined throughput threshold; and

converting the SLC tasks to DCF format if the throughput metric exceeds the predetermined throughput threshold.

15. A non-transitory computer-readable storage medium comprising instructions stored therein, which when executed by one or more processors, cause the processors to perform operations comprising:

receiving a SLC job comprising SLC tasks;

executing SLC tasks to determine at least a latency metric and a throughput metric for the SLC tasks;

converting at least one but not all of the SLC tasks to a Distributed Computing Framework (DCF) format based on the latency metric and the throughput metric; and

processing, in hybrid SLC/DCF pipelines, the SLC job as a combination of converted ones of the SLC task in DCF format and unconverted ones of the SLC tasks.

16. The non-transitory computer-readable storage medium claim 15 , wherein

the converting comprises automatically converting the at least one but not all of the SLC tasks to DCF format.

17. The non-transitory computer-readable storage medium comprising claim 16 , wherein automatically converting the at least one but not all of the SLC tasks to DCF format further comprises:

performing a map reduce function on the at least one but not all of the SLC tasks of the SLC job.

18. The non-transitory computer-readable storage medium claim 15 , wherein the latency metric is determined based on a time period required to fully execute the SLC tasks.

19. The non-transitory computer-readable storage medium claim 15 , wherein the throughput metric is determined based on a frequency that the SLC tasks are triggered.

20. The non-transitory computer-readable storage medium claim 15 , wherein the converting further comprises:

comparing the latency metric to a predetermined latency threshold; and

converting the at least one but not all of the SLC tasks to DCF format if the latency metric exceeds the predetermined latency threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2018
From: HUANG, XINYUAN; GEORGE, JOHNU; TARRE, MARC SOLANAS; SHIMAMURA, KOMEI; KAMATH, PURUSHOTHAM; DUTTA, DEBOJYOTI
To: CISCO TECHNOLOGY, INC.
Reel/Frame 045415/0673 →
Continuity (1)
Related Publication 20190303018A1 · Oct 3, 2019