Annocat: e pluribus unum

ElectricAccelerator annotation files are a fantastic way to get a grip on your build behavior and performance, but what if your Build (capital B) spans more than one invocation of emake? Annotation gives you a good look inside any single invocation, but there's no way to get an overview of...

Delta: the coolest tool you’ve never heard of

One of the challenges that any developer faces is finding a small test case that reproduces a defect reported by users. That's often easier said than done: when the defect originally shows up during parsing of a makefile consisting of 20,000 lines of nested calls to $(eval), separating the interesting...

Makefile performance: pattern-specific variables

If you've been using GNU make for some time, you are probably familiar with both pattern rules and target-specific variables. You may even be familiar with the intersection of these features: pattern-specific variables. But you may not be aware of a subtle change in gmake 3.81 which affects the processing...

Data Mining ElectricAccelerator Annotation: Bill of Materials

ElectricAccelerator annotation files contain a gold mine of information about your build, such as the dependencies between jobs in the build, the time required to run each job, the exact command-line and environment used to invoke each command in the build, and even every file read and written by each...

Makefile performance: $(shell)

One rookie performance mistake I've seen in GNU make makefiles is the use of $(shell) without := assignment. Of course I'm not the first person to write about this, but people are still making this mistake, and it's so easy to fix, it's really tragic that it's still out there....

Measuring ElectricAccelerator Cache Efficiency

Somebody asked me the other day, "How much does the ElectricAccelerator filesystem cache reduce I/O load on my build host?" This is an interesting question, because in some cases, the impact of Accelerator caching is a big part of the performance benefit. Consider the case of ClearCase dynamic views, which...

ElectricAccelerator vs. distcc, round 3: samba

In this continuation of the ElectricAccelerator vs. distcc battle royale, I'll compare the performance of these two tools when building samba, a suite of tools that provide file and print services to Windows clients from Unix-like servers. Samba is a particularly interesting package for this comparison because distcc was originally...

ElectricAccelerator vs. distcc, round 2: MySQL

Previously we have compared the performance of ElectricAccelerator and distcc when building the Linux 2.6 kernel. In what I hope will be the first of several followups, I will repeat the experiment with different software packages, to determine whether that result was a one-off, or whether ElectricAccelerator really is consistently...

Follow me

Eric Melski

Eric Melski was part of the team that founded Electric Cloud and is now Chief Architect. Before Electric Cloud, he was a Software Engineer at Scriptics, Inc. and Interwoven. He holds a BS in Computer Science from the University of Wisconsin. Eric also writes about software development at http://blog.melski.net/.
Follow me

Subscribe

Subscribe via RSS
Click here to subscribe to the Electric Cloud Blog via RSS
Subscribe to Blog via Email
Enter your email address to subscribe to this blog and receive notifications of new posts by email.