Benchmarking Drupal

This group should probably have more organizers. See documentation on this recommendation.

Sure, Benchmarks have their drawbacks. But they are very useful for certain types of testing. For example we can do a standard stresstest on the latest stable version of Drupal versus CVS and see where we have to gain speedwise. Or see the influence of modules and or themes on the speed of Drupal. And we can use it as well "against" other CMS'es.

Lets first come up with a standard scenario for testing that can be ported in time an place on different hardware and OS. Once we have established that we must make some decisions on standard ways of reporting and how to communicate to whom. Some reports might be for the developers, others for marketing.

BTW: if you don’t see two dolphins jumping out of the water, you are a bit stressed yourself and should consider helping out here. So how about it, do /you/ want to join?

DrupalCon Amsterdam 2014 - Performance sessions

Hi High Performance,

I totally forgot to inform you that there are some pretty cool performance related sessions at DrupalCon Amsterdam:

  • Please join use tomorrow at 10:45 in Room Emerald for "Render Caching in Drupal 7 and 8"

We will show the state of render_cache 7.x-1.0, which is used to render cache comments on

Then we will show how render caching works in Drupal 8 with #cache tags, etc.

Read more
Fabianx's picture

IRC Channel: #drupal-performance

Hi High-Performance and Benchmarking-Drupal,

I thought it would be great to have a dedicated channel for high-performance discussions.

If there is already another channel, please point me to it, but if not lets all join #drupal-performance on FreeNode to discuss all performance related matters and especially also D8 performance.

Once we have enough people there we can even request a bot :).



Read more
OnkelTem's picture

Benchmarking developer operations // speed up development!


Having a pretty old laptop as my primary development workstation, I'm very concerned about development speed. Under development process I mean the most frequent operations you do when making a website, like:

  • installing and configuring modules
  • creating and configuring entities (nodes, products) and fields
  • theme development
Read more
carn1x's picture

Benchmarking Views with mysql query cache on by default

I'm trying to benchmark a View on a MySQL server shared by a number of other developers, so I don't have the luxury of turning off query_cache_type since as far as I can tell, it's server wide and not restricted to per database.

I believe there's a way to turn it off per session, is there either a good way or otherwise, that I can set my particular development branch to operate with query_cache_type off.

Alternatively, a way to push SQL_NO_CACHE into Views either globally or per View would be fine.

Thanks for any advice :)

Read more

Automated performance testing for core - BOF/discussion notes

This is a summary of some of the discussions around automated performance testing of core at DrupalCon Chicago. It's incomplete, but this is a wiki so please help fill in the gaps.

Test runs

Rather than trying to integrate this with PIFR, we want to run tests against git branches triggered by git pushes. Initially this would allow for post-commit/push testing of HEAD, which would only find regressions after the fact, but from there we can extend this to forks of HEAD in sandboxes, per-issue branches etc.

Read more
ChrisRut's picture

Using Time+Drush+Devel to benchmark user/content/taxonomy creation times

I am in the market for a VPS in the $15-$30/mth range, and I've been shopping it around with the help of some feedback I've received from the WebHostingTalk forums. So I came up with a few new benchmarking tests that I haven't seen mentioned before. The results of my benchmarks can be found here: HTML format and Spreadsheet format

The new tests using time+drush+devel I came up with are:

  1. time drush generate users 2000 - This test will give you the amount of time it took to create 2000 users on your drupal site
  2. time drush generate content 5000 2 - This test will give you the amount of time it took to create 5000 nodes (page,story,book,blog,forum) with 7500 comments
  3. time drush generate taxonomy 15 250 - This test will give you the amount of time it took to create 15 vocabulary with 250 terms
Read more
Monica Friedman's picture

Very Sr Drupal Developer | Kforce

Employment type: 
Full time
Employment type: 

3+ months
MUST HAVE experience working on high-profile projects for big brands/clients

- A demonstrated ability to implement end-to-end custom Drupal sites
- Comfortable with custom module development
- Familiar with Drupal 6, particularly the updated views module
- Source control experience, particularly Subversion
- Facile with various methods of multi-site configuration
- Experience with the Services module as it pertains to Flash communication (AMFPHP)

Read more

Generic module to find/add indexes

This is a wiki to plan a module to allow admins to add indexes to their site schema - this can be done easily in Drupal 6 and beyond using - this discussion came from, where it was realized that CCK does not really have the usage context to be able to do this effectively, and also there are tables beyond CCK getting used in new ways by views and other modules that also need alternate indexes.

