IP Library Granted Patent US 10,394,603
Granted Patent B2
US 10,394,603 · App. 15/663,029 · Granted Aug 27, 2019

Virtual container processing on high performance computing processors

Inventors: Mark Temple Cobbold (Stittsville, CA); Francois Caron (Montreal, CA)
Assignee: GENBAND US LLC
G06F9/50G06F9/45541G06F11/2097H04L29/06H04L67/1097H04L69/10H04L49/70H04L67/10H04L69/16H04L69/18
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,394,603
App. No.
15/663,029
Granted
Aug 27, 2019
Kind
B2
Abstract

A method includes, with a first execution unit of a processor, executing instructions for a processing task on behalf of a first virtual container. The first virtual container is configured to utilize computing resources of the first execution unit without demanding more computing resources than the first execution unit provides. The first execution unit may have exclusive access to a first arithmetic logic unit (ALU). The method further includes, with a second execution unit of the processor, processing instructions for the processing task on behalf of a second virtual container. The second virtual container is configured to utilize computing resources of the first execution unit without demanding more computing resources than the first execution unit provides. The second execution unit may have exclusive access to a second Arithmetic Logic Unit (ALU). The first execution unit and the second execution unit operate in parallel.

Claims (29)

1. A method comprising:

with a first execution unit of a processor, executing instructions for a processing task on behalf of a first virtual container, the first virtual container being configured to utilize computing resources of the first execution unit without demanding more computing resources than the first execution unit provides, the first execution unit having exclusive access to a first arithmetic logic unit (ALU); and

with a second execution unit of the processor, processing instructions for the processing task on behalf of a second virtual container, the second virtual container being configured to utilize computing resources of the first execution unit without demanding more computing resources than the first execution unit provides, the second execution unit having exclusive access to a second Arithmetic Logic Unit (ALU);

wherein the first virtual container corresponds to a first Virtual Network Function (VNF) component and the second virtual container corresponds to a second VNF component, and wherein the first execution unit and the second execution unit operate in parallel; and

provisioning an additional VNF component for execution on a third execution unit of the processor, the third execution unit having exclusive access to a third ALU.

2. The method of claim 1 , wherein the first execution unit and the second execution unit have Multiple Instruction Multiple Data (MIMD) capabilities.

3. The method of claim 1 , wherein the first execution unit and the second execution unit have additional ALUs that are not used by other execution units.

4. The method of claim 1 , wherein the processing task comprises audio transcoding for speech frames, the audio transcoding changing the speech frames from a first media format to a second media format.

5. The method of claim 1 , wherein the processing task comprises:

performing an encryption process to encrypt audio or video data as it is being transmitted.

6. The method of claim 1 , wherein the processing task comprises one of: processing Real Time Transport Control Protocol (RTCP).

7. The method of claim 1 , wherein the first virtual container and the second virtual container are application instances run by an operating system running on the processor of a computing system.

8. A method comprising:

performing a transcoding process with a plurality of virtual containers, the transcoding process converting data in a first format to data in a second format for a plurality of communication sessions;

assigning each of the virtual containers to a single one of a plurality of execution units of a processor, each execution unit having exclusive access to its own arithmetic logic unit; and

freeing up one of the plurality of execution units in response to demand for the transcoding process dropping below a threshold level.

9. The method of claim 8 , wherein the transcoding process for the plurality of communication sessions is done in parallel by different execution units.

10. The method of claim 8 , wherein a particular one of the plurality of virtual containers is configured to consume less computing resources than is capable of being provided by a single one of the execution units.

11. The method of claim 8 , wherein each execution unit is capable of executing Multiple Instruction Multiple Data (MIMD) instructions.

12. The method of claim 8 , wherein each virtual container corresponds to a single Virtual Network Function (VNF) component.

13. The method of claim 12 , further comprising, provisioning additional VNFs in response to an increase in demand for transcoding, the additional VNFs being assigned to execution units that are not currently serving other VNFs.

14. The method of claim 8 , wherein each of the plurality of execution units operate in parallel.

15. A system comprising:

a processor having a plurality of independent execution units, each independent execution unit having exclusive access to at least one arithmetic logic unit; and

a memory comprising machine readable instructions that when executed by the processor, cause the system to:

perform a transcoding process from a first media format to a second media format, the transcoding process being performed by a plurality of virtual containers, each virtual container assigned to one of the plurality of independent execution units; wherein each virtual container corresponds to a single Virtual Network Function (VNF) component; and

provisioning additional VNFs in response to an increase in demand for transcoding, the additional VNFs being assigned to execution units that are not currently serving other VNFs.

16. The system of claim 15 , wherein the at least one arithmetic logic unit includes vector processing capability.

17. The system of claim 15 , wherein the system is further to collect data from the transcoding process with an analytics component.

Assignments (7)
SHORT-FORM PATENTS SECURITY AGREEMENT Recorded Sep 5, 2024
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 068857/0290 →
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2024
From: CITIZENS BANK, N.A.
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 067822/0433 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 044978/0801 Recorded Dec 6, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 058949/0497 →
MERGER Recorded Jul 15, 2020
From: GENBAND US LLC
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
Reel/Frame 053223/0260 →
SECURITY INTEREST Recorded Mar 3, 2020
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052076/0905 →
SECURITY INTEREST Recorded Jan 2, 2018
From: GENBAND US LLC; SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 044978/0801 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2017
From: COBBOLD, MARK TEMPLE; CARON, FRANCIS
To: GENBAND US LLC
Reel/Frame 043500/0016 →
Continuity (1)
Related Publication 20190034233A1 · Jan 31, 2019