{can anyone suggest me what values of Initial capacity and Load Factor of a hashmap, can Hold a maximum capacity,
My application is very bulk it when 170000 alarms are processed out of mem heap occurs, i was not allowed to increase my server heap size , since it reaches certain limit, only thing i can do is to increase the Hashmap capacity and check once more with my application...
I have tried using default (16,.75f)
have tried with (151,.6f)
also please tell me how to calculate the capacity that a hashmap can hold using these Initial capacity and load factor.
}
Thanks
regs
Mano
I doubt it is related to the java.util.HashMap itself, more likely the data that is contained in the HashMap.
170k items is not an unreasonable size for a HashMap.
Campbell Ritchie
Sheriff
Joined: Oct 13, 2005
Posts: 32717
4
posted
0
Welcome to JavaRanch.
There is nothing in the API about a maximum size, but I believe the actual size is always an exact power of 2. So your 170000 would actually be 524288. 2^18 is 262144, but 262144 * 0.6 < 170000, so it would double to 2^19 = 524288.
Given that it is backed by an Array with max size 2^31-1, or 2^30 when limited to powers of two. 2^19 still leaves plenty of room.
pooja jain
greenhorn
Ranch Hand
Joined: Jan 12, 2005
Posts: 213
posted
0
Campbell Ritchie wrote:Welcome to JavaRanch.
There is nothing in the API about a maximum size, but I believe the actual size is always an exact power of 2. So your 170000 would actually be 524288. 2^18 is 262144, but 262144 * 0.6 < 170000, so it would double to 2^19 = 524288.
So your 170000 would actually be 524288. 2^18 is 262144, but 262144 * 0.6 < 170000, so it would double to 2^19 = 524288.
why did you multiply by 0.6?
Given that it is backed by an Array with max size 2^31-1, or 2^30 when limited to powers of two. 2^19 still leaves plenty of room.
i am not getting the calculations.
:d
Campbell Ritchie
Sheriff
Joined: Oct 13, 2005
Posts: 32717
4
posted
0
pooja jain wrote: . . . why did you multiply by 0.6? . . .
Because in the earlier post it said
(151,.6f)
There is the 0.6.
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to
run our stuff on 16 servers instead of 3.