Read more
Chris Charlton's picture

Post your proposed session for DrupalCampLA 2008

This is easy and quick, nothing fancy, no voting - just post your session idea (title) and your name/contact info and show up to present that day! We have sessions open from 10am-2pm each day (Saturday and Sunday) and each session should plan for 45 minutes each. (edit wiki page)

If you can't see or edit the wiki page, be sure to join our group which may be required for editing the wiki page.

Read more
robertDouglass's picture

Are performance optimisations still going into D6?

I'm assuming it's too late, but if not here's an easy performance win for D6:


blockquote>The type column of the {system} table is currently a varchar(255) field. Yet in 99% of all Drupal installations it stores either the text 'module' or the text 'theme' and nothing else. This is already a strong case for making it an int column and defining constants for module and theme. Then, on every page, there is this query:
SELECT filename FROM system WHERE name = 'user' AND type = 'module';

Read more
Chris Charlton's picture

Are you storing your Drupal sites or configs in a version control system? If so, which?

SVN (Subversion)
48% (112 votes)
6% (14 votes)
Other (please comment which)
8% (18 votes)
No, but I'd like to!
30% (70 votes)
No, I don't store my drupal sites in a version control system of any kind.
9% (20 votes)
Total votes: 234
kbahey's picture

Presentation: Drupal performance tuning and optimization

OpenCraft hosted a 3.5 hour seminar that I presented on Drupal performance tuning and optimization. You can find the slides from the presentation there, which can be useful to some of you.

Read more
kbahey's picture

Drupal memory consumption by core and modules

I create a 5.2 and 6.x patch for measuring how much memory a module takes, and also how much the whole Drupal page load takes.

The results are published here: Measuring memory consumption by Drupal bootstrap and modules.

Short version: in Drupal 6, modules are better off than in 5.2, but the bootstrap is a tad larger.

If anyone is interested in replicating the results with more realistic install profiles, please do so and publish your results/findings/recommendations.

Read more
David Strauss's picture

Convenient SQL transactions with PressFlow Transaction

I've released an in-development version of PressFlow Transaction for developers interested in convenient encapsulation of SQL transactions. The key features are intelligent use of scope for COMMITs and ROLLBACKs as well as safe, intelligent nesting of transactions to get exception-like semantics.

Usage details are on the project page. Requires PHP 5.

(I posted this to the High-Performance group because encapsulating updates in transactions can dramatically improve performance.)

Read more
allisterbeharry's picture

SoC 2007 proposal - Drupal Automated Staging Kit

Hello all,
Sorry for cross-posting; but I think people working on different aspects of Drupal may have interest in this idea.

I've submitted a SoC 2007 Drupal proposal on automating the whole process of creating a complete Drupal site with a LAMP stack in a self-contained virtual machine image. A formatted PDF version is here:
Here is the abstract:

The Drupal automated staging toolkit is a proposed set of code libraries, file schemas and parsers, and code generators, for

Read more
David Strauss's picture

New caching module for complex and high-load sites

I've just released two modules for developers and maintainers of performance-intensive sites. The first module provides a new, self-tuning, preemptive cache API for modules. It's called PressFlow Preempt. The second module (named PressFlow Preempt Panels) builds on the first by seamlessly offering cached versions of Panels.

Read more
Gerhard Killesreiter's picture

Building a Drupal benchmarking test suite

Hi there, I have some interest in building a Drupal becnhmarking suite that can be used for testing the impact of newly proposed patches on our beloved content managemanet framework.

Read more
ChrisKennedy's picture

Benchmarking upgrade

One thing I would be really interested in seeing is a benchmark suite run on the current installation, and then again once it's upgraded to 5.0. Is this something that could be done or is being planned? It would be an underestimate of performance gains to the extent that certain performance patches are applied directly to d.o when fixed in core.

Performance upgrades from the CHANGELOG include:

Read more
bertboerland's picture

Graphing out watts used with Drupal

Inspired by Dries posting on the powersavings one can get by having a system run on low CPU usage:

Say we would make a test with 1k nodes in Drupal and Joomla? and run JMeter with the same parameters on it against both. Both would be optimzed for caching.

It would be nice to make some MRTG/RRD stats on it with using the MIBS of Watts used and CPU's cycles burned. Then we can show that Drupal will burn less cycles and is in fact environmental friendlier then Joomla?.

Read more
webchick's picture

Some initial documentation

I made an attempt at starting some documentation around benchmarking code:

Reviews/Additions would be appreciated. :)

Read more
Subscribe with RSS Syndicate content