Memory allocation problem?

View: New views
3 Messages — Rating Filter:   Alert me  

Memory allocation problem?

by Eunseok, Kim :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.

Hi~ Im James Kim again.

 

I increased VmWare memory to 1024M, then the allocation of matrix was successful.

kaffe Xmx 1024m Benchmark 10000 1 works well.

Why does sablevm require larger memory than other jvm?

Is this related memory option?

I still dont know why sablevm does not work in 256M memory.

If anybody know it, then please let me know~

Have a nice day~

Thanks~

 

James


_______________________________________________
SableVM-user mailing list
SableVM-user@...
http://sablevm.org/lists/control/listinfo/sablevm-user

Re: Memory allocation problem?

by Etienne Gagnon :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi James,

SableVM uses a stop/copy collector.  This has advantages and drawbacks.

Main advantages:
- It is a precise collector.  All "unreachable" objects are collected.
  This is not always the case in Kaffe, for example.
- It doesn't suffer any Java heap memory fragmentation.  This means that
  a very long running process won't endup being unable to use available
  memory because it is too fragmented.

Main disadvantage:
- It only uses 50% of heap space, as it uses the other 50% as a target
  while copying objects during collection.
- It is not a hybrid/generational collector as Sun's one.

Now, SableVM can be compiled to use Carl Lebsack's generational
collector.  Unless I'm wrong, I think that all generations are collected
using a copying collector, so this won't necessarily solve your tight
space problem.  I'll let Carl discuss the matter, if you have additional
questions on this collector.

I am puzzled, though...  Don't you have more "virtual memory" than
physical memory (i.e. RAM)?  Usually, applications are limited by the
amount of available virtual space, not by RAM.

Etienne

Eunseok, Kim wrote:

> I increased VmWare memory to 1024M, then the allocation of matrix was
> successful.
>
> ‘ kaffe – Xmx 1024m Benchmark 10000 1 ’ works well.
>
> Why does sablevm require larger memory than other jvm?
>
> Is this related memory option?
>
> I still don ’ t know why sablevm does not work in 256M memory.
>
> If anybody know it, then please let me know~
--
Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/



_______________________________________________
SableVM-user mailing list
SableVM-user@...
http://sablevm.org/lists/control/listinfo/sablevm-user

signature.asc (264 bytes) Download Attachment

Re: Memory allocation problem?

by Carl Lebsack :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 6/1/06, Etienne Gagnon <egagnon@...> wrote:

> Hi James,
>
> SableVM uses a stop/copy collector.  This has advantages and drawbacks.
>
> Main advantages:
> - It is a precise collector.  All "unreachable" objects are collected.
>  This is not always the case in Kaffe, for example.
> - It doesn't suffer any Java heap memory fragmentation.  This means that
>  a very long running process won't endup being unable to use available
>  memory because it is too fragmented.
>
> Main disadvantage:
> - It only uses 50% of heap space, as it uses the other 50% as a target
>  while copying objects during collection.
> - It is not a hybrid/generational collector as Sun's one.
>
> Now, SableVM can be compiled to use Carl Lebsack's generational
> collector.  Unless I'm wrong, I think that all generations are collected
> using a copying collector, so this won't necessarily solve your tight
> space problem.  I'll let Carl discuss the matter, if you have additional
> questions on this collector.
>

Etienne is correct.  The generational collector still employs copying
for the mature space (majority of the heap) and will not provide
substantially more allocation space than the original copying
collector.

No VM should be able to run your example with a 10,000x10,000 matrix
in 256MB as the matrix alone would be ~400MB.  Kaffe uses a mark-sweep
collector and should be able to run with slightly larger than the
400MB (slightly is not a precise term ;-) ).  SableVM should require
more than 800MB to run this test case due to the copying collector
(only half the heap is used at a time).  The generational variant will
provide no additional advantage for this benchmark.

What exactly are you trying to measure with your benchmark?

Carl Lebsack

> I am puzzled, though...  Don't you have more "virtual memory" than
> physical memory (i.e. RAM)?  Usually, applications are limited by the
> amount of available virtual space, not by RAM.
>
> Etienne
>
> Eunseok, Kim wrote:
> > I increased VmWare memory to 1024M, then the allocation of matrix was
> > successful.
> >
> > ' kaffe – Xmx 1024m Benchmark 10000 1 ' works well.
> >
> > Why does sablevm require larger memory than other jvm?
> >
> > Is this related memory option?
> >
> > I still don ' t know why sablevm does not work in 256M memory.
> >
> > If anybody know it, then please let me know~
>
> --
> Etienne M. Gagnon, Ph.D.            http://www.info2.uqam.ca/~egagnon/
> SableVM:                                       http://www.sablevm.org/
> SableCC:                                       http://www.sablecc.org/
>
>
>
> _______________________________________________
> SableVM-user mailing list
> SableVM-user@...
> http://sablevm.org/lists/control/listinfo/sablevm-user
>
>
>
>

_______________________________________________
SableVM-user mailing list
SableVM-user@...
http://sablevm.org/lists/control/listinfo/sablevm-user
LightInTheBox - Buy quality products at wholesale price!