Blaize, Inc.

United States of America

Back to Profile

1-75 of 75 for Blaize, Inc. Sort by
Query
Aggregations
IP Type
        Patent 52
        Trademark 23
Jurisdiction
        United States 61
        World 7
        Canada 7
Date
2025 7
2024 9
2023 17
2022 12
2021 10
See more
IPC Class
G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead 19
G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt 18
G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode 13
G06F 8/41 - Compilation 9
G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU] 8
See more
NICE Class
09 - Scientific and electric apparatus and instruments 23
42 - Scientific, technological and industrial services, research and design 9
Status
Pending 11
Registered / In Force 64

1.

Adaptive Power Supply Voltage Transient Protection

      
Application Number 19207609
Status Pending
Filing Date 2025-05-14
First Publication Date 2025-08-28
Owner Blaize, Inc. (USA)
Inventor Ciesluk, Sebastian Artur

Abstract

Methods, systems, and apparatuses for adaptive power supply voltage transient protection are disclosed. One system includes a power supply, a transient sensor, and a power control processing entity. The power supply operates to provide power to one or more processors. The transient sensor is connected to the power supply and operates to sense transients on the power supply at greater than a predetermined speed or rate. The power control processing entity operates to receive a representation of the sensed transients and adjust a power load based on the sensed transients.

IPC Classes  ?

  • H02H 9/04 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection responsive to excess voltage
  • H02H 1/00 - Details of emergency protective circuit arrangements
  • H02H 9/00 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection

2.

GRAPH STREAMING PROCESSING SYSTEM UTILIZING AN ACTIVATION DATA BUFFER

      
Application Number 18438482
Status Pending
Filing Date 2024-02-11
First Publication Date 2025-08-14
Owner Blaize Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Cook, Val G.
  • Nagisetty, Srinivasulu

Abstract

Disclosed herein is a graph streaming neural network processing system comprising a first processor array, a second processor, and a thread scheduler. The thread scheduler dispatches a thread of a first node to the first processor array or the second processor, wherein the thread is executed to generate output data comprising a data unit stored in a private data buffer of the second processor. The thread scheduler determines that the data unit is sufficient for executing a thread of a second node. The second node is dependent on the output data generated by execution of a plurality of threads of the first node. Upon determining that the data unit is sufficient, the thread scheduler dispatches the thread of the second node. The thread scheduler determines to dispatch a subsequent thread of the first node for execution when a predefined threshold buffer size is available on the private data buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

3.

Discovering Novel Artificial Neural Network Architectures

      
Application Number 19082493
Status Pending
Filing Date 2025-03-18
First Publication Date 2025-07-03
Owner Blaize, Inc. (USA)
Inventor
  • Balabin, Ilya A.
  • Geringer, Adam P.

Abstract

Methods, systems and apparatuses for discovering novel artificial neural network architectures (ANN) architecture are disclosed. One method includes calculating ANN architecture fingerprints including an ANN architecture fingerprint of each of a plurality of existing ANN architectures, creating a plurality of next-generation candidate ANN architectures, calculating a plurality of next-generation candidate ANN architecture fingerprints including an ANN architecture fingerprint of each of the plurality of next-generation candidate ANN architectures, calculating ANN architecture pairwise similarities between each of the plurality of existing ANN architectures and each of the plurality of next-generation candidate ANN architectures using the plurality of existing ANN architecture fingerprints and the plurality of next-generation candidate ANN architecture fingerprints, retraining each of the plurality of next-generation candidate ANN architectures on the training dataset, obtaining a performance score of each of the next-generation candidate ANN architectures, and calculating a fitness score for each of the next-generation candidate ANN architectures.

IPC Classes  ?

  • G06N 3/082 - Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
  • G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
  • G06N 3/086 - Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming

4.

LIFE ON THE EDGE

      
Application Number 1856256
Status Registered
Filing Date 2025-04-23
Registration Date 2025-04-23
Owner BLAIZE, INC. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for AI inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors; downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management. Platform as a Service (PaaS) services for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management.

5.

Group Thread Dispatch for Graph Streaming Processor

      
Application Number 19024411
Status Pending
Filing Date 2025-01-16
First Publication Date 2025-05-15
Owner Blaize Inc. (USA)
Inventor
  • Vamsi Krishna Darsi, Kota
  • Govindammagari, Sarvendra
  • Divya Bharathi Palaparthy, Venkata
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems, and apparatuses for graph streaming processing are disclosed. One method includes receiving, by a thread scheduler, a group of threads, calculating a resource requirement for execution of the group of threads, calculating resource availability in a plurality of processors of each of a plurality of processor arrays, dispatching the group of threads to a selected one of plurality of processors of processor arrays, scheduling a group load instruction for all threads of the group of threads, including loading into a group load register a subset of inputs of the input tensor for processing of each thread of the group of threads, wherein the group load register provides the subset of the inputs of the input tensor to the group of threads of the selected one of the plurality of processors, wherein all threads of the group of threads are synchronized when executing the group load instruction.

IPC Classes  ?

  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode

6.

LIFE ON THE EDGE

      
Application Number 240200800
Status Pending
Filing Date 2025-04-23
Owner BLAIZE, INC. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

(1) Computer hardware, namely, electronic circuits, computer chips and circuit boards for AI inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors; downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management. (1) Platform as a Service (PaaS) services for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management.

7.

LIFE ON THE EDGE

      
Serial Number 99060709
Status Pending
Filing Date 2025-02-28
Owner BLAIZE, INC. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for AI inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; Downloadable computer software, namely, software for the creation, processing and streaming of graphs; Downloadable computer software development tools, downloadable compiler software and electronic coding units for programming graph streaming data processors; Downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management Platform as a service (PAAS) featuring computer software platforms for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management

8.

METHOD AND SYSTEMS FOR PREDICTING MEDICAL CONDITIONS AND FORECASTING RATE OF INFECTION OF MEDICAL CONDITIONS VIA ARTIFICIAL INTELLIDENCE MODELS USING GRAPH STREAM PROCESSORS

      
Application Number 18829485
Status Pending
Filing Date 2024-09-10
First Publication Date 2024-12-26
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Munagala, Dinakar C.

Abstract

Systems and methods are disclosed for predicting one or more medical conditions utilizing digital images and employing artificial intelligent algorithms. The system offers accurate predictions utilizing quantized pre-trained deep learning model. The pre-trained deep learning model is trained on data samples and later refined as the system processes more digital images or new medical conditions are incorporated. One pre-trained deep learning model is used to predict the probability of one or more medical conditions and identify locations in the digital image effected by the one or more medical conditions. Further, one pre-trained deep learning model utilizing additional data and plurality of digital images, forecasts rate of infection and spread of the medical condition over time.

IPC Classes  ?

  • G06T 7/00 - Image analysis
  • G06F 18/21 - Design or setup of recognition systems or techniquesExtraction of features in feature spaceBlind source separation
  • G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
  • G06N 3/08 - Learning methods
  • G06T 5/70 - DenoisingSmoothing
  • G06V 10/774 - Generating sets of training patternsBootstrap methods, e.g. bagging or boosting
  • G06V 10/776 - ValidationPerformance evaluation
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G16H 30/40 - ICT specially adapted for the handling or processing of medical images for processing medical images, e.g. editing
  • G16H 50/20 - ICT specially adapted for medical diagnosis, medical simulation or medical data miningICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

9.

Group thread dispatch for graph streaming processor

      
Application Number 18208365
Grant Number 12236245
Status In Force
Filing Date 2023-06-12
First Publication Date 2024-12-12
Grant Date 2025-02-25
Owner Blaize Inc. (USA)
Inventor
  • Darsi, Kota Vamsi Krishna
  • Govindammagari, Sarvendra
  • Palaparthy, Venkata Divyabharathi
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems. and apparatuses for graph streaming processing are disclosed. One method includes receiving, by a thread scheduler, a group of threads, calculating a resource requirement for execution of the group of threads, calculating resource availability in a plurality of processors of each of a plurality of processor arrays, dispatching the group of threads to a selected one of plurality of processors of processor arrays, scheduling a group load instruction for all threads of the group of threads, including loading into a group load register a subset of inputs of the input tensor for processing of each thread of the group of threads, wherein the group load register provides the subset of the inputs of the input tensor to the group of threads of the selected one of the plurality of processors, wherein all threads of the group of threads are synchronized when executing the group load instruction.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead

10.

