Thus, in terms of GC Pause IntelliJ is comparatively better. On the other hand, IntelliJ’s average GC pause time is only 8 ms and max GC pause time is 270 ms. Apparently, Eclipse’s average GC pause time is 33 ms and max GC pause time is 340 ms. Since more objects were created, CPU consumption was also higher when using the IntelliJ IDE.ĭuring certain phases of garbage collection entire application is paused. For the entire run Eclipse created only 15.19 GB, where IntelliJ created 430.2 GB of objects. Eclipse IDE was creating objects at the rate of 2.41 MB/sec, whereas IntelliJ was creating objects are the rate of 69.65 MB/sec (which is like 29x more than Eclipse). We encourage you to look at the report:Īpparently Eclipse created very small number of objects when compared to IntelliJ. Below are the detailed analysis reports generated by the tool. Once our 1 hour and 45 minutes exercise was complete, we uploaded the garbage collection log file generated by both IDEs to GCeasy tool. Thus, to make apples to apples comparison we bumped up IntelliJ’s initial heap size to 256mb and max heap size to 1024mb. Whereas Eclipse initial heap size was set to 256mb and max heap size set to 1024mb. NOTE: By default, IntelliJ initial heap size is kept as 128mb and max heap size is set to 750mb. Xloggc:D:\\my_workspace\\logs\\intellij-gc.log disabledSchemes=""Īt the bottom of this file we added following arguments to enable garbage collection logs of the IntelliJ IDE. Its contents were looking like this: -Xms256m In folder where IntelliJ is installed you will notice file. Xloggc:D:\\my_workspace\\logs\\eclipse-gc.log Plugins/.86_64_1.1.400.v20160914-0716Īt the bottom of this file we added following arguments to enable garbage collection logs of the Eclipse IDE. Its contents were looking like this: -startup In the folder where Eclipse is installed there is eclipse.ini file. Garbage collection logs can be enabled by passing following JVM arguments:įor this exercise we used GCeasy tool to analyze garbage collection logs. Garbage collection activity can be studied by enabling Garbage Collection logs and using right tools to analyze Garbage collection logs. How to study Garbage Collection activity? Garbage collection activity would clearly show memory utilization pattern, object creation rate, object reclamation rate, Garbage collection pause time and other memory related details in nirvana. One of the best ways to study memory behavior of an application is to analyze garbage collection activity. We conducted exact same exercise in both Eclipse and IntelliJ IDE. It took us 1 hour and 45 minutes to do these activities. We were writing source code, compiling it, running unit tests to validate the behavior. In this project we created a JSP page, Manager class, DAO class which will write and read records from MySQL database. Thus, we ended up creating a simple Java project. To conduct this study effectively, we wanted to activate various features of the IDE. To conduct this study, we used Eclipse Java EE Oxygen Release Milestone 2(4.7.0 M2) and IntelliJ IDEA 2018.2.4 (Ultimate Edition). We thought it would be a fun exercise to study which IDE utilizes memory efficiently? There are lot of passionate discussion going in the social media, forums to declare the winner in this race. Eclipse and IntelliJ are the two competing IDEs in the industry.
0 Comments
Leave a Reply. |