SlideShare a Scribd company logo
1 of 32
Download to read offline
A1
A2
A3
A4 

Tall-and-skinny !
QRs and SVDs in
MapReduce



David F. Gleich!
Computer Science!
Purdue University!
David Gleich · Purdue 
 Simons PDAIO

1

Yangyang Hou "
Joe Nichols – U. of Minn
Purdue, CS
James Demmel "
Austin Benson "
UC Berkeley
Stanford University
Joe Ruthruff "
Paul G. Constantine
Jeremy Templeton"
Col. School. Mines "
Sandia CA

Mainly funded by Sandia National Labs
CSAR project, recently by NSF CAREER,"
and Purdue Research Foundation.
David Gleich · Purdue 
 Simons PDAIO

2

Big "
simulation
data
Nonlinear heat transfer model in
random media

Apply heat

We did 8192 runs (128 samples of
bubble locations, 64 bubble radii)
4.5 TB of data in Exodus II (NetCDF)

https://www.opensciencedatacloud.org/
publicdata/heat-transfer/
David Gleich · Purdue 
 Simons PDAIO

3

Look at temperature

Each run takes 5 hours on 8 processors,
outputs 4M (node) by 9 (time-step) simulation
Non-insulator regime
1
True
ROM
RS

0.8
0.7
1

0.6
0.5

0.5
0.4

0
15

0.3

20

25

0.2
0.1
0
0

Insulator regime
10

20

30
40
Bubble radius

50

60

David Gleich · Purdue 
 Simons PDAIO

4

Proportion of temp. > 475 K
Proportion of temp. > 475 K

0.9
S

VT

Extract 128 x 128
face to laptop
A

U

UF

S

VT

5B-by-64 matrix
2.2TB
David Gleich · Purdue 
 Simons PDAIO

5

Each simulation is a column

SVD
Non-insulator regime
1
True
ROM
RS

0.8
0.7
1

0.6
0.5

0.5
0.4

0
15

0.3

20

25

0.2
0.1
0
0

Insulator regime
10

20

30
40
Bubble radius

50

60

David Gleich · Purdue 
 Simons PDAIO

6

Proportion of temp. > 475 K

0.9
(a) Error, s = 0.39 cm
. GLEICH, Y. HOU, AND J. TEMPLETON

20

(b) Std, s = 0.39 cm

P. G. CONSTANTINE, D. F. GLEICH, Y. HOU, AND J. TEMPLETON

imately 8-15 to the We collected precise timing information, but we do not report
model compared hours. prediction standard deubbleit as these at the finalfrom afor two values of
locations times are time multi-tenant, unoptimized Hadoop cluster Simons other
David Gleich · Purdue 
 where PDAIO

7

s

s
R(s, ⌧ )
¯
E(s, ⌧ )
¯
0.08
16
1.00e-04
0.23
15
2.00e-04
0.39
14
4.00e-04
59
error
std
std
202
error
0.55
13
206.00e-04
55
2
−1
10
51
1
1
10
0.70
13
8.00e-04
47
00
0
0
−1.5
0.86
12
1.10e-03
43
39
1.01
11
1.50e-03
(c) Error, s = 1.95 cm
(d) Std, s = 1.95 cm
(b) Std, s = 0.39 cm
−2
35
1.17
10
2.10e-03
31
Fig. 4.5: Error in the reduce order model compared to the prediction standard de27
1.33
9
3.10e-03
−2.5
viation for one realization of the bubble locations at the final time for two values of
23
1.48
8
4.50e-03
19
the bubble radius, s = 0.39 and s = 1.95−3
cm. (Colors are visible in the electronic
1.64
8
6.50e-03
15
version.)
11
1.79
7
8.20e-03
−3.5
7
1.95
7
1.07e-02
3
0
0.2
0.4
0.6
0.8
2.11
6
1.23e-02
τ
¯
error
std
20
the varying conductivity fields took approximately twenty minutes to construct using
20
2.26
6
1.39e-02
10 Cubit after substantial optimizations.
Fig. 4.4: The log of the relative10error in
0
Working with the simulation data involved Table 4.1: post-processing steps:
the mean prediction of the ROM0 as a func-a few pre- and The split and the correspond
interpret 4TB of Exodus II files from Aria, globally transpose the data, compute the
Constantine, Gleich,!
(d) the threshold ¯
tion of s and Std, s = 1.95 cm ⌧ . (Colors are ing ROM error for ⌧ = 0.55 and di↵eren
¯
TSSVD, and compute predictions and errors. The preprocessing steps took approxvisible in the electronic version.)
values of Hou & Templeton arXiv 2013.
s.
Dynamic Mode
Decomposition
One simulation, ~10TB of data, compute the
SVD of a space-by-time matrix.

David Gleich · Purdue 
 Simons PDAIO

8

DMD video
Is this BIG Data?

BIG Data has two properties



- too big for one hard drive



A


- ‘skewed’ distribution



BIG Data = “Big Internet Giant” Data

BIG Data = “Big In’Gineering” Data

David Gleich · Purdue 
 Simons PDAIO

9

“Engineering”
A matrix A : m × n, m ≥ n!
is tall and skinny when O(n2) !
work and storage is “cheap”
compared to m.

David Gleich · Purdue 
 Simons PDAIO

10

-- Austin Benson
  
is given by
the solution of   

Quick review of QR
Let A : m × n, (   ≥ n, real
orthogonal m
)
A = QR
Q is m × n orthogonal (QT Q = I )
upper n upper triangular
R is n × triangular.

A

=

Q

QR is block normalization
“normalize” a vector
usually generalizes to
computing    in the QR

0
R

MapReduce 2011

David Gleich · Purdue 
 Simons PDAIO

11

andia)

, real
Tall-and-skinny SVD and RSVD
R

  
SVD

Let A : m × n, m ≥ n, real
A = U𝞢VT

TSQR

U is m × n orthogonal 
Q

𝞢 is m × n nonneg, diag.
V is n × n orthogonal


David Gleich · Purdue 
 Simons PDAIO

12

A

V
There are good MPI
implementations.


David Gleich · Purdue 
 Simons PDAIO

13

What’s left to do?
David Gleich · Purdue 
 Simons PDAIO

14

