If I use any Java application like VisualVM to open a heap dump (hprof file), would I need more heap memory for VisualVM than hprof file size?
In my case, hprof is 4Gb file and VisualVM has 2 GB Heap size and it's fails to properly load HPROF file.
You don't need more heap memory for VisualVM than hprof file size. VisualVM does not load heap dump into JDK heap. It uses memory-mapped files instead. This way it can use a lot of memory even if the default Xmx for VisualVM is 256M.