ipfs / kubo

An IPFS implementation in Go
https://docs.ipfs.tech/how-to/command-line-quick-start/
Other
16.14k stars 3.02k forks source link

Performance: ipfs add I/O (prefer serving data, be lazy) #3338

Open donothesitate opened 8 years ago

donothesitate commented 8 years ago

Version information:

go-ipfs version: 0.4.5-dev-634005a Repo version: 4 System version: amd64/linux Golang version: go1.7.1

Type: Enhancement

Area: Core, Daemon

Priority: P4

Description:

Improve performance of serving data by being low priority / lazy on ipfs add. Avoid daemon performance degradation when adding files to ipfs.

Way to implement, command line flags, defaults and tunables subject to discussion. Device detection could help deciding what and when to throttle.

rht commented 7 years ago

In the context of lazy evaluation, it is unclear how to delay adding/serving a subset of data, since in order to get the root hash, all the child nodes need to be hashed.

Edit: ic, this is meant for cpulimit-ing the ipfs add process itself, kind of like adjusting the nice number.