Method and a system for command buffer management in neural network processing

      
Application Number 18217541
Grant Number 12547454
Status In Force
Filing Date 2023-07-01
First Publication Date 2024-12-12
Grant Date 2026-02-10
Owner Blaize, Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Darsi, Kota Vamsi
  • Fortune, Matthew

Abstract

Disclosed herein is a graph streaming processing system comprising a thread scheduler comprising a first component and a second component. The first component is configured to schedule a first set of threads of a first node to a first processor associated with the first node and initialize status of a completion pointer to an initial value. The completion pointer is associated with a command buffer of the first node. The first component is configured to detect the execution of the first set of threads and generation of a data unit and update the status of the completion pointer to an updated value indicating execution of the first set of threads in response to the generation of the data unit. The second component is configured to schedule a second set of threads of a plurality of second nodes to a second processor based on the status of the completion pointer. The second processor is associated with the plurality of second nodes and the second set of threads of the plurality of second nodes are dependent on execution of the first set of threads.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 9/54 - Interprogram communication

11.

METHOD AND MACHINE LEARNING SYSTEM TO PERFORM QUANTIZATION OF NEURAL NETWORK

      
Application Number 18802260
Status Pending
Filing Date 2024-08-13
First Publication Date 2024-12-05
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Musunuru, Pratyusha

Abstract

The present disclosure relates to a system and method of performing quantization of a neural network having multiple layers. The method comprises receiving a floating-point dataset as input dataset and determining a first shift constant for first layer of the neural network based on the input dataset. The method also comprises performing quantization for the first layer using the determined shift constant of the first layer. The method further comprises determining a next shift constant for next layer of the neural network based on output of a layer previous to the next layer, and performing quantization for the next layer using the determined next shift constant. The method further comprises iterating the steps of determining shift constant and performing quantization for all layers of the neural network to generate fixed point dataset as output.

IPC Classes  ?

  • G06V 10/776 - ValidationPerformance evaluation
  • G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components

12.

Adaptive power supply voltage transient protection

      
Application Number 18765285
Grant Number 12327998
Status In Force
Filing Date 2024-07-07
First Publication Date 2024-10-31
Grant Date 2025-06-10
Owner Blaize, Inc. (USA)
Inventor Ciesluk, Sebastian Artur

Abstract

Methods, systems, and apparatuses for adaptive power supply voltage transient protection are disclosed. One system includes a power supply, a voltage transient sensor, and a power control processing entity. The power supply operates to provide power to one or more processors. The voltage transient sensor is connected to the power supply and operates to sense voltage transients on the power supply at greater than a predetermined speed or rate. The power control processing entity operates to receive a representation of the sensed voltage transients and adjust a power load based on the sensed voltage transients.

IPC Classes  ?

  • H02H 9/04 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection responsive to excess voltage
  • H02H 1/00 - Details of emergency protective circuit arrangements
  • H02H 9/00 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection

13.

Obtaining Custom Artificial Neural Network Architectures

      
Application Number 18409982
Status Pending
Filing Date 2024-01-11
First Publication Date 2024-07-04
Owner Blaize, Inc. (USA)
Inventor
  • Balabin, Ilya A.
  • Geringer, Adam P.
  • Zakharchenko, Dmitry

Abstract

Methods, systems and apparatuses for a custom artificial neural network (ANN) architecture are disclosed. One method includes selecting existing ANN architectures, calculating ANN architecture fingerprints, calculating ANN architecture pairwise similarities among the existing ANN architectures, calculating centrality scores for the existing ANN architectures using the ANN architecture pairwise similarities, calculating dataset pairwise similarities between the target dataset and each of the existing datasets using dataset fingerprints, calculating target performance scores for the existing ANN architectures on the target dataset using performance scores of the existing ANN architectures on the existing datasets and the dataset pairwise similarities, calculating interpolation weights for the existing ANN architectures using the target performance scores of the existing ANN architectures on the target dataset and the centrality scores, and obtaining the custom ANN architecture by interpolating among the existing ANN architectures using the calculated interpolation weights.

IPC Classes  ?

  • G06V 20/40 - ScenesScene-specific elements in video content
  • G06F 18/20 - Analysing
  • G06F 18/21 - Design or setup of recognition systems or techniquesExtraction of features in feature spaceBlind source separation
  • G06F 18/22 - Matching criteria, e.g. proximity measures
  • G06N 3/084 - Backpropagation, e.g. using gradient descent
  • G06N 5/046 - Forward inferencingProduction systems
  • G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G06V 40/12 - Fingerprints or palmprints

14.

Method and systems for predicting medical conditions and forecasting rate of infection of medical conditions via artificial intellidence models using graph stream processors

      
Application Number 18544662
Grant Number 12112478
Status In Force
Filing Date 2023-12-19
First Publication Date 2024-04-11
Grant Date 2024-10-08
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Munagala, Dinakar C.

Abstract

Systems and methods are disclosed for predicting one or more medical conditions utilizing digital images and employing artificial intelligent algorithms. The system offers accurate predictions utilizing quantized pre-trained deep learning model. The pre-trained deep learning model is trained on data samples and later refined as the system processes more digital images or new medical conditions are incorporated. One pre-trained deep learning model is used to predict the probability of one or more medical conditions and identify locations in the digital image effected by the one or more medical conditions. Further, one pre-trained deep learning model utilizing additional data and plurality of digital images, forecasts rate of infection and spread of the medical condition over time.

IPC Classes  ?

  • G06K 9/00 - Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
  • G06F 18/21 - Design or setup of recognition systems or techniquesExtraction of features in feature spaceBlind source separation
  • G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
  • G06N 3/08 - Learning methods
  • G06T 5/70 - DenoisingSmoothing
  • G06T 7/00 - Image analysis
  • G06V 10/774 - Generating sets of training patternsBootstrap methods, e.g. bagging or boosting
  • G06V 10/776 - ValidationPerformance evaluation
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G16H 30/40 - ICT specially adapted for the handling or processing of medical images for processing medical images, e.g. editing
  • G16H 50/20 - ICT specially adapted for medical diagnosis, medical simulation or medical data miningICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

15.

Unsupervised data drift detection for classification neural networks

      
Application Number 17954410
Grant Number 12380690
Status In Force
Filing Date 2022-09-28
First Publication Date 2024-02-01
Grant Date 2025-08-05
Owner Blaize, Inc. (USA)
Inventor
  • Geringer, Adam P.
  • Cook, Val G.

Abstract

Methods, systems, and apparatuses for unsupervised data drift detection for classification neural networks are disclosed. One method includes providing the data stream of images to a neural network, generating, by the neural network, class wise probabilities, storing each image of the data stream of images, storing the class wise probabilities generated by the neural network, comparing artifacts of images of the data stream at a first time with artifacts of images of the data stream at a second time, comparing artifacts produced by the class wise probabilities of the data stream retrieved from the stored class wise probabilities at a third time with artifacts produced by the class wise probabilities of the data stream retrieved from the stored class wise probabilities at a fourth time, and generating an informative communication based on the comparisons.

IPC Classes  ?

  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G06V 10/75 - Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video featuresCoarse-fine approaches, e.g. multi-scale approachesImage or video pattern matchingProximity measures in feature spaces using context analysisSelection of dictionaries
  • G06V 10/776 - ValidationPerformance evaluation

16.

Cascading of graph streaming processors

      
Application Number 18380299
Grant Number 12141606
Status In Force
Filing Date 2023-10-16
First Publication Date 2024-02-01
Grant Date 2024-11-12
Owner Blaize, Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Govindammagari, Sarvendra
  • Agarwal, Lokesh
  • Koneru, Satyaki

Abstract

Methods, systems, and apparatuses for graph stream processing are disclosed. One apparatus includes a cascade of graph streaming processors, wherein each of the graph streaming processor includes a processor array, and a graph streaming processor scheduler. The cascade of graph streaming processors further includes a plurality of shared command buffers, wherein each shared command buffer includes a buffer address, a write pointer, and a read pointer, wherein for each of the plurality of shared command buffers a graph streaming processor writes commands to the shared command buffer as indicated by the write pointer of the shared command buffer and the graph streaming processor reads commands from the shared command buffer as indicated by the read pointer, wherein at least one graph streaming processor scheduler operates to manage the write pointer and the read pointer to avoid overwriting unused commands of the shared command buffer.

IPC Classes  ?

  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining
  • G06F 8/41 - Compilation
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

17.

