[ checkstyle-Feature Requests-3528859 ] Checkstyle on Enterprise Code and Multi-Core Processors

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[ checkstyle-Feature Requests-3528859 ] Checkstyle on Enterprise Code and Multi-Core Processors

SourceForge.net
Feature Requests item #3528859, was opened at 2012-05-22 08:58
Message generated for change (Comment added) made by scooper
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=397081&aid=3528859&group_id=29721

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Core Framework
Group: None
Status: Open
Priority: 5
Private: No
Submitted By: J.C. Hamlin (jchamlin)
Assigned to: Nobody/Anonymous (nobody)
Summary: Checkstyle on Enterprise Code and Multi-Core Processors

Initial Comment:
The performance of Checkstyle on our project is not acceptable. It raises the build time in Eclipse from 9 minutes to over 20 minutes when it is turned on.

Windows 7 Enterprise 64-bit
Java 1.6.0_31 64-bit
MyEclipse 9.1 64-bit (based on Eclipse 3.6)
Checkstyle Plugin version 5.5.0.201111092104
Workstation: 12GB RAM, W3680 processor (12 cores at 3.33GHz)

We have about 30 projects, 29 smaller ones which Checkstyle runs on quickly, but the largest is 984 packages, 9526 source files, 11,753 classes, 1,634,770 lines of code and uses 180 third-party jar files and it takes Checkstyle about 10 minutes to analyze that project. During the time Checkstyle is analyzing it the CPU utilization is around 8-10% so Checkstyle is using only one core of twelve cores.

When Checkstyle is enabled, it will build in sequence, and add over 10 minutes to the total build time in Eclipse (changing it from 9 minutes to over 20 minutes).

While it was analyzing the big project, it was using only 1/12th of the available horsepower (1 of 12 cores) of the workstation it was running on. When multiple-cores are available, Checkstyle needs to make use of multiple cores in order to reduce the time it takes to analyze large projects. We want Checkstyle on for all builds, and it should use all 12 cores available to it to reduce the analysis time.

Also requested in the Checkstyle plugin: see: https://sourceforge.net/tracker/?func=detail&aid=3528856&group_id=80344&atid=559497

----------------------------------------------------------------------

Comment By: Stephen (scooper)
Date: 2012-07-16 14:01

Message:
I'm unable to attach a file.
The patch can be downloaded here:
https://dl.dropbox.com/u/45460700/3528859.diff
It's a patch to Checkstyle 5.5 release.

----------------------------------------------------------------------

Comment By: Stephen (scooper)
Date: 2012-07-16 13:56

Message:
I've created a patch for this.
I'm not very happy with the patch because it uses a static ThreadLocal for
the LocalizedMessages, but the alternative of passing in the
LocalizedMessages to all the methods which needed it was very invasive.
I'll leave the decision of changing the method signatures to the maintainer
of this project.
I don't see how to attach a file. I'll poke around. Otherwise I'll post a
link where the patch can be downloaded.

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=397081&aid=3528859&group_id=29721

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Checkstyle-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/checkstyle-devel