PATENT CLAIM ANALYSIS

Application Number: 15924029
Application Type: Utility
Filing Date: 2018-03
Publication Date: 2018-07
Patent Classification: ["345", "506000"]

Abstract:
A method for optimization of machine learning (ML) workloads on a graphics processor unit (GPU). The method includes identifying a computation having a generic pattern commonly observed in ML processes. Hierarchical aggregation spanning a memory hierarchy of the GPU for processing is performed for the identified computation including maintaining partial output vector results in shared memory of the GPU. Hierarchical aggregation for vectors is performed including performing intra-block aggregation for multiple thread blocks of a partial output vector results on GPU global memory.

Claim (Index 20):
The apparatus of  claim 19 , wherein:\n the vector processor is configured to synchronize the vectors by determining that processing of all vectors within a block is finished before processing results are used to perform the intra-block aggregation for the multiple thread blocks of the vectors; the intra-block aggregations for the vectors reduces synchronization overhead; the sparse matrix comprises a compressed sparse row (CSR) matrix; the thread processor is configured to perform an intra-vector aggregation at a register level of the GPU, and to process threads within a vector to compute the partial output vector results in GPU registers, which are subsequently aggregated using a shuffle instruction; the vector processor is configured to process a vector of threads for a total of C rows, where C refers to a degree of coarsening; and for the input matrix comprising a dense matrix, the kernel processor is configured to perform a code generation technique that relies on unrolling to perform a majority of computations on GPU registers, the unrolling comprises each thread scaling elements of the input vector, aggregating the scaled elements into a local register as a partial result of the output vector, and once all assigned rows are processed, threads within each vector propagate their partial results in the local register to the global memory of the GPU.

Metadata:
- Claim Count in Document: 43.0
- Percentile: 90.0
- Lexical Diversity: 1.71698
- Patent Class: 345.0
- Transitional Phrase Type: open
- Component Type: 1
- Foreign Priority: False
- Related Applications: ['14813522', '15190073', '14580110', '14927428', '12569942']

Analysis Scores:
- 35 USC 101 Eligibility (BERT): 0.6155252248669564
- 35 USC 102 Novelty (BERT): 0.5324550004052628
- Combined Prediction Score: 0.6072182024207871
- Mean Citation Score: 209.00097800000003
- Max Citation Score: 368.76996
- Similarity Product: 361.0929967118455

Labels:
- Claim Label 101: 1
- Claim Label 102: 1
- Claim Label 103: 1
- Claim Label 112: 1
- Combined Label: 1
- Label 101 Adjusted: 1

Dataset: test