Graph streaming neural network processing system and method thereof

      
Application Number 18210706
Grant Number 12547453
Status In Force
Filing Date 2023-06-16
First Publication Date 2023-12-28
Grant Date 2026-02-10
Owner Blaize Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Cook, Val G.
  • Nagisetty, Srinivasulu

Abstract

Disclosed herein is a graph streaming neural network processing system comprising a first processor array, a second processor, and a thread scheduler. The thread scheduler dispatches a thread of a first node to the first processor array or the second processor, wherein the thread is executed to generate output data comprising a data unit stored in a private data buffer of the second processor. The thread scheduler determines that the data unit is sufficient for executing a thread of a second node. The second node is dependent on the output data generated by execution of a plurality of threads of the first node. Upon determining that the data unit is sufficient, the thread scheduler dispatches the thread of the second node. The thread scheduler determines to dispatch a subsequent thread of the first node for execution when a predefined threshold buffer size is available on the private data buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 15/80 - Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors

18.

Single instruction multiple data execution with variable size logical registers

      
Application Number 17749268
Grant Number 11853762
Status In Force
Filing Date 2022-05-20
First Publication Date 2023-12-26
Grant Date 2023-12-26
Owner Blaize, Inc. (USA)
Inventor
  • Thangam, Kamaraj
  • Nagisetty, Srinivasulu
  • Bharathi Palaparthy, Venkata Divya
  • Asok, Aswathy
  • Koneru, Satyaki

Abstract

Systems, apparatuses and methods are disclosed for efficient management of registers in a graph stream processing (GSP) system. The GSP system includes a thread scheduler module operative to initiate a Single Instruction Multiple Data (SIMD) thread, the SIMD thread including a dispatch mask with an initial value. A thread arbiter module operative to select an instruction from the instructions and provide the instruction to each of one or more compute resources, and an instruction iterator module, associated with the each of one or more compute resources operative to determine a data type of the instruction. The instruction iterator module iteratively executes the instruction based on the data type and the dispatch mask.

IPC Classes  ?

  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

19.

METHOD AND SYSTEM FOR GENERATING A MIXED PRECISION MODEL

      
Application Number 18072785
Status Pending
Filing Date 2022-12-01
First Publication Date 2023-09-07
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Gude, Mounika
  • Musunuru, Pratyusha

Abstract

Disclosed herein is a method and a system for generating a mixed precision quantization model for performing image processing. The method comprises receiving a validation dataset of images to train a neural network model. The method comprises for each image of the validation dataset, generating a union sensitivity list, selecting a group of layers, generating a mixed precision quantization model by quantizing the selected group of layers into a high precision format; computing accuracy of the mixed precision quantization model for comparison with a target accuracy; in response to determining the accuracy is less than the target accuracy, generating another mixed precision model by selecting a next group of layers and computing the accuracy. In response to determining the accuracy is greater than or equal to the target accuracy, storing the mixed precision quantization model as a final mixed precision quantization model for image processing.

IPC Classes  ?

  • G06N 3/04 - Architecture, e.g. interconnection topology
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G06V 10/28 - Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns

20.

Method of optimizing register memory allocation for vector instructions and a system thereof

      
Application Number 17668161
Grant Number 11829736
Status In Force
Filing Date 2022-02-09
First Publication Date 2023-08-10
Grant Date 2023-11-28
Owner Blaize, Inc. (USA)
Inventor
  • Nagraj, Pathikonda Datta
  • Rajulapudi, Aravind
  • Korsa, Ravi

Abstract

The present disclosure relates to a system and a method of optimizing register allocation by a processor. The method comprising receiving an intermediate representation (IR) code of a source code and initializing single instruction multiple data (SIMD) width for the IR code. The method comprising analyzing each basic block of the IR code to classify determine one or more instructions of the IR code as vector instructions, wherein each basic block is one of LOAD, STORE and arithmetic logical and multiply (ALM) instructions. The method comprising dynamically setting the SIMD width for each of the vector instructions.

IPC Classes  ?

  • G06F 8/41 - Compilation
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]

21.

Adaptive power supply voltage transient protection

      
Application Number 17544087
Grant Number 12057697
Status In Force
Filing Date 2021-12-07
First Publication Date 2023-06-08
Grant Date 2024-08-06
Owner Blaize, Inc. (USA)
Inventor Ciesluk, Sebastian Artur

Abstract

Methods, systems, and apparatuses for adaptive power supply voltage transient protection are disclosed. One system includes a system on a chip (SOC), wherein the SOC includes a power supply, a voltage transient sensor, and a power control processing entity. The power supply operates to provide power to one or more processors operating on the SOC. The voltage transient sensor is connected to the power supply and operates to sense voltage transients on the power supply at greater than a predetermined speed or rate. The power control processing entity operates to receive a digital representation of the sensed voltage transients and adjust a power load of the SOC based on the sensed voltage transients.

IPC Classes  ?

  • H02H 9/04 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection responsive to excess voltage
  • H02H 1/00 - Details of emergency protective circuit arrangements
  • H02H 9/00 - Emergency protective circuit arrangements for limiting excess current or voltage without disconnection

22.

Picasso

      
Application Number 1728103
Status Registered
Filing Date 2023-03-27
Registration Date 2023-03-27
Owner Blaize, Inc. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

downloadable computer software development platform for artificial intelligence (ai) and machine learning (ml) software design, development, deployment, and management; downloadable computer software development platform for graph streaming data processors; downloadable computer software, namely, software for creating and optimizing artificial intelligence applications; downloadable computer software, namely, software for artificial intelligence inferencing, machine learning, deep learning, and vision processing. Platform as a service (PaaS) services for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management; platform as a service (PaaS) services for graph streaming data processors.

23.

Blaize Pathfinder

      
Application Number 1726398
Status Registered
Filing Date 2023-03-27
Registration Date 2023-03-27
Owner Blaize, Inc. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for ai inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for ai inferencing, machine learning, deep learning, and vision processing; downloadable computer software development tools.

24.

Xplorer

      
Application Number 1726397
Status Registered
Filing Date 2023-03-27
Registration Date 2023-03-27
Owner Blaize, Inc. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for ai inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for ai inferencing, machine learning, deep learning, and vision processing; downloadable computer software development tools.

25.

Blaize Pathfinder

      
Application Number 225462200
Status Registered
Filing Date 2023-03-27
Registration Date 2025-07-11
Owner Blaize, Inc. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

(1) Computer hardware, namely, electronic circuits, computer chips and circuit boards for ai inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for providing an integrated development environment for ai inferencing, machine learning, deep learning, and vision processing; downloadable computer software development tools, namely, compiler software and electronic coding units for programming graph streaming data processors.

26.

Xplorer

      
Application Number 225462000
Status Registered
Filing Date 2023-03-27
Registration Date 2025-07-11
Owner Blaize, Inc. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

(1) Computer hardware, namely, electronic circuits, computer chips and circuit boards for ai inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for providing an integrated development environment for ai inferencing, machine learning, deep learning, and vision processing; downloadable computer software development tools, namely, compiler software and electronic coding units for programming graph streaming data processors

27.

Picasso

      
Application Number 225585200
Status Registered
Filing Date 2023-03-27
Registration Date 2025-06-27
Owner Blaize, Inc. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

(1) Downloadable computer software development platform for providing an integrated development environment for artificial intelligence (ai) and machine learning (ml) software design, development, deployment, and management; downloadable computer software development platform for the creation, processing and streaming of graphs; downloadable computer software, namely, software for providing an integrated development environment for creating and optimizing artificial intelligence applications; downloadable computer software, namely, software for providing an integrated development environment for artificial intelligence inferencing, machine learning, deep learning, and vision processing (1) Platform as a service (PaaS) services for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management; platform as a service (PaaS) services for the creation, processing and streaming of graphs

28.

BLAIZE PATHFINDER

      
Serial Number 97845945
Status Registered
Filing Date 2023-03-19
Registration Date 2024-04-09
Owner Blaize, Inc. ()
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for AI inferencing, machine learning, deep learning, and vision processing; graph streaming data processors; Downloadable computer software, namely, software for AI inferencing, machine learning, deep learning, and vision processing; Downloadable computer software development tools

29.

XPLORER

      
Serial Number 97845957
Status Registered
Filing Date 2023-03-19
Registration Date 2024-12-10
Owner Blaize, Inc. ()
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for AI inferencing, machine learning, and deep learning; graph streaming data processors.

30.

PICASSO

      
Serial Number 97845959
Status Registered
Filing Date 2023-03-19
Registration Date 2024-12-24
Owner Blaize, Inc. ()
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

