Announcement

Collapse
No announcement yet.

Golang 1.10 Offers Many Smaller Changes, Restores NetBSD Support

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by AndyChow View Post

    Because managing memory can often wield speedups that are orders of magnitude faster than just not thinking about it. Modern business benefits from in-memory analytic, and careful memory management has shown practical speed increases from 1000x to 1000000x increase in execution of the same logical data manipulation.

    As for my initial comment, seems I didn't understand rust at all. Egg on my face, I'll take it.
    Sure, anytime you have a memory intensive application that benefits from caring about it - sure that makes sense.

    generating a web page? barely required - rendering a application interface and basic business logic - close to 0 benefit.

    (also, learning new things is always a good thing, no need for egg!)

    Comment


    • #12
      Originally posted by boxie View Post
      generating a web page? barely required - rendering a application interface and basic business logic - close to 0 benefit.
      small nitpick: for half-serious webserving you do care about memory and processing footprint. being able to serve orders of magnitude more clients does matter there.

      But there is a VERY large amount of applications where you are serving a site to like 1000 users at most (usually less than 100), internal management web-applications and such (that won't be accessed from outside the intranet of a the company) and there any performance of the server component is totally irrelevant as the main bottleneck is going to be the SQL queries to the database server.

      Comment


      • #13
        Originally posted by starshipeleven View Post
        small nitpick: for half-serious webserving you do care about memory and processing footprint. being able to serve orders of magnitude more clients does matter there.
        If you are worried about being slashdot'd (digg'd, reddit'd or whatever the most popular site currently is) then yeah - you want to make sure you can server the 000's of requests a second and you *do* care. and if you are caring that much, then you are very much trying to *not* generate the page on the fly, but serve it from a hot cache.

        Point taken though - it's more about scale vs engineering time.

        Then there is the argument of throwing more servers at the problem rather than expensive engineering time

        Comment


        • #14
          Originally posted by boxie View Post

          Sure, anytime you have a memory intensive application that benefits from caring about it - sure that makes sense.

          generating a web page? barely required - rendering a application interface and basic business logic - close to 0 benefit.

          (also, learning new things is always a good thing, no need for egg!)
          For practical business logic, a close friend of mine once converted a stochastic monte-carlo type simulation from Matlab to C. The result was that running the simulation went from taking 4-6 hours to 1-3 minutes. This was in the context of stochastic simulation of the evolution of actuarial reserves and liabilities over a dynamic economic model. So the capabilities went from running 1-2 simulations a day, to running a hundred simulations. And all that performance improvement had to do with actively thinking about memory management.

          As for the egg, part of learning means admitting ignorance, which I am glad to do when it is warranted.

          Comment


          • #15
            Originally posted by AndyChow View Post

            For practical business logic, a close friend of mine once converted a stochastic monte-carlo type simulation from Matlab to C. The result was that running the simulation went from taking 4-6 hours to 1-3 minutes. This was in the context of stochastic simulation of the evolution of actuarial reserves and liabilities over a dynamic economic model. So the capabilities went from running 1-2 simulations a day, to running a hundred simulations. And all that performance improvement had to do with actively thinking about memory management.

            As for the egg, part of learning means admitting ignorance, which I am glad to do when it is warranted.
            That's quite a decent speedup! avoiding memory copies and being smart about how you allocate can increase performance lots.

            Most of the time though my code is not bottlenecked on memory access.

            Every time I am wrong is a chance to learn something new - and I learn a lot :P

            Comment

            Working...
            X