filecoin-project / lotus

Reference implementation of the Filecoin protocol, written in Go
https://lotus.filecoin.io/
Other
2.85k stars 1.27k forks source link

Epic: Reducing the data transfer memory footprint on both client and miner #5680

Open raulk opened 3 years ago

raulk commented 3 years ago

It has been reported that the memory footprint of storing and retrieving data with Lotus scales with the size of the payload, and it stays high during the data transfer phases.

This is a meta-issue that tracks reports, the desired outcome, and related work taking place across the board.

Reports

Desired outcome

Work outline

This work outline will keep getting updated.

Legend

  • 🌑 Unstarted
  • 🚧 In progress
  • 👀 In review
  • ✅ Done

Reproducing the problem with a Testground test plan that involves data transfer

Real-world benchmarks to exercise throughput and memory footprint of go-data-transfer and go-graphsync in isolation

Fixes

TBD from discoveries above.

rjulius23 commented 3 years ago

What are the current benchmarks for memory usage for PreCommit1,2 and Commit phases ? For 1 sector ?

raulk commented 3 years ago

@rjulius23 this issue is concerned with data transfer. Could you please open a discussion with that question?

rjulius23 commented 3 years ago

Sure sorry :)

kernelogic commented 3 years ago

I support this improvement!