Downloadable computer software development platform for the design, development, deployment, and management of artificial intelligence (AI) and machine learning (ML) software; Downloadable computer software, namely, software development platforms for graph streaming data processors; Downloadable computer software, namely, software for creating and optimizing artificial intelligence applications Platform as a Service (PaaS) services featuring computer software platforms for the design, development, deployment, and management of artificial intelligence (AI) and machine learning (ML) software; Platform as a Service (PaaS) services featuring computer software platforms for graph streaming data processors.

31.

Iterating group sum of multiple accumulate operations

      
Application Number 17696778
Grant Number 11593114
Status In Force
Filing Date 2022-03-16
First Publication Date 2023-02-28
Grant Date 2023-02-28
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Thangam, Kamaraj

Abstract

Methods, systems and apparatuses for performing walk operations of single instruction, multiple data (SIMD) instructions are disclosed. One method includes initiating, by a scheduler, a SIMD thread, where the scheduler is operative to schedule the SIMD thread. The method further includes fetching a plurality of instructions for the SIMD thread. The method further includes determining, by a thread arbiter, at least one instruction that is a walk instruction, where the walk instruction iterates a block of instructions for a subset of channels of the SIMD thread, where the walk instruction includes a walk size, and where the walk size is a number of channels in the subset of channels of the SIMD thread that are processed in a walk iteration in association with the walk instruction. The method further includes executing the walk instruction based on the walk size.

IPC Classes  ?

  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode

32.

Method and machine learning system to perform quantization of neural network

      
Application Number 17699255
Grant Number 12100196
Status In Force
Filing Date 2022-03-21
First Publication Date 2023-02-23
Grant Date 2024-09-24
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Musunuru, Pratyusha

Abstract

The present disclosure relates to a system and method of performing quantization of a neural network having multiple layers. The method comprises receiving a floating-point dataset as input dataset and determining a first shift constant for first layer of the neural network based on the input dataset. The method also comprises performing quantization for the first layer using the determined shift constant of the first layer. The method further comprises determining a next shift constant for next layer of the neural network based on output of a layer previous to the next layer, and performing quantization for the next layer using the determined next shift constant. The method further comprises iterating the steps of determining shift constant and performing quantization for all layers of the neural network to generate fixed point dataset as output.

IPC Classes  ?

  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
  • G06V 10/44 - Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersectionsConnectivity analysis, e.g. of connected components
  • G06V 10/776 - ValidationPerformance evaluation

33.

Configurable scheduler with pre-fetch and invalidate threads in a graph stream processing system

      
Application Number 17976817
Grant Number 11734065
Status In Force
Filing Date 2022-10-30
First Publication Date 2023-02-16
Grant Date 2023-08-22
Owner Blaize, Inc. (USA)
Inventor Koneru, Satyaki

Abstract

Systems, apparatuses, and methods are disclosed for scheduling threads comprising of code blocks in a graph streaming processor (GSP) system. One system includes a scheduler for scheduling plurality of prefetch threads, main threads, invalidate threads. The plurality of prefetch threads includes prefetching data from main memory required for execution of the main threads of the next stage. The plurality of main threads includes a set of instructions operating on the graph streaming processors of GSP system. The plurality of the invalidate threads includes invalidating data location/s consumed by the plurality of the main threads of the previous stage. A portion of the scheduler is implemented in hardware.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

34.

Reduction of a number of stages of a graph streaming processor

      
Application Number 17866476
Grant Number 11669366
Status In Force
Filing Date 2022-07-16
First Publication Date 2022-11-03
Grant Date 2023-06-06
Owner Blaize, Inc. (USA)
Inventor
  • Agarwal, Lokesh
  • Govindammagari, Sarvendra
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems, and apparatuses for graph streaming processing system are disclosed. One system includes a plurality of graph streaming processors operative to process a plurality of threads, wherein the plurality of threads is organized as nodes. The system further includes a scheduler that includes a plurality of stages. Each stage includes a command parser operative to interpret commands within a corresponding input command buffer, an alternate command buffer, and a thread generator coupled to the command parser. The thread generator is operative to generate the plurality of threads, and dispatch the plurality of threads, where the processing of the plurality of thread for each stage includes storing write commands in the corresponding output command buffer or in the alternate command buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 16/901 - IndexingData structures thereforStorage structures
  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining

35.

Cascading of graph streaming processors

      
Application Number 17833981
Grant Number 11822960
Status In Force
Filing Date 2022-06-07
First Publication Date 2022-09-22
Grant Date 2023-11-21
Owner Blaize, Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Govindammagari, Sarvendra
  • Agarwal, Lokesh
  • Koneru, Satyaki

Abstract

Methods, systems, and apparatuses for graph stream processing are disclosed. One apparatus includes a cascade of graph streaming processors, wherein each of the graph streaming processor includes a processor array, and a graph streaming processor scheduler. The cascade of graph streaming processors further includes a plurality of shared command buffers, wherein each shared command buffer includes a buffer address, a write pointer, and a read pointer, wherein for each of the plurality of shared command buffers a first graph streaming processor writes commands to the shared command buffer as indicated by the write pointer of the shared command buffer and a second graph streaming processor reads commands from the shared command buffer as indicated by the read pointer, wherein at least one graph streaming processor scheduler operates to manage the write pointer and the read pointer to avoid overwriting unused commands of the shared command buffer.

IPC Classes  ?

  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 8/41 - Compilation
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead

36.

Method of using multidimensional blockification to optimize computer program and device thereof

      
Application Number 17713310
Grant Number 11640285
Status In Force
Filing Date 2022-04-05
First Publication Date 2022-07-21
Grant Date 2023-05-02
Owner Blaize, Inc. (USA)
Inventor
  • Korsa, Ravi
  • Rajulapudi, Aravind
  • Nagraj, Pathikonda Datta

Abstract

Disclosed embodiments relate to a method and device for optimizing compilation of source code. The proposed method receives a first intermediate representation code of a source code and analyses each basic block instruction of the plurality of basic block instructions contained in the first intermediate representation code for blockification. In order to blockify the identical instructions, the one or more groups of basic block instructions are assessed for eligibility of blockification. Upon determining as eligible, the group of basic block instructions are blockified using one of one dimensional SIMD vectorization and two-dimensional SIMD vectorization. The method further generates a second intermediate representation of the source code which is translated to executable target code with more efficient processing capacity.

IPC Classes  ?

  • G06F 8/41 - Compilation
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/4401 - Bootstrapping
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]

37.

Single instruction multiple data (simd) execution with variable width registers

      
Application Number 16706753
Grant Number 11366664
Status In Force
Filing Date 2019-12-08
First Publication Date 2022-06-21
Grant Date 2022-06-21
Owner Blaize, Inc. (USA)
Inventor
  • Thangam, Kamaraj
  • Nagisetty, Srinivasulu
  • Bharathi Palaparthy, Venkata Divya
  • Asok, Aswathy
  • Koneru, Satyaki

Abstract

Systems, apparatuses and methods are disclosed for efficient management of registers in a graph stream processing (GSP) system. The GSP system includes a thread scheduler module operative to initiate a Single Instruction Multiple Data (SIMD) thread, the SIMD thread including a dispatch mask with an initial value. A thread arbiter module operative to select an instruction from the instructions and provide the instruction to each of one or more compute resources, and an instruction iterator module, associated with the each of one or more compute resources operative to determine a data type of the instruction. The instruction iterator module iteratively executes the instruction based on the data type and the dispatch mask.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

38.

Blaize AI Studio

      
Application Number 1662709
Status Registered
Filing Date 2022-03-31
Registration Date 2022-03-31
Owner Blaize, Inc. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

Downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management. Platform as a Service (PaaS) services for artificial intelligence (AI) and/or machine learning (ML) software design, development, deployment, and management.

39.

METHOD OF OPTIMIZING SCALAR REGISTER ALLOCATION AND A SYSTEM THEREOF

      
Application Number 17668204
Status Pending
Filing Date 2022-02-09
First Publication Date 2022-05-26
Owner Blaize, Inc. (USA)
Inventor
  • Nagraj, Pathikonda Datta
  • Rajulapudi, Aravind
  • Korsa, Ravi

Abstract

The present disclosure relates to a system and a method of optimizing scalar register allocation by a processor. The method comprises receiving an intermediate code and information about one or more available physical registers in a memory of the processor, as input. The method further comprises allocating one or more virtual registers based on the received information, wherein each virtual register is having size of each available physical register. The method also comprises mapping one or more groups of 8-bit location of the one or more virtual registers to one or more register classes. The method further comprises identifying a plurality of scalar variables from the input intermediate code, and dynamically assigning the one or more available physical registers to the identified scalar variables using the one or more register classes.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]
  • G06F 9/4401 - Bootstrapping