Moving data to an MPI cluster
may be infeasible or costly
How to store tall-and-skinny
matrices in Hadoop
A1

A2

A3
A4 

David Gleich · Purdue 
 Simons PDAIO

15

A : m x n, m ≫ n

Key is an arbitrary row-id
Value is the 1 x n array "
for a row (or b x n block)

Each submatrix Ai is an "
the input to a map task.
Still, isn’t this easy to do? 
Current MapReduce algs use the normal equations
T

A = QR

A A


A1



A2
A3
A4 

Cholesky

T

!R R

Map!
Aii to AiTAi 

Reduce!
RTR = Sum(AiTAi)

Map 2!
Aii to Ai R-1


Q = AR

1

Two problems!

R inaccurate if A illconditioned

Q not numerically
orthogonal (House-"
holder assures this)

David Gleich · Purdue 
 Simons PDAIO

16
Numerical stability was a
problem for prior approaches
0

10

−5

AR-1

10

−10

10

−15

10

0

10

5

10

10

10

15

10

20

10

Condition number
David Gleich · Purdue 
 Simons PDAIO

17

Previous methods
couldn’t ensure
that the matrix Q
was orthogonal 

norm ( QTQ – I )

Prior work
Four things that are better
1.  A simple algorithm to compute R accurately.
(but doesn’t help get Q orthogonal).
2.  “Fast algorithm” to get Q numerically
orthogonal in most cases.
3.  Multi-pass algorithm to get Q numerically
orthogonal in virtually all cases.

Constantine & Gleich MapReduce 2011
Benson, Gleich & Demmel IEEE BigData 2013
David Gleich · Purdue 
 Simons PDAIO

18

4.  A direct algorithm for a numerically
orthogonal Q in all cases.
Numerical stability was a
problem for prior approaches
5

1. Constantine & Gleich,
MapReduce 2011

0

Prior work

10

AR-1

−5

10

2. Benson, Gleich,
Demmel, BigData’13

-1
AR + "
nt
refineme
iterative

−10

10

4. Direct TSQR
Benson, Gleich, "
Demmel, BigData’13

−15

10

0

10

5

10

10

10

15

10

Condition number

20
3. Benson, Gleich,
10
Demmel, BigData’13

David Gleich · Purdue 
 Simons PDAIO

19

Previous methods
couldn’t ensure
that the matrix Q
was orthogonal 

norm ( QTQ – I )

10
MapReduce is great for TSQR!!
You don’t need  ATA
Data A tall and skinny (TS) matrix by rows

Input 500,000,000-by-50 matrix"
Each record 1-by-50 row"
HDFS Size 183.6 GB

Time to compute read A 253 sec. write A 848 sec.!
Time to compute  R in qr(A) 526 sec. w/ Q=AR-1 1618 sec. "
Time to compute Q in qr(A) 3090 sec. (numerically stable)!

David Gleich · Purdue 
 Simons PDAIO

20
Communication avoiding QR
Communication avoiding TSQR
(Demmel et al. 2008)

Second, compute
a QR factorization
of the new “R”

21

First, do QR
factorizations
of each local
matrix   

Demmel et al.David Communicating avoiding Simons PDAIO
 QR.
2008. Gleich · Purdue 
 parallel and sequential
