On Aug 24, 2009, at 5:42 AM, Steve Loughran wrote:

Raghu Angadi wrote:
Suresh had made an spreadsheet for memory consumption.. will check.
A large portion of NN memory is taken by references. I would expect memory savings to be very substantial (same as going from 64bit to 32bit), could be on the order of 40%. The last I heard from Sun was that compressed pointers will be in very near future JVM (certainly JDK 1.6_x). It can use compressed pointers upto 32GB of heap.

It's in JDK 1.6u14. Looking at the source and reading the specs implies there is savings, but we need to experiment to see. I now know how to do sizeof() in java, (in the instrumentation API), so these experiments are possible


Hey Steve,

I'm a bit dumb with Java (so this might be something you already know), but last week I discovered the "jhat" tool. You can dump the Java stack with JMX to a file, then use jhat to build a little webserver that allows you to explore your heap.

One page it provides is a table histogram of the instance counts and # of bytes per class.

This helped me a lot when I was trying to track memory leaks in libhdfs.

I would expect runtime over head on NN would be minimal in practice.


I think there's a small extra deref cost, but its very minimal; one 8 bit logical shift left, possibly also an addition. Both of which run at CPU-speeds, not main memory bus rates

One interesting tidbit (from my memory of a presentation 2 months ago... I might have the numbers wrong, but the general message is the same):

On petascale-level computers, the application codes' CPU instructions are about 10% floating point (that is, in scientific applications, there are less floating point instructions than in most floating point benchmarks). Of the remaining instructions, about 1/3 are memory- related and 2/3 are integer. Of the integer instructions, 40% are computing memory locations.

So, on the biggest DOE computers, about 50% of the CPU time is spent on memory-related computations. I found this pretty mind-boggling when I learned this. It seems to me that the "central" part of the computer is becoming the bus, not the CPU.

Brian


Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to