40.

Configurable scheduler with pre-fetch and invalidate threads in a graph stream processing system

      
Application Number 17091055
Grant Number 11513845
Status In Force
Filing Date 2020-11-06
First Publication Date 2022-05-12
Grant Date 2022-11-29
Owner Blaize, Inc. (USA)
Inventor Koneru, Satyaki

Abstract

Systems, apparatuses, and methods are disclosed for scheduling threads comprising of code blocks in a graph streaming processor (GSP) system. One system includes a scheduler for scheduling plurality of prefetch threads, main threads, invalidate threads. The plurality of prefetch threads includes prefetching data from main memory required for execution of the main threads of the next stage. The plurality of main threads includes a set of instructions operating on the graph streaming processors of GSP system. The plurality of the invalidate threads includes invalidating data location/s consumed by the plurality of the main threads of the previous stage. A portion of the scheduler is implemented in hardware.

IPC Classes  ?

  • G06F 9/46 - Multiprogramming arrangements
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt

41.

Iterating group sum of multiple accumulate operations

      
Application Number 17219926
Grant Number 11307860
Status In Force
Filing Date 2021-04-01
First Publication Date 2022-04-19
Grant Date 2022-04-19
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Thangam, Kamaraj

Abstract

Methods, systems and apparatuses for performing walk operations of single instruction, multiple data (SIMD) instructions are disclosed. One method includes initiating, by a scheduler, a SIMD thread, where the scheduler is operative to schedule the SIMD thread. The method further includes fetching a plurality of instructions for the SIMD thread. The method further includes determining, by a thread arbiter, at least one instruction that is a walk instruction, where the walk instruction iterates a block of instructions for a subset of channels of the SIMD thread, where the walk instruction includes a walk size, and where the walk size is a number of channels in the subset of channels of the SIMD thread that are processed in a walk iteration in association with the walk instruction. The method further includes executing the walk instruction based on the walk size.

IPC Classes  ?

  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode

42.

Blaize AI Studio

      
Application Number 218812900
Status Registered
Filing Date 2022-03-31
Registration Date 2024-03-07
Owner Blaize, Inc. (USA)
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

(1) Downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management (1) Platform as a Service (PaaS) services for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management

43.

BLAIZE

      
Application Number 218086000
Status Registered
Filing Date 2022-03-29
Registration Date 2023-12-08
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

(1) Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors.

44.

BLAIZE

      
Application Number 218086200
Status Registered
Filing Date 2022-03-29
Registration Date 2023-12-08
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

(1) Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors.

45.

BLAIZE AI STUDIO

      
Serial Number 97329926
Status Registered
Filing Date 2022-03-25
Registration Date 2023-05-16
Owner Blaize, Inc. ()
NICE Classes  ?
  • 09 - Scientific and electric apparatus and instruments
  • 42 - Scientific, technological and industrial services, research and design

Goods & Services

Downloadable computer software for providing an integrated development environment (IDE) for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management Platform as a Service (PaaS) services for artificial intelligence (AI) and machine learning (ML) software design, development, deployment, and management

46.

Configurable scheduler for graph processing on multi-processor computing systems

      
Application Number 17396721
Grant Number 11755368
Status In Force
Filing Date 2021-08-08
First Publication Date 2021-12-30
Grant Date 2023-09-12
Owner Blaize , Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Cook, Val G.
  • Yin, Ke

Abstract

Systems and methods are disclosures for scheduling code in a multiprocessor system. Code is portioned into code blocks by a compiler. The compiler schedules execution of code blocks in nodes. The nodes are connected in a directed acyclical graph with a top node, terminal node and a plurality of intermediate nodes. Execution of the top node is initiated by the compiler. After executing at least one instance of the top node, an instruction in the code block indicates to the scheduler to initiate at least one intermediary node. The scheduler schedules a thread for execution of the intermediary node. The data for the nodes resides in a plurality of data buffers; the index to the data buffer is stored in a command buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]
  • G06F 8/41 - Compilation

47.

Node topology employing command and data buffers for executing thread scheduling

      
Application Number 17397134
Grant Number 11593911
Status In Force
Filing Date 2021-08-09
First Publication Date 2021-12-02
Grant Date 2023-02-28
Owner Blaze, Inc. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

The described embodiments include systems, methods, and apparatuses for increased efficiency processing flow. One method includes a plurality of stages configured to process an execution graph that includes a plurality of logical nodes with defined properties and resources associated with each logical node of the plurality of logical nodes, a recirculating ring buffer, wherein the recirculating ring buffer is configured to holding only any one of a control information, input, and, or out data necessary to stream a temporary data between each logical node of the execution graph, and a data producer, wherein the data producer is configured to stall from writing control information into a command buffer upon the command buffer being full, preventing command buffer over-writing.

IPC Classes  ?

  • G06T 1/60 - Memory management
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • A01C 3/02 - Storage places for manure, e.g. cisterns for liquid manureInstallations for fermenting manure
  • A01D 3/02 - Non-abrasive sharpening devices for scythes, sickles, or the like with percussive tools

48.

Accelerated operation of a graph streaming processor

      
Application Number 17399184
Grant Number 11593184
Status In Force
Filing Date 2021-08-11
First Publication Date 2021-12-02
Grant Date 2023-02-28
Owner Blaize, Inc. (USA)
Inventor
  • Agarwal, Lokesh
  • Govindammagari, Sarvendra
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems and apparatuses for graph processing are disclosed. One graph streaming processor includes a thread manager, wherein the thread manager is operative to dispatch operation of the plurality of threads of a plurality of thread processors before dependencies of the dependent threads have been resolved, maintain a scorecard of operation of the plurality of threads of the plurality of thread processors, and provide an indication to at least one of the plurality of thread processors when a dependency between the at least one of the plurality of threads that a request has or has not been satisfied. Further, a producer thread provides a response to the dependency when the dependency has been satisfied, and each of the plurality of thread processors is operative to provide processing updates to the thread manager, and provide queries to the thread manager upon reaching a dependency.

IPC Classes  ?

  • G06F 9/52 - Program synchronisationMutual exclusion, e.g. by means of semaphores
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 16/903 - Querying
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 16/901 - IndexingData structures thereforStorage structures

49.

Method of using multidimensional blockification to optimize computer program and device thereof

      
Application Number 16994082
Grant Number 11327733
Status In Force
Filing Date 2020-08-14
First Publication Date 2021-12-02
Grant Date 2022-05-10
Owner Blaize, Inc. (USA)
Inventor
  • Korsa, Ravi
  • Rajulapudi, Aravind
  • Nagraj, Pathikonda Datta

Abstract

Disclosed embodiments relate to a method and device for optimizing compilation of source code. The proposed method receives a first intermediate representation code of a source code and analyses each basic block instruction of the plurality of basic block instructions contained in the first intermediate representation code for blockification. In order to blockify the identical instructions, the one or more groups of basic block instructions are assessed for eligibility of blockification. Upon determining as eligible, the group of basic block instructions are blockified using one of one dimensional SIMD vectorization and two-dimensional SIMD vectorization. The method further generates a second intermediate representation of the source code which is translated to executable target code with more efficient processing capacity.

IPC Classes  ?

  • G06F 8/41 - Compilation
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode

50.

Discovering novel artificial neural network architectures

      
Application Number 17182334
Grant Number 12307371
Status In Force
Filing Date 2021-02-23
First Publication Date 2021-11-25
Grant Date 2025-05-20
Owner Blaize, Inc. (USA)
Inventor
  • Balabin, Ilya A.
  • Geringer, Adam P.

Abstract

Methods, systems and apparatuses for discovering novel artificial neural network architectures (ANN) architecture are disclosed. One method includes calculating ANN architecture fingerprints including an ANN architecture fingerprint of each of a plurality of existing ANN architectures, creating a plurality of next-generation candidate ANN architectures, calculating a plurality of next-generation candidate ANN architecture fingerprints including an ANN architecture fingerprint of each of the plurality of next-generation candidate ANN architectures, calculating ANN architecture pairwise similarities between each of the plurality of existing ANN architectures and each of the plurality of next-generation candidate ANN architectures using the plurality of existing ANN architecture fingerprints and the plurality of next-generation candidate ANN architecture fingerprints, retraining each of the plurality of next-generation candidate ANN architectures on the training dataset, obtaining a performance score of each of the next-generation candidate ANN architectures, and calculating a fitness score for each of the next-generation candidate ANN architectures.

