DCT

2:24-cv-00433

Partec AG v. Microsoft Corp

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 2:24-cv-00433, E.D. Tex., 06/10/2024
  • Venue Allegations: Plaintiffs allege venue is proper in the Eastern District of Texas because Microsoft maintains regular and established physical places of business in the district—including corporate offices, retail stores-within-a-store, and data center properties in locations such as Plano, Frisco, and Lewisville—and has committed acts of patent infringement in the district.
  • Core Dispute: Plaintiffs allege that Defendant’s Microsoft Azure AI supercomputing infrastructure infringes patents related to dynamically allocating tasks between different types of processors in a high-performance computer cluster.
  • Technical Context: The technology concerns modular supercomputing architectures that decouple general-purpose computation nodes (e.g., CPUs) from specialized accelerators (e.g., GPUs) to enable dynamic, on-demand resource allocation, a foundational concept for efficiently operating large-scale AI and cloud platforms.
  • Key Procedural History: The complaint notes that U.S. Patent No. 11,934,883 is a continuation of the application that resulted in U.S. Patent No. 10,142,156, suggesting a shared specification and potentially related claim scope. The complaint also outlines a series of exclusive license and agency agreements between the plaintiffs and related entities, establishing the basis for their right to enforce the asserted patents.

Case Timeline

Date Event
2008-01-01 Microsoft's "South Central US" Azure region established in Texas.
2010-10-13 Earliest Priority Date for '156 and '883 Patents.
2018-01-23 Earliest Priority Date for '442 Patent.
2018-11-27 U.S. Patent No. 10,142,156 Issued.
2022-12-27 U.S. Patent No. 11,537,442 Issued.
2024-03-19 U.S. Patent No. 11,934,883 Issued.
2024-06-10 Complaint Filed.

II. Technology and Patent(s)-in-Suit Analysis

U.S. Patent No. 10,142,156 - "Computer Cluster Arrangement for Processing a Computation Task and Method for Operation Thereof"

  • Patent Identification: U.S. Patent No. 10,142,156, "Computer Cluster Arrangement for Processing a Computation Task and Method for Operation Thereof," issued November 27, 2018. (Compl. ¶40).

