compi: enhancing mpi based applications performance and scalability using run-time compression

36
CoMPI: Enhancing MPI based applications performance and scalability using run- time compression. Rosa Filgueira, David E.Singh, Alejandro Calderón and Jesús Carretero University Carlos III of Madrid.

Upload: miette

Post on 23-Feb-2016

29 views

Category:

Documents


0 download

DESCRIPTION

CoMPI: Enhancing MPI based applications performance and scalability using run-time compression. Rosa Filgueira, David E.Singh, Alejandro Calderón and Jesús Carretero University Carlos III of Madrid. Summary. Problem description Main objectives CoMPI Study of compression algorithms. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

CoMPI: Enhancing MPI based applications performance and

scalability using run-time compression.

Rosa Filgueira, David E.Singh, Alejandro Calderón and Jesús Carretero

University Carlos III of Madrid.

Page 2: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms. • Evaluation of CoMPI • Results• Conclusions

Page 3: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms. • Evaluation of CoMPI • Results• Conclusions

Page 4: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Problem description

Page 5: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Main objectives (1/2)

Reduce the communication transfer time for MPI.

Page 6: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Main objectives (2/2)

CoMPI: Optimization of MPI communications by using

compression.

• Compression in all MPI primitives.• Fit any MPI application.• Transparent to user.• Run-time compression.

• Studding of compression algorithms.• Selecting the best algorithm based on

message characteristics.

Page 7: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI

– How we have integrated compression into MPI– Set of compression algorithms proposed

• Study of compression algorithms. • Evaluation of CoMPI • Results• Conclusions

Page 8: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

MPICH architecture (1/2)

Page 9: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

MPICH architecture (2/2)

Page 10: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Compression of MPI Messages (1/2)

Page 11: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Compression of MPI Messages (2/2)

• Header in the exchanged message to inform:– Compression used or not, algorithm and length.

• All compression algorithms are included in a single Compression Library:– CoMPI can be easily updated .– New compression algorithms can be included .

Page 12: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Set of compression algorithms proposed (1/2)

Page 13: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Set of compression algorithms proposed (2/2)

Page 14: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms.

– Conclusion of compression study. • Evaluation of CoMPI • Results• Conclusions

Page 15: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (1/7)

• To select the most appropriated algorithm for each datatype based on:– Buffer size.– Redundancy level.

• To Increase the transmission speed by using compression depends on:– Number of bits sent.– Time required to compress.– Time required to decompress.

Speedup = Time _ Sent _Orig.Time _ Sent _Compr.+ time_compress.+ time_ decompr.

Page 16: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (2/7)

• For each algorithm, datatype, buffer size and redundancy level we will study theComplexity and Compression ratio.

Page 17: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (3/7)

Page 18: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (4/7)

• Integer dataset

Page 19: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (5/7)

• Floating-point dataset

Page 20: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (6/7)

• Double precision dataset WITHOUT pattern

Page 21: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Study of compression algorithms (7/7)

• Double precision WITH pattern: Data sequence 50001.0, 50003.0 , 50005.0 …

Page 22: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Conclusion of compression study

Page 23: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms. • Evaluation of CoMPI • Results• Conclusions

Page 24: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Evaluation of CoMPI

Page 25: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms. • Evaluation of CoMPI • Results

– Real Applications– Benchmarks

• Conclusions

Page 26: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Results (1/5)

• BISP3D:– Floating-point data.– Improves between x1.2 and x1.4 with LZO.

Page 27: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Results (2/5)

• PSRG:– Integer data.– Improves up to x2 with LZO.

Page 28: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Results (3/5)

• STEM-II:– Floating-point data.– Improves to x1.4 with LZO.

Page 29: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Results (4/5)

• IS :– Integer data. – Improves to x1.2 with LZO.– Rice obtains good results with 32 processes.

Page 30: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Results (5/5)

• LU:– Double precision.– No better performance. Only with 64 processes

by using FPC we obtain a speedup of x1.1

Page 31: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Summary

• Problem description• Main objectives• CoMPI• Study of compression algorithms. • Evaluation of CoMPI • Results• Conclusions

– Principal Conclusion .– On going.

Page 32: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Principal conclusions (1/2)

• New Compression library integrated into MPI using MPICH distribution CoMPI.

• CoMPI includes five different compression algorithms and compress all MPI primitives.

• Main characteristics: – Transparent for the users.– Fit any application without any change in it.

• We have evaluated CoMPI using:– Synthetic traces.– Real applications.

Page 33: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Principal conclusion (2/2)

• The results of evaluations demonstrated that in most of the cases, the compression:– Reduce the overall execution time.– Enhance the scalability.

• When compression is not appropriated:– Little performance degradation.

Page 34: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

On going (1/2)

Page 35: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

On going (2/2)

Page 36: CoMPI: Enhancing MPI based applications performance and scalability using run-time compression

Questions?