Adaptive Tile Matrix Representation for Large Scale Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional linear algebra algorithms and legacy matrix representations are not suitable for very large matrices, leading to poor memory utilization and processing performance, especially in big data applications that require matrix multiplication operations.

Innovation Solution

An adaptive tile matrix representation that uses variable-sized tiles with dynamic storage layouts, based on density estimates and a sophisticated cost model, to optimize matrix multiplication operations on multicore main-memory platforms, incorporating techniques like multidimensional data partitioning and indexing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional legacy matrix representations are used for very large matrices, then implementation simplicity is maintained, but memory utilization and processing performance deteriorate

Engineering Contradiction:
Improveprocessing performanceVSAvoiddata structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides large matrices into smaller tiles or blocks that can be processed independently. This segmentation allows the system to handle very large matrices by breaking them into manageable chunks, improving memory utilization and processing performance while maintaining implementation feasibility through systematic division.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to matrix representation by organizing data into tiles, blocks, and superblocks across multiple levels. This multi-dimensional organization transforms the conventional flat matrix structure into a hierarchical framework that optimizes memory access patterns and enables parallel processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If static sparse or dense format is used for matrices, then storage simplicity is maintained, but memory utilization deteriorates when data representation is not chosen wisely

Engineering Contradiction:
Improvememory utilizationVSAvoiddata representation flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic data representation that automatically adapts to the characteristics of different matrix regions. The system dynamically selects between sparse and dense formats based on local density thresholds, allowing optimal memory utilization for each tile while maintaining the ability to handle both sparse and dense matrices effectively.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies different storage formats to different regions of the matrix based on local density characteristics. High-density regions use dense storage while low-density regions use sparse storage, optimizing memory utilization locally throughout the entire matrix structure.

Inventive Principle:
Principle #3Local quality

3Productivity

If uniform tile size is used for matrix partitioning, then processing simplicity is maintained, but processing performance deteriorates due to poor cache locality

Engineering Contradiction:
Improveprocessing performanceVSAvoidpartitioning complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses variable tile sizes that adapt to local data characteristics and hardware cache constraints. Tiles are sized to optimize cache utilization based on their position and content, with larger tiles for dense regions and smaller tiles for sparse regions, improving processing performance while accounting for cache locality requirements.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent dynamically adjusts tile size parameters based on matrix density, cache size, and processing requirements. The system changes tile dimensions to optimize performance for different computational scenarios, transitioning from fixed uniform sizes to adaptive variable sizes that respond to runtime conditions.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If manual selection of data structures and algorithms is required, then optimization precision is maintained, but ease of operation deteriorates

Engineering Contradiction:
Improveexecution efficiencyVSAvoiduser burden
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent implements an automated system that performs data structure selection, tile partitioning, and algorithm optimization without requiring manual user input. The system automatically analyzes matrix characteristics, selects appropriate sparse or dense formats, determines optimal tile sizes, and chooses processing algorithms, enabling users to achieve optimized performance without expert knowledge.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent incorporates runtime feedback mechanisms that monitor processing performance and dynamically adjust data structures and algorithms. The system uses cost models and performance metrics to continuously optimize execution, adapting to actual runtime conditions rather than relying solely on static pre-computation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10061748B2Adaptive tile matrix representation and multiplication
Publication Date: 2018.08.28 SAP SE
  • US10061748B2 patent drawing
  • US10061748B2 patent drawing
  • US10061748B2 patent drawing

AI summary

According to some embodiments, matrix A data may be loaded into a temporary, unordered starting representation that contains coordinates and values for each element of matrix A. Z-curve ordering of matrix A may be performed to create a two-dimensional density map of matrix A by counting matrix elements that are contained in logical two-dimensional block cells of a given size. A quad-tree recursion may be executed on the two-dimensional density map structure in reduced Z-space to identify areas of different densities in the two dimensional matrix space. An adaptive tile matrix representation of input matrix A may then be created. According to some embodiments, an adaptive tile matrix multiplication operation may perform dynamic tile-granular optimization based on density estimates and a cost model.