Yes, this is exactly the behavior I was expecting.

14Mb is your actual memory footprint, the rest is waste due to the JVMs
aggressive memory retention policy.  See my earlier comment about trying
the G1 garbage collector and these:
https://twitter.com/gtrakGT/status/402569842361790464
http://www.stefankrause.net/wp/?p=14

Somewhere there was a java bug reported that explicitly blamed the CMS
collector, I can't find it at the moment, but that is the default collector
in -server mode.


On Thu, Jan 9, 2014 at 8:33 PM, gvim <gvi...@gmail.com> wrote:

> Gary
>
> Pressing "Perform GC" reduced the Used Heap figures to 14Mb and 13Mb but I
> now see these climbing to new heights while the app is completely idle. JVM
> and main are now both using 75Mb each and climbing. This does not inspire
> confidence for an app which is sitting idle.
>
> gvim
>
>
>
> On 09/01/2014 06:27, Gary Trakhman wrote:
>
>> what happens to the heap if you manually trigger a GC via the button?
>>
>>
>> On Thu, Jan 9, 2014 at 12:01 AM, gvim <gvi...@gmail.com
>> <mailto:gvi...@gmail.com>> wrote:
>>
>>     Here's the date from `jvisualvm`:
>>
>>     JVM:
>>         char[]  19%
>>         java.lang.object   15.5%
>>         java.util.TreeMap$Entry  12%
>>         java.io.ObjectStreamClass$__WeakClassKey   11%
>>
>>         byte[]    11%
>>         int[]   6%
>>
>>     main:
>>         char[]   24%
>>         byte[]   17%
>>         java.lang.object   14%
>>         java.util.TreeMap$Entry  10%
>>         java.io.ObjectStreamClass$__WeakClassKey   10%
>>
>>         int[]   6%
>>
>>
>>     Heap size: 366Mb
>>     Used heap: 85Mb
>>
>>     gvim
>>
>>
>>
>>     On 09/01/2014 04:32, Gary Trakhman wrote:
>>
>>         you're still missing some basics about java memory management.  In
>>         another thread, I mentioned the java VM will take more memory
>>         than it
>>         needs, that is because it prioritizes throughput over footprint.
>>           There
>>         are knobs for all of that.  It's not clear what's taking so much
>>         memory,
>>         but it's certainly not luminus or clojure.  Use jvisualVM to
>>         find out
>>         for sure instead of comparing apples to oranges.
>>
>>
>>         On Wed, Jan 8, 2014 at 4:24 PM, gvim <gvi...@gmail.com
>>         <mailto:gvi...@gmail.com>
>>         <mailto:gvi...@gmail.com <mailto:gvi...@gmail.com>>> wrote:
>>
>>              On OS X Mountain Lion I just compared the memory footprint
>> of 3
>>              out-of-the-box web apps in these frameworks:
>>
>>              Clojure/Luminus:  152Mb (JVM) + 186Mb (main) = 338Mb
>>
>>              Ruby/Rails: 62Mb
>>
>>              Elixir (Erlang)/Weber: 32Mb
>>
>>              I was rather shocked, to say the least. Not to troll, it
>>         has made me
>>              think again about deploying Clojure web apps on hosting
>>         platforms
>>              with modest amounts RAM. I'm sure the figures for all 3 would
>>              increase significantly once the web apps are fleshed out
>>         but that
>>              probably applies equally to all 3 frameworks.
>>
>>              gvim
>>
>>
>>              --
>>              --
>>              You received this message because you are subscribed to the
>>         Google
>>              Groups "Clojure" group.
>>              To post to this group, send email to
>>         clojure@googlegroups.com <mailto:clojure@googlegroups.com>
>>              <mailto:clojure@googlegroups.__com
>>
>>         <mailto:clojure@googlegroups.com>>
>>
>>              Note that posts from new members are moderated - please be
>>         patient
>>              with your first post.
>>              To unsubscribe from this group, send email to
>>              clojure+unsubscribe@__googlegr__oups.com
>>         <http://googlegroups.com>
>>              <mailto:clojure%2Bunsubscribe@__googlegroups.com
>>         <mailto:clojure%252bunsubscr...@googlegroups.com>>
>>
>>
>>              For more options, visit this group at
>>         http://groups.google.com/____group/clojure?hl=en
>>         <http://groups.google.com/__group/clojure?hl=en>
>>
>>
>>              <http://groups.google.com/__group/clojure?hl=en
>>         <http://groups.google.com/group/clojure?hl=en>>
>>              --- You received this message because you are subscribed to
>> the
>>              Google Groups "Clojure" group.
>>              To unsubscribe from this group and stop receiving emails
>>         from it,
>>              send an email to clojure+unsubscribe@__googlegr__oups.com
>>         <http://googlegroups.com>
>>              <mailto:clojure%2Bunsubscribe@__googlegroups.com
>>         <mailto:clojure%252bunsubscr...@googlegroups.com>>.
>>              For more options, visit
>>         https://groups.google.com/____groups/opt_out
>>         <https://groups.google.com/__groups/opt_out>
>>
>>              <https://groups.google.com/__groups/opt_out
>>         <https://groups.google.com/groups/opt_out>>.
>>
>>
>>
>>         --
>>         --
>>         You received this message because you are subscribed to the Google
>>         Groups "Clojure" group.
>>         To post to this group, send email to clojure@googlegroups.com
>>         <mailto:clojure@googlegroups.com>
>>         Note that posts from new members are moderated - please be
>>         patient with
>>         your first post.
>>         To unsubscribe from this group, send email to
>>         clojure+unsubscribe@__googlegroups.com
>>         <mailto:clojure%2bunsubscr...@googlegroups.com>
>>         For more options, visit this group at
>>         http://groups.google.com/__group/clojure?hl=en
>>         <http://groups.google.com/group/clojure?hl=en>
>>         ---
>>         You received this message because you are subscribed to the Google
>>         Groups "Clojure" group.
>>         To unsubscribe from this group and stop receiving emails from
>>         it, send
>>         an email to clojure+unsubscribe@__googlegroups.com
>>         <mailto:clojure%2bunsubscr...@googlegroups.com>.
>>         For more options, visit
>>         https://groups.google.com/__groups/opt_out
>>         <https://groups.google.com/groups/opt_out>.
>>
>>
>>     --
>>     --
>>     You received this message because you are subscribed to the Google
>>     Groups "Clojure" group.
>>     To post to this group, send email to clojure@googlegroups.com
>>     <mailto:clojure@googlegroups.com>
>>     Note that posts from new members are moderated - please be patient
>>     with your first post.
>>     To unsubscribe from this group, send email to
>>     clojure+unsubscribe@__googlegroups.com
>>     <mailto:clojure%2bunsubscr...@googlegroups.com>
>>     For more options, visit this group at
>>     http://groups.google.com/__group/clojure?hl=en
>>     <http://groups.google.com/group/clojure?hl=en>
>>     --- You received this message because you are subscribed to the
>>     Google Groups "Clojure" group.
>>     To unsubscribe from this group and stop receiving emails from it,
>>     send an email to clojure+unsubscribe@__googlegroups.com
>>     <mailto:clojure%2bunsubscr...@googlegroups.com>.
>>     For more options, visit https://groups.google.com/__groups/opt_out
>>     <https://groups.google.com/groups/opt_out>.
>>
>>
>> --
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> ---
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send
>> an email to clojure+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
> --
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> --- You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to