December 6, 2013

Boost Your Perforce Server Capacity with Lockless Reads

Continuous Delivery

To enable optimal use of enterprise investments in the hardware supporting Perforce installations, release 2013.3 of the Perforce Versioning Engine adds a lockless-read capability that boosts transaction rates through improved database concurrency.

Lockless Read Diagram

Some of the largest enterprises on the planet rely on Perforce to build their flagship software products, award-winning games, or blockbuster movies. These products contain thousands of digital assets (software libraries, sound files, motion pictures) developed in modules by hundreds of developers. The individual modules need to be integrated and tested with each other as they are being built so that a quality product is shipped on time and within budget. Some Perforce customers perform several million automated tests per day so that they can roll out new features and enhancements on a daily basis. These tests along with other version management activities can interact with the Perforce server up to 10 million times a day—and this number keeps growing!

New Capabilities in Perforce Versioning Engine 2013.3:

  • Executes multiple integration and automation processes concurrently without impacting developers
  • Handles more users and automated processes concurrently through optimum use of existing (hardware) resources

Perform Continuous Delivery at Scale

Prior to release 2013.3, Perforce commands that read revision history (e.g., p4 sync, p4 integrate, etc.) lock the revision history tables during the phase when they calculate which files to sync or integrate to the target—known as the compute phase—so as to preserve the integrity of these tables. As a result, users who are trying to submit code changes to their respective branches have to wait until the compute phase is over. With the 2013.3 lockless read feature enabled, users can submit changes while commands such as p4 sync and p4 integrate calculate files to sync/integrate.

Accommodate Growing Demand During Peak Hours

In addition to improving concurrent usage, release 2013.3 also improves p4 sync memory footprint by up to 60%. This reduction in memory usage enables the server to accommodate more users and automated build processes, especially during peak hours, when multiple users and/or automated processes are syncing files to update their local workspaces.

Perforce Versioning Engine 2013.3 sets a new bar for version management scalability and performance so that enterprises can truly practice Continuous Delivery regardless of whether they are building their next flagship software, video game, or blockbuster movie. Download now and start reaping the benefits today.

This article first appeared in the Head Revision, Perforce's monthly newsletter.