Serial QR factorizations!
Fully serialet al. 2008)
(Demmel TSQR

David Gleich · Purdue Simons PDAIO
Demmel et al. 2008. Communicating avoiding
parallel and sequential QR.

22

Compute QR of    ,
read    , update QR, …
Communication avoiding QR (Demmel et al. 2008) !
on MapReduce (Constantine and Gleich, 2011)
Algorithm
Data Rows of a matrix
A1
A2

A2

qr

Q2

R2
A3

A3

Map QR factorization of rows
Reduce QR factorization of rows
qr

Q3

A4

A4
A5

Serial TSQR

A6

qr

Q6

Serial TSQR

Q4

R4

emit

qr

Q8

R8

emit

R6
A7

A7

qr

Q7

R7

A8

A8

Reducer 1

qr

A5

A6
Mapper 2

R3

R4

R4

R8

R8

qr

Q

R

emit

David Gleich · Purdue 
 Simons PDAIO

23

Mapper 1
Serial TSQR

A1
Too many maps cause too
much data to one reducer!
map

emit

R4

R2,2

emit

Reducer 1-2
Serial TSQR

reduce

S3
A2

S(2)
A2

R2,3

shuffle

R3

S
A2

reduce

emit

identity map

S(1)

R2,1

Reducer 1-1
Serial TSQR

reduce

Mapper 1-3
Serial TSQR

map

A3
4

emit

Mapper 1-2
Serial TSQR

map

A3

R2

shuffle

A

S1

Mapper 1-1
Serial TSQR

map

A2

reduce

emit

R

emit

Reducer 2-1
Serial TSQR

emit

Reducer 1-3
Serial TSQR

emit

Mapper 1-4
Serial TSQR

Iteration 1

Iteration 2

David Gleich · Purdue 
 Simons PDAIO

24

A1

R1
David Gleich · Purdue 
 Simons PDAIO

25

Getting Q
Numerical stability was a
problem for prior approaches
5

1. Constantine & Gleich,
MapReduce 2011!

0

Prior work

10

AR-1

AR-1

−5

10

2. Benson, Gleich,
Demmel, BigData’13

-1
AR + "
nt
refineme
iterative

−10

10

4. Direct TSQR
Benson, Gleich, "
Demmel, BigData’13

−15

10

0

10

5

10

10

10

15

10

Condition number

20
3. Benson, Gleich,
10
Demmel, BigData’13

David Gleich · Purdue 
 Simons PDAIO

26

Previous methods
couldn’t ensure
that the matrix Q
was orthogonal 

norm ( QTQ – I )

10
Iterative refinement helps
Mapper 1
R-1
A1

A2

R
TSQR

R-1

Q2

Q3
Q4

T
TSQR

T

R

A4 

R-1

Q1

te
ribu
Dist

te
ribu
Dist

A3

R-1

Mapper 2
T-1
Q1

Q2

Q3
Q4 
A4

T-1

T-1

T-1

Q1

Q2

Q3
Q4

David Gleich · Purdue 
 Simons PDAIO

27

Iterative refinement is like using Newton’s method to solve Ax = b. It’s folklore that
“two iterations of iterative refinement are enough”
What if iterative refinement is
too slow?
Sample

Mapper 1
R-1
A1

S

A2

R-1

Q2

Q3
Q4

T
TSQR

TR

A4 

R-1

Q1

te
ribu
Dist

"
QR,
pute

Com ibute R
distr

A3

R-1

Mapper 2
R-1
 T-1
A1
Q1

A2

A3
A4 

R-1
 T-1

R-1
 T-1

R-1
 T-1

Q2

Q3
Q4

Based on recent work by “random matrix” community on approximating QR
with a random subset of rows. Also assumes that you can get a subset of
rows “cheaply” – possible, but nontrivial in Hadoop.
David Gleich · Purdue 
 Simons PDAIO

28

Estimate the “norm” by S
Numerical stability was a
problem for prior approaches
5

1. Constantine & Gleich,
MapReduce 2011

0

Prior work

10

AR-1

AR-1

−5

10

2. Benson, Gleich,
Demmel, BigData’13!

-1
AR + "
nt
refineme
iterative

−10

10

4. Direct TSQR
Benson, Gleich, "
Demmel, BigData’13

−15

10

0

10

5

10

10

10

15

10

Condition number

20
3. Benson, Gleich,
10
Demmel, BigData’13!

David Gleich · Purdue 
 Simons PDAIO

29

Previous methods
couldn’t ensure
that the matrix Q
was orthogonal 

norm ( QTQ – I )

10
Mapper 1

Q2

A3

Q3

A4 

Q4

R1

R2

R3

R4

R2

Q21

R3

Q31

R4

Q41

Mapper 3
Q11
Q1

Task 2
Q11
 R

2. Collect R on one
node, compute Qs
for each piece

Q output

A2

Q1

R output

A1

R1

3. Distribute the
pieces of Q*1 and
form the true Q

Q2

Q3
Q4

Q21

Q31

Q41

Q1

Q2

Q3
Q4

1. Output local Q and
R in separate files
David Gleich · Purdue 
 Simons PDAIO

30

Recreate Q by storing the
history of the factorization
Theoretical lower bound on runtime
for a few cases on our small cluster
R-only R-only
+ no IR
 + PIR

R-only
+ IR

Direct
TSQR

4.0B

4

1803

1821

1821

2343

2525

2.5B

10

1645

1655

1655

2062

2464

0.6B

25

804

812

812

1000

1237

50

1240

1250

1250

1517

2103

Cols

Old

R-only R-only
+ no IR
 + PIR

R-only
+ IR

Direct
TSQR

4.0B

4

2931

3460

3620

4741

6128

2.5B

10

2508

2509

3354

4034

4035

0.6B

25

1098

1104

1476

2006

1910

0.5B

50

921

1618

1960

2655

3090

All values in
seconds

Only two params
needed – read and
write bandwidth for
the cluster – in
order to derive a
performance model
of the algorithm.
This simple model
is almost within a
factor of two of the
true runtime. "
(10-node cluster,
60 disks)

David Gleich · Purdue 
 Simons PDAIO

31

Old

Rows

Actual

Cols

0.5B

Model

Rows
Papers


Constantine & Gleich, MapReduce 2011
Benson, Gleich & Demmel, BigData’13

Constantine & Gleich, ICASSP 2012
Constantine, Gleich, Hou & Templeton, "
arXiv 2013

Questions?


BIG

Bloody Imposing Graphs
Building Impressions of Groundtruth
Blockwise Independent Guesses



https://github.com/arbenson/mrtsqr

Best Implemented at Google


"

https://github.com/dgleich/simform
David Gleich · Purdue 
 Simons PDAIO

32

Code

More Related Content

Viewers also liked

A multithreaded method for network alignment
A multithreaded method for network alignmentA multithreaded method for network alignment
A multithreaded method for network alignmentDavid Gleich
 
Direct tall-and-skinny QR factorizations in MapReduce architectures
Direct tall-and-skinny QR factorizations in MapReduce architecturesDirect tall-and-skinny QR factorizations in MapReduce architectures
Direct tall-and-skinny QR factorizations in MapReduce architecturesDavid Gleich
 
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...Anti-differentiating approximation algorithms: A case study with min-cuts, sp...
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...David Gleich
 
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...David Gleich
 
Tall and Skinny QRs in MapReduce
Tall and Skinny QRs in MapReduceTall and Skinny QRs in MapReduce
Tall and Skinny QRs in MapReduceDavid Gleich
 
Anti-differentiating Approximation Algorithms: PageRank and MinCut
Anti-differentiating Approximation Algorithms: PageRank and MinCutAnti-differentiating Approximation Algorithms: PageRank and MinCut
Anti-differentiating Approximation Algorithms: PageRank and MinCutDavid Gleich
 
Gaps between the theory and practice of large-scale matrix-based network comp...
Gaps between the theory and practice of large-scale matrix-based network comp...Gaps between the theory and practice of large-scale matrix-based network comp...
Gaps between the theory and practice of large-scale matrix-based network comp...David Gleich
 
The power and Arnoldi methods in an algebra of circulants
The power and Arnoldi methods in an algebra of circulantsThe power and Arnoldi methods in an algebra of circulants
The power and Arnoldi methods in an algebra of circulantsDavid Gleich
 
Tall-and-skinny QR factorizations in MapReduce architectures
Tall-and-skinny QR factorizations in MapReduce architecturesTall-and-skinny QR factorizations in MapReduce architectures
Tall-and-skinny QR factorizations in MapReduce architecturesDavid Gleich
 
Spacey random walks and higher-order data analysis
Spacey random walks and higher-order data analysisSpacey random walks and higher-order data analysis
Spacey random walks and higher-order data analysisDavid Gleich
 
Relaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networksRelaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networksDavid Gleich
 
How does Google Google: A journey into the wondrous mathematics behind your f...
How does Google Google: A journey into the wondrous mathematics behind your f...How does Google Google: A journey into the wondrous mathematics behind your f...
How does Google Google: A journey into the wondrous mathematics behind your f...David Gleich
 
Fast relaxation methods for the matrix exponential
Fast relaxation methods for the matrix exponential Fast relaxation methods for the matrix exponential
Fast relaxation methods for the matrix exponential David Gleich
 
A dynamical system for PageRank with time-dependent teleportation
A dynamical system for PageRank with time-dependent teleportationA dynamical system for PageRank with time-dependent teleportation
A dynamical system for PageRank with time-dependent teleportationDavid Gleich
 
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...Vertex neighborhoods, low conductance cuts, and good seeds for local communit...
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...David Gleich
 
MapReduce for scientific simulation analysis
MapReduce for scientific simulation analysisMapReduce for scientific simulation analysis
MapReduce for scientific simulation analysisDavid Gleich
 
Higher-order organization of complex networks
Higher-order organization of complex networksHigher-order organization of complex networks
Higher-order organization of complex networksDavid Gleich
 
Personalized PageRank based community detection
Personalized PageRank based community detectionPersonalized PageRank based community detection
Personalized PageRank based community detectionDavid Gleich
 
Recommendation and graph algorithms in Hadoop and SQL
Recommendation and graph algorithms in Hadoop and SQLRecommendation and graph algorithms in Hadoop and SQL
Recommendation and graph algorithms in Hadoop and SQLDavid Gleich
 
Localized methods for diffusions in large graphs
Localized methods for diffusions in large graphsLocalized methods for diffusions in large graphs
Localized methods for diffusions in large graphsDavid Gleich
 

Viewers also liked (20)

A multithreaded method for network alignment
A multithreaded method for network alignmentA multithreaded method for network alignment
A multithreaded method for network alignment
 
Direct tall-and-skinny QR factorizations in MapReduce architectures
Direct tall-and-skinny QR factorizations in MapReduce architecturesDirect tall-and-skinny QR factorizations in MapReduce architectures
Direct tall-and-skinny QR factorizations in MapReduce architectures
 
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...Anti-differentiating approximation algorithms: A case study with min-cuts, sp...
Anti-differentiating approximation algorithms: A case study with min-cuts, sp...
 
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...
What you can do with a tall-and-skinny QR factorization in Hadoop: Principal ...
 
Tall and Skinny QRs in MapReduce
Tall and Skinny QRs in MapReduceTall and Skinny QRs in MapReduce
Tall and Skinny QRs in MapReduce
 
Anti-differentiating Approximation Algorithms: PageRank and MinCut
Anti-differentiating Approximation Algorithms: PageRank and MinCutAnti-differentiating Approximation Algorithms: PageRank and MinCut
Anti-differentiating Approximation Algorithms: PageRank and MinCut
 
Gaps between the theory and practice of large-scale matrix-based network comp...
Gaps between the theory and practice of large-scale matrix-based network comp...Gaps between the theory and practice of large-scale matrix-based network comp...
Gaps between the theory and practice of large-scale matrix-based network comp...
 
The power and Arnoldi methods in an algebra of circulants
The power and Arnoldi methods in an algebra of circulantsThe power and Arnoldi methods in an algebra of circulants
The power and Arnoldi methods in an algebra of circulants
 
Tall-and-skinny QR factorizations in MapReduce architectures
Tall-and-skinny QR factorizations in MapReduce architecturesTall-and-skinny QR factorizations in MapReduce architectures
Tall-and-skinny QR factorizations in MapReduce architectures
 
Spacey random walks and higher-order data analysis
Spacey random walks and higher-order data analysisSpacey random walks and higher-order data analysis
Spacey random walks and higher-order data analysis
 
Relaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networksRelaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networks
 
How does Google Google: A journey into the wondrous mathematics behind your f...
How does Google Google: A journey into the wondrous mathematics behind your f...How does Google Google: A journey into the wondrous mathematics behind your f...
How does Google Google: A journey into the wondrous mathematics behind your f...
 
Fast relaxation methods for the matrix exponential
Fast relaxation methods for the matrix exponential Fast relaxation methods for the matrix exponential
Fast relaxation methods for the matrix exponential
 
A dynamical system for PageRank with time-dependent teleportation
A dynamical system for PageRank with time-dependent teleportationA dynamical system for PageRank with time-dependent teleportation
A dynamical system for PageRank with time-dependent teleportation
 
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...Vertex neighborhoods, low conductance cuts, and good seeds for local communit...
Vertex neighborhoods, low conductance cuts, and good seeds for local communit...
 
MapReduce for scientific simulation analysis
MapReduce for scientific simulation analysisMapReduce for scientific simulation analysis
MapReduce for scientific simulation analysis
 
Higher-order organization of complex networks
Higher-order organization of complex networksHigher-order organization of complex networks
Higher-order organization of complex networks
 
Personalized PageRank based community detection
Personalized PageRank based community detectionPersonalized PageRank based community detection
Personalized PageRank based community detection
 
Recommendation and graph algorithms in Hadoop and SQL
Recommendation and graph algorithms in Hadoop and SQLRecommendation and graph algorithms in Hadoop and SQL
Recommendation and graph algorithms in Hadoop and SQL
 
Localized methods for diffusions in large graphs
Localized methods for diffusions in large graphsLocalized methods for diffusions in large graphs
Localized methods for diffusions in large graphs
 

Similar to Tall-and-Skinny SVDs and RSVDs in MapReduce

Big data matrix factorizations and Overlapping community detection in graphs
Big data matrix factorizations and Overlapping community detection in graphsBig data matrix factorizations and Overlapping community detection in graphs
Big data matrix factorizations and Overlapping community detection in graphsDavid Gleich
 
PageRank Centrality of dynamic graph structures
PageRank Centrality of dynamic graph structuresPageRank Centrality of dynamic graph structures
PageRank Centrality of dynamic graph structuresDavid Gleich
 
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...Austin Benson
 
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...Austin Benson
 
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.A non-stiff numerical method for 3D interfacial flow of inviscid fluids.
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.Alex (Oleksiy) Varfolomiyev
 
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsAnomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsCynthia Freeman
 
Spatially resolved pair correlation functions for point cloud data
Spatially resolved pair correlation functions for point cloud dataSpatially resolved pair correlation functions for point cloud data
Spatially resolved pair correlation functions for point cloud dataTony Fast
 
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdf
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdfreservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdf
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdfRTEFGDFGJU
 
A Fast Implicit Gaussian Curvature Filter
A Fast Implicit Gaussian Curvature FilterA Fast Implicit Gaussian Curvature Filter
A Fast Implicit Gaussian Curvature FilterYuanhao Gong
 
Design and Implementation of Variable Radius Sphere Decoding Algorithm
Design and Implementation of Variable Radius Sphere Decoding AlgorithmDesign and Implementation of Variable Radius Sphere Decoding Algorithm
Design and Implementation of Variable Radius Sphere Decoding Algorithmcsandit
 
Aghora A High-Order DG Solver for Turbulent Flow Simulations.pdf
Aghora  A High-Order DG Solver for Turbulent Flow Simulations.pdfAghora  A High-Order DG Solver for Turbulent Flow Simulations.pdf
Aghora A High-Order DG Solver for Turbulent Flow Simulations.pdfSandra Valenzuela
 
Surrey dl-4
Surrey dl-4Surrey dl-4
Surrey dl-4ozzie73
 
Comparison GUM versus GUM+1
Comparison GUM  versus GUM+1Comparison GUM  versus GUM+1
Comparison GUM versus GUM+1Maurice Maeck
 
Vu_HPSC2012_02.pptx
Vu_HPSC2012_02.pptxVu_HPSC2012_02.pptx
Vu_HPSC2012_02.pptxQucngV
 
2007 EuRad Conference: Speech on Rough Layers (ppt)
2007 EuRad Conference: Speech on Rough Layers (ppt)2007 EuRad Conference: Speech on Rough Layers (ppt)
2007 EuRad Conference: Speech on Rough Layers (ppt)Nicolas Pinel
 
2007 EuRad Conference: Speech on Rough Layers (odp)
2007 EuRad Conference: Speech on Rough Layers (odp)2007 EuRad Conference: Speech on Rough Layers (odp)
2007 EuRad Conference: Speech on Rough Layers (odp)Nicolas Pinel
 
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...EUBra BIGSEA
 

Similar to Tall-and-Skinny SVDs and RSVDs in MapReduce (20)

Big data matrix factorizations and Overlapping community detection in graphs
Big data matrix factorizations and Overlapping community detection in graphsBig data matrix factorizations and Overlapping community detection in graphs
Big data matrix factorizations and Overlapping community detection in graphs
 
PageRank Centrality of dynamic graph structures
PageRank Centrality of dynamic graph structuresPageRank Centrality of dynamic graph structures
PageRank Centrality of dynamic graph structures
 
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
 
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...
Direct QR factorizations for tall-and-skinny matrices in MapReduce architectu...
 
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.A non-stiff numerical method for 3D interfacial flow of inviscid fluids.
A non-stiff numerical method for 3D interfacial flow of inviscid fluids.
 
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsAnomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
 
COCOON14
COCOON14COCOON14
COCOON14
 
Spatially resolved pair correlation functions for point cloud data
Spatially resolved pair correlation functions for point cloud dataSpatially resolved pair correlation functions for point cloud data
Spatially resolved pair correlation functions for point cloud data
 
rgDefense
rgDefensergDefense
rgDefense
 
Modeling full scale-data(2)
Modeling full scale-data(2)Modeling full scale-data(2)
Modeling full scale-data(2)
 
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdf
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdfreservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdf
reservoir-modeling-using-matlab-the-matalb-reservoir-simulation-toolbox-mrst.pdf
 
A Fast Implicit Gaussian Curvature Filter
A Fast Implicit Gaussian Curvature FilterA Fast Implicit Gaussian Curvature Filter
A Fast Implicit Gaussian Curvature Filter
 
Design and Implementation of Variable Radius Sphere Decoding Algorithm
Design and Implementation of Variable Radius Sphere Decoding AlgorithmDesign and Implementation of Variable Radius Sphere Decoding Algorithm
Design and Implementation of Variable Radius Sphere Decoding Algorithm
 
Aghora A High-Order DG Solver for Turbulent Flow Simulations.pdf
Aghora  A High-Order DG Solver for Turbulent Flow Simulations.pdfAghora  A High-Order DG Solver for Turbulent Flow Simulations.pdf
Aghora A High-Order DG Solver for Turbulent Flow Simulations.pdf
 
Surrey dl-4
Surrey dl-4Surrey dl-4
Surrey dl-4
 
Comparison GUM versus GUM+1
Comparison GUM  versus GUM+1Comparison GUM  versus GUM+1
Comparison GUM versus GUM+1
 
Vu_HPSC2012_02.pptx
Vu_HPSC2012_02.pptxVu_HPSC2012_02.pptx
Vu_HPSC2012_02.pptx
 
2007 EuRad Conference: Speech on Rough Layers (ppt)
2007 EuRad Conference: Speech on Rough Layers (ppt)2007 EuRad Conference: Speech on Rough Layers (ppt)
2007 EuRad Conference: Speech on Rough Layers (ppt)
 
2007 EuRad Conference: Speech on Rough Layers (odp)
2007 EuRad Conference: Speech on Rough Layers (odp)2007 EuRad Conference: Speech on Rough Layers (odp)
2007 EuRad Conference: Speech on Rough Layers (odp)
 
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
 

More from David Gleich

Engineering Data Science Objectives for Social Network Analysis
Engineering Data Science Objectives for Social Network AnalysisEngineering Data Science Objectives for Social Network Analysis
Engineering Data Science Objectives for Social Network AnalysisDavid Gleich
 
Correlation clustering and community detection in graphs and networks
Correlation clustering and community detection in graphs and networksCorrelation clustering and community detection in graphs and networks
Correlation clustering and community detection in graphs and networksDavid Gleich
 
Spectral clustering with motifs and higher-order structures
Spectral clustering with motifs and higher-order structuresSpectral clustering with motifs and higher-order structures
Spectral clustering with motifs and higher-order structuresDavid Gleich
 
Non-exhaustive, Overlapping K-means
Non-exhaustive, Overlapping K-meansNon-exhaustive, Overlapping K-means
Non-exhaustive, Overlapping K-meansDavid Gleich
 
Using Local Spectral Methods to Robustify Graph-Based Learning
Using Local Spectral Methods to Robustify Graph-Based LearningUsing Local Spectral Methods to Robustify Graph-Based Learning
Using Local Spectral Methods to Robustify Graph-Based LearningDavid Gleich
 
Spacey random walks and higher order Markov chains
Spacey random walks and higher order Markov chainsSpacey random walks and higher order Markov chains
Spacey random walks and higher order Markov chainsDavid Gleich
 
Localized methods in graph mining
Localized methods in graph miningLocalized methods in graph mining
Localized methods in graph miningDavid Gleich
 
Iterative methods with special structures
Iterative methods with special structuresIterative methods with special structures
Iterative methods with special structuresDavid Gleich
 
Fast matrix primitives for ranking, link-prediction and more
Fast matrix primitives for ranking, link-prediction and moreFast matrix primitives for ranking, link-prediction and more
Fast matrix primitives for ranking, link-prediction and moreDavid Gleich
 
Sparse matrix computations in MapReduce
Sparse matrix computations in MapReduceSparse matrix computations in MapReduce
Sparse matrix computations in MapReduceDavid Gleich
 
Matrix methods for Hadoop
Matrix methods for HadoopMatrix methods for Hadoop
Matrix methods for HadoopDavid Gleich
 

More from David Gleich (11)

Engineering Data Science Objectives for Social Network Analysis
Engineering Data Science Objectives for Social Network AnalysisEngineering Data Science Objectives for Social Network Analysis
Engineering Data Science Objectives for Social Network Analysis
 
Correlation clustering and community detection in graphs and networks
Correlation clustering and community detection in graphs and networksCorrelation clustering and community detection in graphs and networks
Correlation clustering and community detection in graphs and networks
 
Spectral clustering with motifs and higher-order structures
Spectral clustering with motifs and higher-order structuresSpectral clustering with motifs and higher-order structures
Spectral clustering with motifs and higher-order structures
 
Non-exhaustive, Overlapping K-means
Non-exhaustive, Overlapping K-meansNon-exhaustive, Overlapping K-means
Non-exhaustive, Overlapping K-means
 
Using Local Spectral Methods to Robustify Graph-Based Learning
Using Local Spectral Methods to Robustify Graph-Based LearningUsing Local Spectral Methods to Robustify Graph-Based Learning
Using Local Spectral Methods to Robustify Graph-Based Learning
 
Spacey random walks and higher order Markov chains
Spacey random walks and higher order Markov chainsSpacey random walks and higher order Markov chains
Spacey random walks and higher order Markov chains
 
Localized methods in graph mining
Localized methods in graph miningLocalized methods in graph mining
Localized methods in graph mining
 
Iterative methods with special structures
Iterative methods with special structuresIterative methods with special structures
Iterative methods with special structures
 
Fast matrix primitives for ranking, link-prediction and more
Fast matrix primitives for ranking, link-prediction and moreFast matrix primitives for ranking, link-prediction and more
Fast matrix primitives for ranking, link-prediction and more
 
Sparse matrix computations in MapReduce
Sparse matrix computations in MapReduceSparse matrix computations in MapReduce
Sparse matrix computations in MapReduce
 
Matrix methods for Hadoop
Matrix methods for HadoopMatrix methods for Hadoop
Matrix methods for Hadoop
 

Recently uploaded

Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...liera silvan
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Dust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEDust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEaurabinda banchhor
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 

Recently uploaded (20)

YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
EmpTech Lesson 18 - ICT Project for Website Traffic Statistics and Performanc...
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Dust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSEDust Of Snow By Robert Frost Class-X English CBSE
Dust Of Snow By Robert Frost Class-X English CBSE
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 

Tall-and-Skinny SVDs and RSVDs in MapReduce

  • 1. A1 A2 A3 A4 Tall-and-skinny ! QRs and SVDs in MapReduce David F. Gleich! Computer Science! Purdue University! David Gleich · Purdue Simons PDAIO 1 Yangyang Hou " Joe Nichols – U. of Minn Purdue, CS James Demmel " Austin Benson " UC Berkeley Stanford University Joe Ruthruff " Paul G. Constantine Jeremy Templeton" Col. School. Mines " Sandia CA Mainly funded by Sandia National Labs CSAR project, recently by NSF CAREER," and Purdue Research Foundation.
  • 2. David Gleich · Purdue Simons PDAIO 2 Big " simulation data
  • 3. Nonlinear heat transfer model in random media Apply heat We did 8192 runs (128 samples of bubble locations, 64 bubble radii) 4.5 TB of data in Exodus II (NetCDF) https://www.opensciencedatacloud.org/ publicdata/heat-transfer/ David Gleich · Purdue Simons PDAIO 3 Look at temperature Each run takes 5 hours on 8 processors, outputs 4M (node) by 9 (time-step) simulation
  • 4. Non-insulator regime 1 True ROM RS 0.8 0.7 1 0.6 0.5 0.5 0.4 0 15 0.3 20 25 0.2 0.1 0 0 Insulator regime 10 20 30 40 Bubble radius 50 60 David Gleich · Purdue Simons PDAIO 4 Proportion of temp. > 475 K Proportion of temp. > 475 K 0.9
  • 5. S VT Extract 128 x 128 face to laptop A U UF S VT 5B-by-64 matrix 2.2TB David Gleich · Purdue Simons PDAIO 5 Each simulation is a column SVD
  • 6. Non-insulator regime 1 True ROM RS 0.8 0.7 1 0.6 0.5 0.5 0.4 0 15 0.3 20 25 0.2 0.1 0 0 Insulator regime 10 20 30 40 Bubble radius 50 60 David Gleich · Purdue Simons PDAIO 6 Proportion of temp. > 475 K 0.9
  • 7. (a) Error, s = 0.39 cm . GLEICH, Y. HOU, AND J. TEMPLETON 20 (b) Std, s = 0.39 cm P. G. CONSTANTINE, D. F. GLEICH, Y. HOU, AND J. TEMPLETON imately 8-15 to the We collected precise timing information, but we do not report model compared hours. prediction standard deubbleit as these at the finalfrom afor two values of locations times are time multi-tenant, unoptimized Hadoop cluster Simons other David Gleich · Purdue where PDAIO 7 s s R(s, ⌧ ) ¯ E(s, ⌧ ) ¯ 0.08 16 1.00e-04 0.23 15 2.00e-04 0.39 14 4.00e-04 59 error std std 202 error 0.55 13 206.00e-04 55 2 −1 10 51 1 1 10 0.70 13 8.00e-04 47 00 0 0 −1.5 0.86 12 1.10e-03 43 39 1.01 11 1.50e-03 (c) Error, s = 1.95 cm (d) Std, s = 1.95 cm (b) Std, s = 0.39 cm −2 35 1.17 10 2.10e-03 31 Fig. 4.5: Error in the reduce order model compared to the prediction standard de27 1.33 9 3.10e-03 −2.5 viation for one realization of the bubble locations at the final time for two values of 23 1.48 8 4.50e-03 19 the bubble radius, s = 0.39 and s = 1.95−3 cm. (Colors are visible in the electronic 1.64 8 6.50e-03 15 version.) 11 1.79 7 8.20e-03 −3.5 7 1.95 7 1.07e-02 3 0 0.2 0.4 0.6 0.8 2.11 6 1.23e-02 τ ¯ error std 20 the varying conductivity fields took approximately twenty minutes to construct using 20 2.26 6 1.39e-02 10 Cubit after substantial optimizations. Fig. 4.4: The log of the relative10error in 0 Working with the simulation data involved Table 4.1: post-processing steps: the mean prediction of the ROM0 as a func-a few pre- and The split and the correspond interpret 4TB of Exodus II files from Aria, globally transpose the data, compute the Constantine, Gleich,! (d) the threshold ¯ tion of s and Std, s = 1.95 cm ⌧ . (Colors are ing ROM error for ⌧ = 0.55 and di↵eren ¯ TSSVD, and compute predictions and errors. The preprocessing steps took approxvisible in the electronic version.) values of Hou & Templeton arXiv 2013. s.
  • 8. Dynamic Mode Decomposition One simulation, ~10TB of data, compute the SVD of a space-by-time matrix. David Gleich · Purdue Simons PDAIO 8 DMD video
  • 9. Is this BIG Data? BIG Data has two properties - too big for one hard drive A - ‘skewed’ distribution BIG Data = “Big Internet Giant” Data BIG Data = “Big In’Gineering” Data David Gleich · Purdue Simons PDAIO 9 “Engineering”
  • 10. A matrix A : m × n, m ≥ n! is tall and skinny when O(n2) ! work and storage is “cheap” compared to m. David Gleich · Purdue Simons PDAIO 10 -- Austin Benson
  • 11.    is given by the solution of    Quick review of QR Let A : m × n, (   ≥ n, real orthogonal m ) A = QR Q is m × n orthogonal (QT Q = I ) upper n upper triangular R is n × triangular. A = Q QR is block normalization “normalize” a vector usually generalizes to computing    in the QR 0 R MapReduce 2011 David Gleich · Purdue Simons PDAIO 11 andia) , real
  • 12. Tall-and-skinny SVD and RSVD R    SVD Let A : m × n, m ≥ n, real A = U𝞢VT TSQR U is m × n orthogonal Q 𝞢 is m × n nonneg, diag. V is n × n orthogonal David Gleich · Purdue Simons PDAIO 12 A V
  • 13. There are good MPI implementations. David Gleich · Purdue Simons PDAIO 13 What’s left to do?
  • 14. David Gleich · Purdue Simons PDAIO 14 Moving data to an MPI cluster may be infeasible or costly
  • 15. How to store tall-and-skinny matrices in Hadoop A1 A2 A3 A4 David Gleich · Purdue Simons PDAIO 15 A : m x n, m ≫ n Key is an arbitrary row-id Value is the 1 x n array " for a row (or b x n block) Each submatrix Ai is an " the input to a map task.
  • 16. Still, isn’t this easy to do? Current MapReduce algs use the normal equations T A = QR A A A1 A2 A3 A4 Cholesky T !R R Map! Aii to AiTAi Reduce! RTR = Sum(AiTAi) Map 2! Aii to Ai R-1 Q = AR 1 Two problems! R inaccurate if A illconditioned Q not numerically orthogonal (House-" holder assures this) David Gleich · Purdue Simons PDAIO 16
  • 17. Numerical stability was a problem for prior approaches 0 10 −5 AR-1 10 −10 10 −15 10 0 10 5 10 10 10 15 10 20 10 Condition number David Gleich · Purdue Simons PDAIO 17 Previous methods couldn’t ensure that the matrix Q was orthogonal norm ( QTQ – I ) Prior work
  • 18. Four things that are better 1.  A simple algorithm to compute R accurately. (but doesn’t help get Q orthogonal). 2.  “Fast algorithm” to get Q numerically orthogonal in most cases. 3.  Multi-pass algorithm to get Q numerically orthogonal in virtually all cases. Constantine & Gleich MapReduce 2011 Benson, Gleich & Demmel IEEE BigData 2013 David Gleich · Purdue Simons PDAIO 18 4.  A direct algorithm for a numerically orthogonal Q in all cases.
  • 19. Numerical stability was a problem for prior approaches 5 1. Constantine & Gleich, MapReduce 2011 0 Prior work 10 AR-1 −5 10 2. Benson, Gleich, Demmel, BigData’13 -1 AR + " nt refineme iterative −10 10 4. Direct TSQR Benson, Gleich, " Demmel, BigData’13 −15 10 0 10 5 10 10 10 15 10 Condition number 20 3. Benson, Gleich, 10 Demmel, BigData’13 David Gleich · Purdue Simons PDAIO 19 Previous methods couldn’t ensure that the matrix Q was orthogonal norm ( QTQ – I ) 10
  • 20. MapReduce is great for TSQR!! You don’t need  ATA Data A tall and skinny (TS) matrix by rows Input 500,000,000-by-50 matrix" Each record 1-by-50 row" HDFS Size 183.6 GB Time to compute read A 253 sec. write A 848 sec.! Time to compute  R in qr(A) 526 sec. w/ Q=AR-1 1618 sec. " Time to compute Q in qr(A) 3090 sec. (numerically stable)! David Gleich · Purdue Simons PDAIO 20
  • 21. Communication avoiding QR Communication avoiding TSQR (Demmel et al. 2008) Second, compute a QR factorization of the new “R” 21 First, do QR factorizations of each local matrix    Demmel et al.David Communicating avoiding Simons PDAIO QR. 2008. Gleich · Purdue parallel and sequential
  • 22. Serial QR factorizations! Fully serialet al. 2008) (Demmel TSQR David Gleich · Purdue Simons PDAIO Demmel et al. 2008. Communicating avoiding parallel and sequential QR. 22 Compute QR of    , read    , update QR, …
  • 23. Communication avoiding QR (Demmel et al. 2008) ! on MapReduce (Constantine and Gleich, 2011) Algorithm Data Rows of a matrix A1 A2 A2 qr Q2 R2 A3 A3 Map QR factorization of rows Reduce QR factorization of rows qr Q3 A4 A4 A5 Serial TSQR A6 qr Q6 Serial TSQR Q4 R4 emit qr Q8 R8 emit R6 A7 A7 qr Q7 R7 A8 A8 Reducer 1 qr A5 A6 Mapper 2 R3 R4 R4 R8 R8 qr Q R emit David Gleich · Purdue Simons PDAIO 23 Mapper 1 Serial TSQR A1
  • 24. Too many maps cause too much data to one reducer! map emit R4 R2,2 emit Reducer 1-2 Serial TSQR reduce S3 A2 S(2) A2 R2,3 shuffle R3 S A2 reduce emit identity map S(1) R2,1 Reducer 1-1 Serial TSQR reduce Mapper 1-3 Serial TSQR map A3 4 emit Mapper 1-2 Serial TSQR map A3 R2 shuffle A S1 Mapper 1-1 Serial TSQR map A2 reduce emit R emit Reducer 2-1 Serial TSQR emit Reducer 1-3 Serial TSQR emit Mapper 1-4 Serial TSQR Iteration 1 Iteration 2 David Gleich · Purdue Simons PDAIO 24 A1 R1
  • 25. David Gleich · Purdue Simons PDAIO 25 Getting Q
  • 26. Numerical stability was a problem for prior approaches 5 1. Constantine & Gleich, MapReduce 2011! 0 Prior work 10 AR-1 AR-1 −5 10 2. Benson, Gleich, Demmel, BigData’13 -1 AR + " nt refineme iterative −10 10 4. Direct TSQR Benson, Gleich, " Demmel, BigData’13 −15 10 0 10 5 10 10 10 15 10 Condition number 20 3. Benson, Gleich, 10 Demmel, BigData’13 David Gleich · Purdue Simons PDAIO 26 Previous methods couldn’t ensure that the matrix Q was orthogonal norm ( QTQ – I ) 10
  • 27. Iterative refinement helps Mapper 1 R-1 A1 A2 R TSQR R-1 Q2 Q3 Q4 T TSQR T R A4 R-1 Q1 te ribu Dist te ribu Dist A3 R-1 Mapper 2 T-1 Q1 Q2 Q3 Q4 A4 T-1 T-1 T-1 Q1 Q2 Q3 Q4 David Gleich · Purdue Simons PDAIO 27 Iterative refinement is like using Newton’s method to solve Ax = b. It’s folklore that “two iterations of iterative refinement are enough”
  • 28. What if iterative refinement is too slow? Sample Mapper 1 R-1 A1 S A2 R-1 Q2 Q3 Q4 T TSQR TR A4 R-1 Q1 te ribu Dist " QR, pute Com ibute R distr A3 R-1 Mapper 2 R-1 T-1 A1 Q1 A2 A3 A4 R-1 T-1 R-1 T-1 R-1 T-1 Q2 Q3 Q4 Based on recent work by “random matrix” community on approximating QR with a random subset of rows. Also assumes that you can get a subset of rows “cheaply” – possible, but nontrivial in Hadoop. David Gleich · Purdue Simons PDAIO 28 Estimate the “norm” by S
  • 29. Numerical stability was a problem for prior approaches 5 1. Constantine & Gleich, MapReduce 2011 0 Prior work 10 AR-1 AR-1 −5 10 2. Benson, Gleich, Demmel, BigData’13! -1 AR + " nt refineme iterative −10 10 4. Direct TSQR Benson, Gleich, " Demmel, BigData’13 −15 10 0 10 5 10 10 10 15 10 Condition number 20 3. Benson, Gleich, 10 Demmel, BigData’13! David Gleich · Purdue Simons PDAIO 29 Previous methods couldn’t ensure that the matrix Q was orthogonal norm ( QTQ – I ) 10
  • 30. Mapper 1 Q2 A3 Q3 A4 Q4 R1 R2 R3 R4 R2 Q21 R3 Q31 R4 Q41 Mapper 3 Q11 Q1 Task 2 Q11 R 2. Collect R on one node, compute Qs for each piece Q output A2 Q1 R output A1 R1 3. Distribute the pieces of Q*1 and form the true Q Q2 Q3 Q4 Q21 Q31 Q41 Q1 Q2 Q3 Q4 1. Output local Q and R in separate files David Gleich · Purdue Simons PDAIO 30 Recreate Q by storing the history of the factorization
  • 31. Theoretical lower bound on runtime for a few cases on our small cluster R-only R-only + no IR + PIR R-only + IR Direct TSQR 4.0B 4 1803 1821 1821 2343 2525 2.5B 10 1645 1655 1655 2062 2464 0.6B 25 804 812 812 1000 1237 50 1240 1250 1250 1517 2103 Cols Old R-only R-only + no IR + PIR R-only + IR Direct TSQR 4.0B 4 2931 3460 3620 4741 6128 2.5B 10 2508 2509 3354 4034 4035 0.6B 25 1098 1104 1476 2006 1910 0.5B 50 921 1618 1960 2655 3090 All values in seconds Only two params needed – read and write bandwidth for the cluster – in order to derive a performance model of the algorithm. This simple model is almost within a factor of two of the true runtime. " (10-node cluster, 60 disks) David Gleich · Purdue Simons PDAIO 31 Old Rows Actual Cols 0.5B Model Rows
  • 32. Papers Constantine & Gleich, MapReduce 2011 Benson, Gleich & Demmel, BigData’13 Constantine & Gleich, ICASSP 2012 Constantine, Gleich, Hou & Templeton, " arXiv 2013 Questions? BIG Bloody Imposing Graphs Building Impressions of Groundtruth Blockwise Independent Guesses https://github.com/arbenson/mrtsqr Best Implemented at Google " https://github.com/dgleich/simform David Gleich · Purdue Simons PDAIO 32 Code