IPC Classes  ?

  • G06N 3/045 - Combinations of networks
  • G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
  • G06N 3/082 - Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
  • G06N 3/084 - Backpropagation, e.g. using gradient descent
  • G06N 3/086 - Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
  • G06N 20/00 - Machine learning

51.

Method and systems for predicting medical conditions and forecasting rate of infection of medical conditions via artificial intelligence models using graph stream processors

      
Application Number 17238289
Grant Number 11908132
Status In Force
Filing Date 2021-04-23
First Publication Date 2021-11-04
Grant Date 2024-02-20
Owner Blaize, Inc. (USA)
Inventor
  • Bijalwan, Deepak Chandra
  • Munagala, Dinakar C.

Abstract

Systems and methods are disclosed for predicting one or more medical conditions utilizing digital images and employing artificial intelligent algorithms. The system offers accurate predictions utilizing quantized pre-trained deep learning model. The pre-trained deep learning model is trained on data samples and later refined as the system processes more digital images or new medical conditions are incorporated. One pre-trained deep learning model is used to predict the probability of one or more medical conditions and identify locations in the digital image effected by the one or more medical conditions. Further, one pre-trained deep learning model utilizing additional data and plurality of digital images, forecasts rate of infection and spread of the medical condition over time.

IPC Classes  ?

  • G06K 9/00 - Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
  • G06T 7/00 - Image analysis
  • G16H 30/40 - ICT specially adapted for the handling or processing of medical images for processing medical images, e.g. editing
  • G16H 50/20 - ICT specially adapted for medical diagnosis, medical simulation or medical data miningICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
  • G06T 5/00 - Image enhancement or restoration
  • G06N 3/08 - Learning methods
  • G06F 18/214 - Generating training patternsBootstrap methods, e.g. bagging or boosting
  • G06F 18/21 - Design or setup of recognition systems or techniquesExtraction of features in feature spaceBlind source separation
  • G06V 10/774 - Generating sets of training patternsBootstrap methods, e.g. bagging or boosting
  • G06V 10/776 - ValidationPerformance evaluation
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

52.

Obtaining custom artificial neural network architectures

      
Application Number 17097249
Grant Number 11908193
Status In Force
Filing Date 2020-11-13
First Publication Date 2021-10-21
Grant Date 2024-02-20
Owner Blaize, Inc. (USA)
Inventor
  • Balabin, Ilya A.
  • Geringer, Adam P.
  • Zakharchenko, Dmitry

Abstract

Methods, systems and apparatuses for a custom artificial neural network (ANN) architecture are disclosed. One method includes selecting existing ANN architectures, calculating ANN architecture fingerprints, calculating ANN architecture pairwise similarities among the existing ANN architectures, calculating centrality scores for the existing ANN architectures using the ANN architecture pairwise similarities, calculating dataset pairwise similarities between the target dataset and each of the existing datasets using dataset fingerprints, calculating target performance scores for the existing ANN architectures on the target dataset using performance scores of the existing ANN architectures on the existing datasets and the dataset pairwise similarities, calculating interpolation weights for the existing ANN architectures using the target performance scores of the existing ANN architectures on the target dataset and the centrality scores, and obtaining the custom ANN architecture by interpolating among the existing ANN architectures using the calculated interpolation weights.

IPC Classes  ?

  • G06N 3/084 - Backpropagation, e.g. using gradient descent
  • G06N 5/046 - Forward inferencingProduction systems
  • G06V 20/40 - ScenesScene-specific elements in video content
  • G06V 40/12 - Fingerprints or palmprints
  • G06F 18/22 - Matching criteria, e.g. proximity measures
  • G06F 18/21 - Design or setup of recognition systems or techniquesExtraction of features in feature spaceBlind source separation
  • G06F 18/20 - Analysing
  • G06V 10/764 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
  • G06V 10/82 - Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

53.

Iterating single instruction, multiple-data (SIMD) instructions

      
Application Number 16693092
Grant Number 10996960
Status In Force
Filing Date 2019-11-22
First Publication Date 2021-05-04
Grant Date 2021-05-04
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Thangam, Kamaraj

Abstract

Methods, systems and apparatuses for performing walk operations of single instruction, multiple data (SIMD) instructions are disclosed. One method includes initiating, by a scheduler, a SIMD thread, where the scheduler is operative to schedule the SIMD thread. The method further includes fetching, a plurality of instructions for the SIMD thread. The method further includes determining, by a thread arbiter, at least one instruction that is a walk instruction, where the walk instruction iterates a block of instructions for a subset of channels of the SIMD thread, where the walk instruction includes a walk size, and where the walk size is a number of channels in the subset of channels of the SIMD thread that are processed in a walk iteration in association with the walk instruction. The method further includes executing the walk instruction based on the walk size.

IPC Classes  ?

  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode

54.

Reducing operations of sum-of-multiply-accumulate (SOMAC) instructions

      
Application Number 16535309
Grant Number 11481223
Status In Force
Filing Date 2019-08-08
First Publication Date 2021-02-11
Grant Date 2022-10-25
Owner Blaize, Inc. (USA)
Inventor
  • Thangam, Kamaraj
  • Venkata Divya Bharathi, Palaparthy
  • Koneru, Satyaki

Abstract

Methods, systems and apparatuses for reducing operations of Sum-Of-Multiply-Accumulate (SOMAC) instructions are disclosed. One method includes scheduling, by a scheduler, a thread for execution, executing, by a processor of a plurality of processors, the thread, fetching, by the processor, a plurality of instructions for the thread from a memory, selecting, by a thread arbiter of the processor, an instruction of the plurality of instructions for execution in an arithmetic logic unit (ALU) pipeline of the processor, and reading the instruction, and determining, by a macro-instruction iterator of the processor, whether the instruction is a Sum-Of-Multiply-Accumulate (SOMAC) instruction with an instruction size, wherein the instruction size indicates a number of iterations that the SOMAC instruction is to be executed.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06N 3/063 - Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

55.

Group load register of a graph streaming processor

      
Application Number 16930192
Grant Number 11416261
Status In Force
Filing Date 2020-07-15
First Publication Date 2021-02-11
Grant Date 2022-08-16
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Thangam, Kamaraj
  • Surineni, Sruthikesh

Abstract

Methods, systems and apparatuses for graph streaming processing are disclosed. One method includes loading, by a group load register, a subset of a an input tensor from a data cache, wherein the group load register provides the subset of the input tensor to all of a plurality of processors, loading, by a plurality of weight data registers, a plurality of weights of a weight tensor, wherein each of the weight data registers provide an weight to a single of the plurality of processors, and performing, by the plurality of processors, a SOMAC (Sum-Of-Multiply-Accumulate) instruction, including simultaneously determining, by each of the plurality of processors, an instruction size of the SOMAC instruction, wherein the instruction size indicates a number of iterations that the SOMAC instruction is to be executed and is equal to a number of outputs within a subset of a plurality of output tensors.

IPC Classes  ?

  • G06F 9/30 - Arrangements for executing machine instructions, e.g. instruction decode
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead

56.

Node topology employing command and data buffers for executing thread scheduling

      
Application Number 16907698
Grant Number 11151684
Status In Force
Filing Date 2020-06-22
First Publication Date 2020-10-08
Grant Date 2021-10-19
Owner Blaize, Inc. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

The described embodiments include systems, methods, and apparatuses for increased efficiency processing flow. One method includes a plurality of stages configured to process an execution graph that includes a plurality of logical nodes with defined properties and resources associated with each logical node of the plurality of logical nodes, a recirculating ring buffer, wherein the recirculating ring buffer is configured to holding only any one of a control information, input, and, or out data necessary to stream a temporary data between each logical node of the execution graph, and a data producer, wherein the data producer is configured to stall from writing control information into a command buffer upon the command buffer being full, preventing command buffer over-writing.

IPC Classes  ?

  • G06T 1/60 - Memory management
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • A01C 3/02 - Storage places for manure, e.g. cisterns for liquid manureInstallations for fermenting manure
  • A01D 3/02 - Non-abrasive sharpening devices for scythes, sickles, or the like with percussive tools

57.

blaize

      
Application Number 1524665
Status Registered
Filing Date 2020-02-28
Registration Date 2020-02-28
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors.

58.

