IP Library › Granted Patent US 7,844,630
Granted Patent B2
US 7,844,630 · App. 12/033,581 · Granted Nov 30, 2010

Method and structure for fast in-place transformation of standard full and packed matrix data formats

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,844,630
App. No.
12/033,581
Granted
Nov 30, 2010
Kind
B2
Abstract

A computerized method provides for an in-place transformation of matrix A data including a New Data Structure (NDS) format and a transformation T having a compact representation. The NDS represents data of the matrix A in a format other than a row major format or a column major format, such that the data for the matrix A is stored as contiguous sub matrices of size MB by NB in an order predetermined to provide the data for a matrix processing. The transformation T is applied to the MB by NB blocks, using an in-place transformation processing, thereby replacing data of the block A 1 with the contents of T(A 1 ).

Claims (40)

1. A computerized method for an in-place transformation of matrix data, said method comprising:

for a matrix A data stored in a New Data Structure (NDS) format and a transformation T having a compact representation, forming, using a processor on a computer, one or more sub matrix blocks A 1 of size MB by NB of said NDS format data, MB and NB comprising blocking parameters defining block sizes such that MB * NB lies between a size of an L1cache and an L2 cache on said computer, said NDS representing data of said matrix A in a format other than a row major format or a column major format, such that said data for said matrix A is stored as a matrix of contiguous sub matrices A 1 in an order predetermined to provide said data for a matrix processing; and

applying said transformation T to each said MB by NB block A 1 , using an in-place transformation processing, said in-place transformation processing thereby replacing data of said blocks A 1 with contents of T(A 1 ).

2. The method of claim 1 , wherein said NDS comprises sub matrices in a rectangular block (RB) format.

3. The method of claim 2 , wherein said RB format comprises a square block (SB) format.

4. The method of claim 1 , wherein said NDS comprises sub matrices in Square Block Packed (SBP) format.

5. The method of claim 1 , wherein said NDS comprises sub matrices in Register Block (ReB) format.

6. The method of claim 1 , wherein said NDS comprises sub matrices that fit into a given cache.

7. The method of claim 1 , wherein said data transformation comprises a matrix transposition of one or more given sub matrices.

8. The method of claim 1 , further comprising:

providing said transformed sub matrix block of data to be data for a matrix processing module.

9. The method of claim 8 , wherein said matrix processing module comprises a Dense Linear Algebra Factorization Algorithm (DLAFA) processing.

10. The method of claim 1 , wherein said matrix data is initially stored in said memory in a standard format comprising one of column major format and row major format, said method further comprising:

preliminarily converting in-place said matrix data from said standard format into said NDS format.

11. The method of claim 1 , further comprising:

selectively providing a signal to permit data to be written to a target location in memory without first retrieving data from said target location.

12. The method of claim 1 , as implemented by an entity providing consultation services.

13. A tangible signal bearing storage medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform a computerized method for an in-place transformation of matrix data according to claim 1 .

14. The signal bearing storage medium of claim 13 , as comprising one of:

a hard drive memory on a computer;

a RAM memory on a computer;

a storage device associated with a server; and

a standalone diskette of instructions to be inserted into a computer unit for loading said instruction onto said computer.

15. The signal bearing storage medium of claim 13 , wherein said NDS comprises at least one of:

a rectangular block (RB) format;

a Square Block format;

a Square Block Packed (SBP) format;

a Register Block (ReB) format; and

a sub matrix fitting into a cache.

16. An apparatus, comprising:

a memory to store matrix data; and

a processor,

wherein:

data for a matrix A is stored in said memory in a New Data Structure (NDS) format, said NDS representing data of said matrix A in a format other than a row major format or a column major format; and

said processor:

forms one or more sub matrix blocks A 1 of size MB by NB of said NDS format data such that said data for said matrix A is stored as a matrix of contiguous sub matrices A 1 in an order predetermined to provide said data for a matrix processing, wherein MB and NB comprise blocking parameters defining block sizes such that MB * NB lies between a size of an L1 cache and an L2 cache on said apparatus; and

applies said transformation T to said MB by NB block A 1 , using an in-place transformation processing, said in-place transformation thereby replacing data of said block A 1 with contents of T(A 1 ).

17. The apparatus of claim 16 , wherein said data transformation comprises a matrix transposition.

18. The apparatus of claim 16 , wherein said matrix data is initially stored in said memory in a standard format comprising one of column major format and row major format, said processor further converting in-place said matrix data from said standard format into said NDS format.

19. The apparatus of claim 16 , wherein a signal is selectively provided to permit a data write to a target location in memory without first retrieving data from said target location.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2008
From: GUSTAVSON, FRED GEHRUNG; GUNNELS, JOHN A.; SEXTON, JAMES C
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 020528/0548 →
Continuity (2)
Continuation In Part 1184927200 · Sep 1, 2007
Related Publication 20090063529A1 · Mar 5, 2009