The Invention Explained

  • Problem Addressed: The patent’s background describes the inefficiency of traditional computer clusters where specialized accelerators (like GPUs) are "tightly coupled" to specific computation nodes (like CPUs) in a fixed, static assignment. This rigid structure leads to either an oversupply or shortage of acceleration resources for a given task, resulting in wasted capacity and energy inefficiency. ('156 Patent, col. 1:36-46).
  • The Patented Solution: The invention proposes a decoupled, modular architecture. It comprises a plurality of "hardware computation nodes" and a separate plurality of "hardware boosters" (accelerators), all connected to a common communication infrastructure. A "resource manager" dynamically assigns boosters to computation nodes at runtime based on an "assignment metric," allowing boosters to be shared flexibly among multiple nodes as needed. ('156 Patent, Abstract; col. 2:21-58). This is illustrated in Figure 2, which shows separate groups of computation nodes (CN) and boosters (B) connected via an interconnect (IN) and managed by a resource manager (RM).
  • Technical Importance: This architecture enables a more flexible, scalable, and fault-tolerant approach to high-performance computing by treating accelerators as a shareable, dynamically-allocatable pool of resources rather than fixed attachments to individual processors. ('156 Patent, col. 3:10-18).

Key Claims at a Glance

  • The complaint asserts independent claim 1. (Compl. ¶77).
  • Essential elements of claim 1 include:
    • A computer cluster-booster system comprising a plurality of "hardware computation nodes" and a plurality of "hardware boosters".
    • A "resource manager" arranged to assign a hardware booster to a hardware computation node.
    • The resource manager establishes an "initial assignment" at the start of a task using a predetermined "assignment metric".
    • During processing, the resource manager "updates" the metric and establishes a "dynamic assignment".
    • The system is configured such that at least one booster is "assigned to and shared by more than one" computation node, and each booster is "assignable to each" computation node.
  • The complaint does not explicitly reserve the right to assert dependent claims for this patent.

U.S. Patent No. 11,934,883 - "Computer Cluster Arrangement for Processing a Computation Task and Method for Operation Thereof"

  • Patent Identification: U.S. Patent No. 11,934,883, "Computer Cluster Arrangement for Processing a Computation Task and Method for Operation Thereof," issued March 19, 2024. (Compl. ¶41).

The Invention Explained

  • Problem Addressed: Like its parent, the '883 Patent addresses the inefficiencies of statically coupling accelerators to computation nodes in high-performance clusters. ('883 Patent, col. 2:8-12).
  • The Patented Solution: The invention describes a system and method where a resource manager assigns a booster to a computation node and then provides "assignment information" to that node. This information enables the computation node to "outsource" a part of its computational task to the assigned booster. The patent emphasizes a process of initializing a "static assignment" and then establishing a "dynamic assignment" during processing based on a predetermined metric. ('883 Patent, Abstract; col. 13:14-22).
  • Technical Importance: This invention details the control and information flow required to operationalize a modular computing architecture, specifying how a central manager can enable individual nodes to offload work to a shared pool of accelerators. ('883 Patent, col. 15:59-16:10).

Key Claims at a Glance

  • The complaint asserts independent claim 1. (Compl. ¶112).
  • Essential elements of claim 1 include:
    • A computer system with a plurality of "hardware computation nodes", a plurality of "hardware boosters", and a "resource manager".
    • The resource manager is arranged to "assign" a selected hardware booster to a first hardware computation node.
    • The resource manager is further arranged to "provide assignment information" to the node to "enable" it to "outsource" the task to the booster.
    • The resource manager is also arranged to "initialize a static assignment" and then establish a "dynamic assignment" during processing.
  • The complaint does not explicitly reserve the right to assert dependent claims for this patent.

Multi-Patent Capsule: U.S. Patent No. 11,537,442 - "Application Runtime Determined Dynamical Allocation of Heterogenous Compute Resources"

  • Patent Identification: U.S. Patent No. 11,537,442, "Application Runtime Determined Dynamical Allocation of Heterogenous Compute Resources," issued December 27, 2022. (Compl. ¶46).
  • Technology Synopsis: This patent addresses the dynamic distribution of computational sub-tasks within a heterogeneous system containing different types of computing resources. The invention is a method that performs a "first computing iteration" with an initial distribution of sub-tasks, generates information related to that processing, and then uses that information to create a "further distribution" of the sub-tasks for a subsequent iteration, thereby optimizing resource allocation based on runtime feedback. ('442 Patent, Abstract).
  • Asserted Claims: Independent claim 1 is asserted. (Compl. ¶146).
  • Accused Features: The complaint alleges that Microsoft's Azure AI infrastructure, particularly its "Project Forge" or "Singularity" scheduler, infringes by adapting task assignments based on load, such as by "elastically scaling down or pre-empting training jobs" to free up capacity for inference jobs. (Compl. ¶154).

III. The Accused Instrumentality

  • Product Identification: The Microsoft Azure AI system or infrastructure. (Compl. ¶54).
  • Functionality and Market Context:
    • The complaint describes the accused instrumentality as a "specialized hardware and software stack" that functions as one of the world's largest AI supercomputers. (Compl. ¶¶ 58, 61). Its architecture includes a "full technology stack with CPUs, GPUs, DPUs, systems, [and] networking." (Compl. ¶59). The complaint highlights that the system comprises over 1.1 million CPU cores and over 14,400 GPUs interconnected with high-speed InfiniBand networking. (Compl. ¶¶ 81, 84, 87). A central component alleged to be the "resource manager" is a global scheduler service named "Project Forge" (previously "Singularity"), which is designed to pool GPU capacity from different regions, manage workloads to maintain high utilization, and dynamically reassign resources by preempting, pausing, or migrating jobs. (Compl. ¶¶ 88-89). A diagram from a consulting firm's report, included in the complaint, depicts Project Forge as a scheduler that sits between training data/AI models and the underlying server infrastructure of GPU clusters and CPUs. (Compl. ¶88).
    • The complaint alleges the Azure AI infrastructure is a key driver of Microsoft's Intelligent Cloud business, which generated $26.7 billion in revenue in Q1 2024, and is used to power prominent AI services like ChatGPT and Azure Machine Learning for enterprise customers. (Compl. ¶¶ 62, 71).

IV. Analysis of Infringement Allegations

U.S. Patent No. 10,142,156 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
a plurality of hardware computation nodes, each of which interfaces with a communication infrastructure, at least two of the hardware computation nodes being arranged to jointly compute at least a first part of said computation task The Azure AI system includes over a million AMD InfiniBand connected CPU cores, which are hardware components that act as computation nodes to perform parts of a computation task. (Compl. ¶81-83). ¶81, ¶83 col. 13:22-27
a plurality of hardware boosters, each hardware booster having a compute capacity, at least one hardware booster...being arranged to compute at least a second, specific part of said computation task after having been assigned to at least one hardware computation node The Azure AI system includes over 14,000 NVIDIA GPUs (hardware boosters) that perform compute-intensive tasks (e.g., machine learning) after being assigned to work in conjunction with CPU cores (computation nodes). A visual from a Microsoft video shows CPUs and GPUs working in harmony. (Compl. ¶36, ¶84-85). ¶84, ¶85 col. 13:28-37
a resource manager being arranged to assign the at least one hardware booster...including: at a start of processing...establishing an initial assignment by using a predetermined assignment metric...and during said processing...: (i) updating the predetermined assignment metric, and (ii) establishing a dynamic assignment The "Project Forge" (or "Singularity") global scheduler acts as the resource manager. It pools GPU capacity and assigns it to workloads to maintain high utilization. It adapts assignments dynamically to changes in load, for example by taking a checkpoint and repurposing an idle GPU for another workload, thereby updating the assignment based on a metric like utilization. A screenshot shows the ability to pause and migrate jobs between regions. (Compl. ¶40, ¶88-89). ¶88, ¶89 col. 13:38-14:1
wherein...at least one of the plurality of hardware boosters is assigned to and shared by more than one of the plurality of hardware computation nodes...and...each of the hardware boosters is assignable to each of the hardware computation nodes Azure's GPUs are described as being "designed specifically for multi-tenant cloud compute," making them shareable resources. The complaint alleges that Project Forge can repurpose an idle GPU and assign it to a different computation node, making each booster assignable to any node in the pool. (Compl. ¶90-91). ¶90, ¶91 col. 14:6-14
  • Identified Points of Contention:
    • Scope Question: Does the term "computer cluster-booster system" as described in the patent, which depicts a physically co-located cluster (e.g., '156 Patent, Fig. 2), read on a globally distributed, multi-tenant cloud service like Microsoft Azure?
    • Technical Question: What specific "assignment metric" does Microsoft's Project Forge scheduler use, and does the process of "repurposing an idle GPU" (Compl. ¶91) constitute "updating the predetermined assignment metric" as required by the claim, or is it a different type of scheduling logic?

U.S. Patent No. 11,934,883 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
a plurality of hardware computation nodes, a plurality of hardware boosters, and a resource manager, the plurality of hardware computation nodes and the plurality of hardware boosters each interfacing a communication infrastructure The Azure AI system comprises CPU cores (computation nodes), GPUs (boosters), and the Project Forge scheduler (resource manager), all of which interface with InfiniBand networking (communication infrastructure). (Compl. ¶116-119). ¶116-119 col. 13:4-9
assign a selected hardware booster...to a first hardware computation node...for computation of a part of the computation task The complaint alleges Project Forge assigns a selected GPU (booster) to perform a task in conjunction with a CPU core (computation node). A Microsoft video is cited showing GPUs and CPUs working in harmony to perform complex tasks. (Compl. ¶57, ¶120). ¶120 col. 13:10-13
provide assignment information to the first hardware computation node...so as to enable the first hardware computation node to outsource the part of the computation task to the assigned selected hardware booster The complaint alleges that the scheduler provides GPU details, such as device IDs, to the container instance (the node) via environmental variables or configuration files, which enables the application running on the node to offload tasks to that specific GPU. (Compl. ¶122). ¶122 col. 13:14-19
initialize a static assignment and further to establish a dynamic assignment during the processing of the computation task Project Forge is alleged to make an initial (static) assignment based on a job's "soft quota" for GPUs, and then dynamically manage assignments during processing by adapting to load, for example, by preempting or resizing jobs to free up capacity. (Compl. ¶123-125). ¶124, ¶125 col. 13:20-22
  • Identified Points of Contention:
    • Scope Question: Does the act of providing a "soft quota" for GPUs to a job upon arrival (Compl. ¶124) satisfy the claim limitation of "initialize a static assignment", or does "static assignment" require a more fixed, initial binding of specific hardware?
    • Technical Question: What specific "assignment information" is provided to a container in Azure, and is this process functionally equivalent to enabling the "computation node" to "outsource" the task, as claimed? The resolution may depend on the level of control and awareness the node (e.g., the containerized application) has versus the scheduler.

V. Key Claim Terms for Construction

  • The Term: "hardware computation node"

    • Context and Importance: This term defines one of the two core hardware components of the claimed system. Its construction will determine whether a "node" is a physical server, a virtual machine, a container, or simply a CPU core. The complaint alleges the nodes are CPU cores (Compl. ¶81), a granular interpretation that is advantageous for finding infringement in a large, virtualized system.
    • Intrinsic Evidence for a Broader Interpretation: The specification states a "computation node" can comprise "a multi-core processor, a cluster, a computer, a workstation and a multi-purpose processor," suggesting the term is not limited to a single type of entity. ('156 Patent, col. 5:54-57).
    • Intrinsic Evidence for a Narrower Interpretation: The patent figures consistently depict "CN" as a discrete, standalone box within a cluster diagram, which may support an interpretation that a "node" is a more complete, independent computer system rather than a sub-component like a core. ('156 Patent, Fig. 2).
  • The Term: "resource manager"

    • Context and Importance: This term defines the "brain" of the invention responsible for all dynamic assignments. The infringement case hinges on mapping this term to Microsoft's "Project Forge" / "Singularity" software scheduler. (Compl. ¶88).
    • Intrinsic Evidence for a Broader Interpretation: The specification allows for significant flexibility, stating the resource manager "may be implemented as a specific hardware unit, a virtual unit or be compound of any of them" and that "parts of the resource manager may be distributed over the system." ('156 Patent, col. 2:65-col. 3:4). This language appears to support a distributed, software-based implementation.
    • Intrinsic Evidence for a Narrower Interpretation: In the patent's main embodiment shown in Figure 2, the "RM" is depicted as a single, centralized component within the cluster. A defendant might argue this suggests a more localized manager, contrasting with the planet-scale, globally distributed nature of Microsoft's Project Forge. ('156 Patent, Fig. 2).

VI. Other Allegations

  • Indirect Infringement: The complaint alleges active inducement under 35 U.S.C. § 271(b). The factual basis is extensive, alleging Microsoft encourages and instructs customers to use the Azure AI infrastructure in an infringing manner through marketing materials, its "model as a service" offerings (Compl. ¶98), customer success stories (Compl. ¶105), and by providing a host of "quickstart guides, tutorials, and how-tos" explaining how to use Azure AI and Azure Machine Learning services. (Compl. ¶¶ 101, 103).
  • Willful Infringement: The complaint alleges that Microsoft has been aware of the asserted patents "at least as of the filing of this Complaint." (Compl. ¶¶ 97, 131, 158). This allegation provides a basis for seeking enhanced damages for any infringement occurring post-filing, but does not assert pre-suit knowledge of the patents.

VII. Analyst’s Conclusion: Key Questions for the Case

  • A core issue will be one of architectural scope: can the term "computer cluster... system," rooted in patent figures depicting distinct, co-located hardware, be construed to read on a globally distributed, virtualized, multi-tenant cloud platform like Microsoft Azure, which is composed of fungible and geographically dispersed resources?
  • A second central question will be one of functional mapping: does the operational logic of Microsoft's "Project Forge" scheduler—a sofisticated, planet-scale service for optimizing AI workloads—perform the specific sequence of "initializing a static assignment" and then "establishing a dynamic assignment by using the predetermined assignment metric that was updated," as recited in the claims, or is there a fundamental mismatch in the technical method of operation?
  • A key evidentiary question will concern the mechanism of control: how precisely does the Azure system "provide assignment information" to a "computation node" to "enable" it to "outsource" a task? The case may turn on whether the granular details of how Azure's containers, schedulers, and APIs interact align with the specific control flow described and claimed in the patents.