GRAPH STREAMING PROCESSOR

      
Serial Number 88859414
Status Registered
Filing Date 2020-04-03
Registration Date 2021-04-13
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Processor cores in the nature of computing hardware as components of Systems-on-a-Chip; Instruction set architecture and processor architectures in the nature of computing hardware for integrated circuits; Underlying processor architecture in the nature of computing hardware for integrated circuits

59.

BLAIZE

      
Application Number 1523234
Status Registered
Filing Date 2020-02-28
Registration Date 2020-02-28
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; downloadable computer software, namely, software for the creation, processing and streaming of graphs; downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors.

60.

Node topology employing recirculating ring command and data buffers for executing thread scheduling

      
Application Number 16699045
Grant Number 10740868
Status In Force
Filing Date 2019-11-28
First Publication Date 2020-03-26
Grant Date 2020-08-11
Owner Blaize, Inc. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

The described embodiments include systems, methods, and apparatuses for increased efficiency processing flow. One method includes a plurality of stages configured to process an execution graph that includes a plurality of logical nodes with defined properties and resources associated with each logical node of the plurality of logical nodes, a recirculating ring buffer, wherein the recirculating ring buffer is configured to holding only any one of a control information, input, and, or out data necessary to stream a temporary data between each logical node of the execution graph, and a data producer, wherein the data producer is configured to stall from writing control information into a command buffer upon the command buffer being full, preventing command buffer over-writing.

IPC Classes  ?

61.

GSP

      
Serial Number 88723197
Status Registered
Filing Date 2019-12-11
Registration Date 2020-08-25
Owner BLAIZE, INC. (USA)
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Processor cores in the nature of computing hardware as components of Systems-on-a-Chip; Instruction set architecture and processor architectures for integrated circuits in the nature of computing hardware; Underlying processor architecture for integrated circuits in the nature of computing hardware

62.

Configurable scheduler in a graph streaming processing system

      
Application Number 16505381
Grant Number 11126462
Status In Force
Filing Date 2019-07-08
First Publication Date 2019-10-31
Grant Date 2021-09-21
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Cook, Val G.
  • Yin, Ke

Abstract

Systems and methods are disclosures for scheduling code in a multiprocessor system. Code is portioned into code blocks by a compiler. The compiler schedules execution of code blocks in nodes. The nodes are connected in a directed acyclical graph with a top node, terminal node and a plurality of intermediate nodes. Execution of the top node is initiated by the compiler. After executing at least one instance of the top node, an instruction in the code block indicates to the scheduler to initiate at least one intermediary node. The scheduler schedules a thread for execution of the intermediary node. The data for the nodes resides in a plurality of data buffers; the index to the data buffer is stored in a command buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 8/41 - Compilation
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]

63.

Node topology employing recirculating ring command and data buffers for executing thread scheduling

      
Application Number 16416179
Grant Number 10540740
Status In Force
Filing Date 2019-05-18
First Publication Date 2019-10-24
Grant Date 2020-01-21
Owner Blaize, Inc. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

The claimed invention discloses system comprising a plurality of logical nodes comprised in a single or plurality of stages, with defined properties and resources associated with each node, for reducing compute resources, said system further comprising: at least a recirculating ring buffer holding only any one of a control information, input, and, or out data necessary to stream a temporary data between node and, or nodes in an execution graph, thereby reducing size of said recirculating ring buffer; said recirculating ring buffer being sufficiently reduced in size to reside in an on-chip cache, such that any one of the control information, input, and, or out data between node and, or nodes need not be stored in memory; wherein the control information further comprises a command related to invalidating any one of the input and, or out data held in a recirculating ring data buffer, clearing the buffer of tasked data; and wherein a producer is stalled from writing any more control information into a recirculating ring command buffer upon the buffer being full, preventing command buffer over-writing, and thereby reducing compute resources associated with a DRAM memory transaction.

IPC Classes  ?

64.

Configurable scheduler for graph processing on multi-processor computing systems

      
Application Number 15164848
Grant Number 10437637
Status In Force
Filing Date 2016-05-25
First Publication Date 2019-10-08
Grant Date 2019-10-08
Owner BLAIZE, INC. (USA)
Inventor
  • Koneru, Satyaki
  • Cook, Val G
  • Yin, Ke

Abstract

Systems and methods are disclosures for scheduling code in a multiprocessor system. Code is portioned into code blocks by a compiler. The compiler schedules execution of code blocks in nodes. The nodes are connected in a directed acyclical graph with a top node, terminal node and a plurality of intermediate nodes. Execution of the top node is initiated by the compiler. After executing at least one instance of the top node, an instruction in the code block indicates to the scheduler to initiate at least one intermediary node. The scheduler schedules a thread for execution of the intermediary node. The data for the nodes resides in a plurality of data buffers; the index to the data buffer is stored in a command buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 8/41 - Compilation

65.

BLAIZE

      
Serial Number 88627862
Status Registered
Filing Date 2019-09-23
Registration Date 2020-06-23
Owner BLAIZE, INC. ()
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; Downloadable computer software, namely, software for the creation, processing and streaming of graphs; Downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors

66.

BLAIZE

      
Serial Number 88604078
Status Registered
Filing Date 2019-09-04
Registration Date 2020-06-23
Owner BLAIZE, INC. ()
NICE Classes  ? 09 - Scientific and electric apparatus and instruments

Goods & Services

Computer hardware, namely, electronic circuits, computer chips and circuit boards for machine learning, deep learning, and vision processing; graph streaming data processors; Downloadable computer software, namely, software for the creation, processing and streaming of graphs; Downloadable computer software development tools, compiler software and electronic coding units for programming graph streaming data processors

67.

Reduction of a number of stages of a graph streaming processor

      
Application Number 16398567
Grant Number 11436045
Status In Force
Filing Date 2019-04-30
First Publication Date 2019-08-22
Grant Date 2022-09-06
Owner Blaize, Inc. (USA)
Inventor
  • Agarwal, Lokesh
  • Govindammagari, Sarvendra
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems and apparatuses for graph streaming processing system are disclosed. One system includes a plurality of graph streaming processors operative to process a plurality of threads, wherein the plurality of threads is organized as nodes. The system further includes a scheduler that includes a plurality of stages. Each stage includes a command parser operative to interpret commands within a corresponding input command buffer, an alternate command buffer, and a thread generator coupled to the command parser. The thread generator is operative to generate the plurality of threads, and dispatch the plurality of threads, where the processing of the plurality of thread for each stage includes storing write commands in the corresponding output command buffer or in the alternate command buffer.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 16/901 - IndexingData structures thereforStorage structures
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining

68.

Configurable scheduler in a graph streaming processing system

      
Application Number 16383614
Grant Number 11416282
Status In Force
Filing Date 2019-04-14
First Publication Date 2019-08-01
Grant Date 2022-08-16
Owner Blaize, Inc. (USA)
Inventor
  • Koneru, Satyaki
  • Cook, Val G.
  • Yin, Ke

Abstract

Systems, apparatuses and methods are disclosed for scheduling threads comprising of code blocks in a graph streaming processor (GSP) system. One system includes a scheduler for scheduling plurality of threads, the plurality of threads includes a set of instructions operating on the graph streaming processors of GSP system. The scheduler comprises a plurality of stages where each stage is coupled to an input command buffer and an output command buffer. A portion of the scheduler is implemented in hardware and comprises of a command parser operative to interpret commands within a corresponding input command buffer, a thread generator coupled to the command parser operate to generate the plurality of threads, and a thread scheduler coupled to the thread generator for dispatching the plurality of threads for operating on the plurality of graph streaming processors.

IPC Classes  ?

  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]

69.

Cascading of graph streaming processors

      
Application Number 16282464
Grant Number 11379262
Status In Force
Filing Date 2019-02-22
First Publication Date 2019-06-20
Grant Date 2022-07-05
Owner Blaize, Inc. (USA)
Inventor
  • Puppala, Venkata Ganapathi
  • Govindammagari, Sarvendra
  • Agarwal, Lokesh
  • Koneru, Satyaki

Abstract

Methods, systems and apparatuses for graph stream processing are disclosed. One apparatus includes a cascade of graph streaming processors, wherein each of the graph streaming processor includes a processor array, and a graph streaming processor scheduler. The cascade of graph streaming processors further includes a plurality of shared command buffers, wherein each shared command buffer includes a buffer address, a write pointer, and a read pointer, wherein for each of the plurality of shared command buffers a first graph streaming processor writes commands to the shared command buffer as indicated by the write pointer of the shared command buffer and a second graph streaming processor reads commands from the shared command buffer as indicated by the read pointer, wherein at least one graph streaming processor scheduler operates to manage the write pointer and the read pointer to avoid overwriting unused commands of the shared command buffer.

