Skip to content

Perform straggler-resilient matrix multiplication using error-correcting-codes on AWS Lambda in the Pywren and Numpywren framework

Notifications You must be signed in to change notification settings

vipgupta/serverless-straggler-mitigation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

Serverless Straggler Mitigation

Matrix multiplication for serverless cloud computing with built-in straggler mitigation techniques. Running these files would require the pywren (http://pywren.io/) and the numpywren (https://github.com/Vaishaal/numpywren) packages to be installed.

What is this?

In large scale distributed computing jobs, a small fraction (~2% on AWS Lambda) of workers — referred to as stragglers — take significantly longer than the median job time to finish.

We provide an implementation of matrix-matrix multiplication, which is an atomic operation in many high performance computing and machine learning applications (e.g., Kernel Ridge Regression, Alternating Least Squares, SVD), using two different straggler mitigation techniques:

Interface

The matrix multiplication abstractions are in the gemm_coded and gemm_recompute functions inside matrix-matrix/compute.py. All straggler mitigation is handled behind the scenes, so that these functions can be used as black boxes: pass in your matrices, and get back the product.

Tests and Examples

We provide a brief Jupyter Notebook containing a suite of test cases, which also serve as examples, inside matrix-matrix/Tests.ipynb.

About

Perform straggler-resilient matrix multiplication using error-correcting-codes on AWS Lambda in the Pywren and Numpywren framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published