How to estimate the size occupied by a concept?

How to estimate the size occupied by a concept?

book

Article ID: KB0091178

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition -
Not Applicable -

Description

Resolution:
Description:
============
How to estimate the size occupied by a concept?

Environment:
============
TIBCO BusinessEvents All versions

Resolution:
===========
The internal representation of the objects in the JVM heap will not always be the same size as what we'd expect them to be. For example, a Java String with 4 characters does not just take 4*2 bytes, but more in the actual heap. Such a "back of the envelope calculation" is always misleading.

There is no ready reckoner for sizing the heap. One reasonable way to ge a fair idea of the size of the objects is by following this (mildly inconvenient) procedure:

1). Use JDK6 for the Engines.

2). Create instances of the Events or Concepts, Concept graph (Contained and Reference), you are trying to and measure in the Engine.

3). Use JConsole or VisualVM to connect to the JVM.

4). Force a GC using the buttons provided in the tool.

5). Use jmap to issue a command that prints the object sizes in the heap
   jmap -histo:live &ltpid>

6). Write down the numbers. Extrapolate that to the actual number of instances.

7). Make sure that this test platform is similar to the target platform (32/64-bit).

References:
===========
http://wiki.tibco.com/BEWiki/ServerConfigAndTuning#sizing

Issue/Introduction

How to estimate the size occupied by a concept?