IPC Classes  ?

  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 8/41 - Compilation
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead

70.

Accelerated operation of a graph streaming processor

      
Application Number 16270766
Grant Number 11150961
Status In Force
Filing Date 2019-02-08
First Publication Date 2019-06-06
Grant Date 2021-10-19
Owner Blaize, Inc. (USA)
Inventor
  • Agarwal, Lokesh
  • Govindammagari, Sarvendra
  • Puppala, Venkata Ganapathi
  • Koneru, Satyaki

Abstract

Methods, systems and apparatuses for graph processing are disclosed. One graph streaming processor includes a thread manager, wherein the thread manager is operative to dispatch operation of the plurality of threads of a plurality of thread processors before dependencies of the dependent threads have been resolved, maintain a scorecard of operation of the plurality of threads of the plurality of thread processors, and provide an indication to at least one of the plurality of thread processors when a dependency between the at least one of the plurality of threads that a request has or has not been satisfied. Further, a producer thread provides a response to the dependency when the dependency has been satisfied, and each of the plurality of thread processors is operative to provide processing updates to the thread manager, and provide queries to the thread manager upon reaching a dependency.

IPC Classes  ?

  • G06F 9/52 - Program synchronisationMutual exclusion, e.g. by means of semaphores
  • G06F 9/50 - Allocation of resources, e.g. of the central processing unit [CPU]
  • G06F 16/903 - Querying
  • G06F 9/38 - Concurrent instruction execution, e.g. pipeline or look ahead
  • G06F 9/48 - Program initiatingProgram switching, e.g. by interrupt
  • G06F 16/901 - IndexingData structures thereforStorage structures

71.

Node topology employing recirculating ring command and data buffers for executing thread scheduling

      
Application Number 15450959
Grant Number 10311542
Status In Force
Filing Date 2017-03-06
First Publication Date 2018-09-06
Grant Date 2019-06-04
Owner BLAIZE, INC. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

The claimed invention discloses system comprising a plurality of logical nodes comprised in a single or plurality of stages, with defined properties and resources associated with each node, for reducing compute resources, said system further comprising: at least a recirculating ring buffer holding only any one of a control information, input, and, or out data necessary to stream a temporary data between node and, or nodes in an execution graph, thereby reducing size of said recirculating ring buffer; said recirculating ring buffer being sufficiently reduced in size to reside in an on-chip cache, such that any one of the control information, input, and, or out data between node and, or nodes need not be stored in memory; wherein the control information further comprises a command related to invalidating any one of the input and, or out data held in a recirculating ring data buffer, clearing the buffer of tasked data; and wherein a producer is stalled from writing any more control information into a recirculating ring command buffer upon the buffer being full, preventing command buffer over-writing, and thereby reducing compute resources associated with a DRAM memory transaction.

IPC Classes  ?

72.

Mechanism for minimal computation and power consumption for rendering synthetic 3D images, containing pixel overdraw and dynamically generated intermediate images

      
Application Number 14327432
Grant Number 09589388
Status In Force
Filing Date 2014-07-09
First Publication Date 2017-03-07
Grant Date 2017-03-07
Owner BLAIZE, INC. (USA)
Inventor
  • Cook, Val G.
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

Embodiments disclosed include a mechanism in a system and method for significantly reducing power consumption by reducing computation and bandwidth. This mechanism is particularly applicable for modern 3D synthetic images which contain high pixel overdraw and dynamically generated intermediates images. Only blocks of computation which contribute to the final image are performed. This is accomplished by rendering in reverse order and by performing multiple visibility sort in a streaming fashion through the pipeline. Rendering of dynamically generated intermediate images is performed sparsely by projecting texture coordinates from a current image back into one or more dependent images in a recursive manner. The newly computed pixel values are then filtered and control is returned to the sampling shader of the current image. When only visible pixels are projected optimal computation is performed. Several implementations are presented with increasing efficiency. An acceleration structure, termed a Draw Buffer, simplifies the process of projecting backward and utilizes a hardware managed dynamic memory object. This mechanism reduces computation by 50%, with significant bandwidth and power savings.

IPC Classes  ?

73.

Selecting data of a server system for transmission

      
Application Number 15159000
Grant Number 09640150
Status In Force
Filing Date 2016-05-19
First Publication Date 2016-09-15
Grant Date 2017-05-02
Owner BLAIZE, INC. (USA)
Inventor
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

Methods, systems and apparatuses for selecting graphics data of a server system for transmission are disclosed. One method includes reading data from memory of the server system, checking if the data is being read for the first time, checking if the data was written by a processor of the server system during processing, comprising checking if the data is available on a client system or present in a transmit buffer, placing the data in the transmit buffer if the data is being read for the first time and was not written by the processor during the processing as determined by the checking if the data was written by the processor of the server system during processing, wherein if the data is being read for the first time and was written by the processor of the server system during processing the data is not placed in the transmit buffer.

IPC Classes  ?

  • G09G 5/395 - Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
  • G09G 5/36 - Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of individual graphic patterns using a bit-mapped memory
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 21/426 - Internal components of the client
  • H04N 21/434 - Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams or extraction of additional data from a video streamRemultiplexing of multiplex streamsExtraction or processing of SIDisassembling of packetised elementary stream
  • H04N 21/81 - Monomedia components thereof
  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
  • G06F 3/14 - Digital output to display device
  • H04N 21/236 - Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator ] into a video stream, multiplexing software data into a video streamRemultiplexing of multiplex streamsInsertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rateAssembling of a packetised elementary stream

74.

Processing of graphics data of a server system for transmission including multiple rendering passes

      
Application Number 14287036
Grant Number 09373152
Status In Force
Filing Date 2014-05-25
First Publication Date 2014-09-11
Grant Date 2016-06-21
Owner BLAIZE, INC. (USA)
Inventor
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar C.

Abstract

Methods, systems and apparatuses for selecting graphics data of a server system for transmission are disclosed. One method includes a plurality of graphic render passes, wherein one or more of the graphics render passes includes reading data from graphics memory of the server system. The data read from the graphics memory is placed in a transmit buffer if the data is being read for the first time, and was not written by a processor of the server system. One system includes a server system including graphics memory, a frame buffer and a processor. The server system is operable to read data from the graphics memory. The server system is operable to place the data in a transmit buffer if the data is being read for the first time, and was not written by the processor during rendering.

IPC Classes  ?

  • G06T 1/20 - Processor architecturesProcessor configuration, e.g. pipelining
  • G06F 3/14 - Digital output to display device
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 21/236 - Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator ] into a video stream, multiplexing software data into a video streamRemultiplexing of multiplex streamsInsertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rateAssembling of a packetised elementary stream
  • H04N 21/426 - Internal components of the client
  • H04N 21/434 - Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams or extraction of additional data from a video streamRemultiplexing of multiplex streamsExtraction or processing of SIDisassembling of packetised elementary stream
  • H04N 21/81 - Monomedia components thereof
  • G09G 5/36 - Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of individual graphic patterns using a bit-mapped memory
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

75.

Processing of graphics data of a server system for transmission

      
Application Number 13161547
Grant Number 08754900
Status In Force
Filing Date 2011-06-16
First Publication Date 2011-12-22
Grant Date 2014-06-17
Owner BLAIZE, INC. (USA)
Inventor
  • Koneru, Satyaki
  • Yin, Ke
  • Munagala, Dinakar

Abstract

Methods, systems and apparatuses for selecting graphics data of a server system for transmission are disclosed. One method includes reading data from graphics memory of the server system. The data read from the graphics memory is placed in a transmit buffer if the data is being read for the first time, and was not written by a processor of the server system. One system includes a server system including graphics memory, a frame buffer and a processor. The server system is operable to read data from the graphics memory. The server system is operable to place the data in a transmit buffer if the data is being read for the first time, and was not written by the processor during rendering.

IPC Classes  ?

  • G06F 13/00 - Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
  • G06F 15/00 - Digital computers in generalData processing equipment in general
  • G06T 1/00 - General purpose image data processing
  • G09G 5/36 - Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of individual graphic patterns using a bit-mapped memory
  • G09G 5/37 - Details of the operation on graphic patterns
  • G06F 15/16 - Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
  • G06F 13/28 - Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access, cycle steal