GithubHelp home page GithubHelp logo

Comments (10)

benmwatson avatar benmwatson commented on May 18, 2024 2

I have literally had in my Todo list app to update this documentation, and I ahve it started, but I keep postponing it. There are especially some newer features that need some explanation to effectively use.

Give me a week. I'll ping this again once I have a PR.

from microsoft.io.recyclablememorystream.

benmwatson avatar benmwatson commented on May 18, 2024 1

No PR yet, but you can see the branch so far: https://github.com/microsoft/Microsoft.IO.RecyclableMemoryStream/tree/docupdate

For now, I'm keeping it all in readme.md. If it really grows too large, I can split it up, but I'm hoping to keep it simple.

from microsoft.io.recyclablememorystream.

benmwatson avatar benmwatson commented on May 18, 2024 1

This has been addressed in PR #82

from microsoft.io.recyclablememorystream.

nycdotnet avatar nycdotnet commented on May 18, 2024

I have to echo that it would be interesting to read more about how/if the pools are eventually dealocated. We've been very happy so far with the performance of this library, and are using it to support very fast generation of binary blobs of varying sizes - most under 1 MB, but some in the 10s of MB. We have a memory utilization graph of one of our services like this.

image

The spikes are particularly large requests. An instance of our service jumping up to 2 GB RAM is fine, but it seems weird that the RAM would hang around for an hour if the steady state doesn't require it. I wonder if there might be a good strategy to have more control over shrinking the buffers after particularly big requests - because 99% of our requests don't need a large buffer, but for that 1%, it's nice. I am aware of the aggressive setting, but I don't want to completely deallocate everything all the time either. I'm not entirely sure why the memory shrunk when it did - that yellow request shrunk basically right away, the pink one was almost exactly an hour later, and the teal one was like 80 minutes. This is with .NET Core 3.1 latest on Linux/Docker in Kubernetes.

from microsoft.io.recyclablememorystream.

Mgamerz avatar Mgamerz commented on May 18, 2024

from microsoft.io.recyclablememorystream.

nycdotnet avatar nycdotnet commented on May 18, 2024

I would be willing to do a PR to write and add such docs if @benmwatson or someone else would be willing to chat about it on Skype or something.

Docs are tough on open source - I really appreciate that this library exists at all. Thanks very much to the maintainers!!

from microsoft.io.recyclablememorystream.

nycdotnet avatar nycdotnet commented on May 18, 2024

Please consider opening the PR as-is and give it a WIP label. I’ll take a look and give as good feedback as I can. Thanks!

from microsoft.io.recyclablememorystream.

nycdotnet avatar nycdotnet commented on May 18, 2024

hey this is a great start - I added some questions to your commit. No reason to break it up as part of this first pass. Thank you!!!

from microsoft.io.recyclablememorystream.

benmwatson avatar benmwatson commented on May 18, 2024

@nycdotnet and others, please see this PR: #82

from microsoft.io.recyclablememorystream.

nycdotnet avatar nycdotnet commented on May 18, 2024

Nice job - Thank you!

from microsoft.io.recyclablememorystream.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.