Skip to content
This repository has been archived by the owner on Aug 12, 2020. It is now read-only.

Browser performance issue #187

Closed
Beanow opened this issue Sep 11, 2017 · 4 comments
Closed

Browser performance issue #187

Beanow opened this issue Sep 11, 2017 · 4 comments
Labels
P0 Critical: Tackled by core team ASAP

Comments

@Beanow
Copy link

Beanow commented Sep 11, 2017

In a very similar fashion to libp2p/js-libp2p-secio#92 I find that adding large files spends a huge amount of time garbage collecting buffers.

I.e. adding a 55MB file cost me about 20 seconds doing >10k GC runs on Firefox.

I'm in the process of narrowing down the culprit, but it seems to be the pull-block implementation used in the fixed size chunker.

@daviddias
Copy link
Contributor

@Beanow could you share an update of the results with the new pull-block?

@Beanow
Copy link
Author

Beanow commented Oct 14, 2017

@diasdavid pull-block 1.2.1 makes a huge difference.
As a test I added 5 large files, totaling 334MB.

pull-block 1.2.0

  • Takes minutes to complete
  • Firefox freezes regularly
  • Up to 15K garbage collection runs per file

pull-block 1.2.1

  • Took ~24 seconds
  • Some stutters, but no freezing
  • 2400 GC's total

A new install of IPFS does not bring it in yet though.
"pull-block": "^1.2.1" in the root package.json was required.

@daviddias daviddias added P0 Critical: Tackled by core team ASAP status/ready Ready to be worked and removed status/ready Ready to be worked labels Oct 17, 2017
@daviddias
Copy link
Contributor

Wowow! That is incredible. Thanks so much @Beanow!

@daviddias daviddias mentioned this issue Oct 20, 2017
3 tasks
@daviddias
Copy link
Contributor

Continuous on #190

@ghost ghost removed the status/ready Ready to be worked label Oct 20, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
P0 Critical: Tackled by core team ASAP
Projects
None yet
Development

No branches or pull requests

2 participants