White Papers and Presentations

2007 Perforce User Conference

Administration Best Practices

by James Creasy, Perforce Software, Inc.

The Perforce visual administration tool, new for 2007, provides a dynamic view of permissions, users, and groups. Ever wonder which users have access to a particular path? Or how a change in the protect table would affect permissions of existing users? Need to delete a user and clean up their changelists, workspaces and protection table entries? This presentation explores administrative best practices for assigning and maintaining permissions in concert with the user and group structure.

CSI: Perforce - Tracking Down Build and Runtime Problems Using P4V

by Stephanie Turner and Brian Holtcamp, Perforce Software, Inc.

Do you find the task of reconciling your local workspace after working offline a ton of aggravation? Has your code ever built and run flawlessly in your local environment, but broken the release line? Does merging your branch into another branch cause you anxiety?

This talk will demonstrate how to use the 2007.1 P4V advanced visualization tools to prevent and track down those really annoying and time- consuming build and runtime issues.

Enterprise Automation: Canonical Automation for the Evolving Codebase

by Vince Maiorana, BlueShift Technologies, Inc.

How does a startup company achieve enterprise-level automation during the development cycle in an environment of rapidly changing software components? How do external tools surround Perforce to create field-deployable products? How does an organization enforce company-wide technical policies and procedures to manage firmware, hardware, and software? What role does the repository play in promoting a successful interface to external manufacturing policies?

This presentation will discuss the scripts, triggers, policies, and procedures and include expert organizational tips on how to achieve practical automation in a timely and cost-effective manner.

Perforce Branching - Moving Fast from Theory into Practical Application

by Tom Tyler, The Go To Group

The core themes of branching theory and the mainline model are fairly well established. However, there are a great many variations on the theme, as the conventional wisdom is applied to a variety of environments. This presentation helps distill the volumes of branching theory into practical recommendations for a variety of common development environments. Key factors affecting branch structure are discussed, and a set of sample case studies and resulting branch structures will be reviewed.

Building a Perforce Server to Scale for the Next Generation of Game Development

by Mike Sundy and Toby Roberts, Electronic Arts

The video game industry recently underwent a shift to the next generation of consoles (XBox 360, Sony PS3, and Nintendo Wii). With this shift came an explosion of source assets, team sizes, and a resultant strain on EA's Windows-based Perforce servers. This paper documents the performance testing project EA implemented to find a scalable and reliable next-generation Perforce server standard for Electronic Arts.

We tested filesystems, operating systems, 32-bit vs. 64-bit, and 10k vs. 15k drives. This paper covers the new server standard of Linux with the XFS filesystem that netted a 5-10x performance gain over Win32 and methods used to administer the larger team sizes.

Creating a P4DTG Plugin: Integrating Perforce and Defect Trackers

by Alan Teague, Perforce Software, Inc.

The Perforce Defect Tracking Gateway (P4DTG) links fix information in a Perforce server to defects in defect tracking systems. P4DTG uses a plug-in architecture to interact with both the Perforce server and defect tracking systems. These plug-ins are shared libraries that are loaded at runtime by the P4DTG components. This paper provides an architectural overview of P4DTG in general and plug-ins in specific. Plug-in design considerations and implementation steps are covered in detail.

The Perforce Knowledge Base

by Jason Novecosky and Stewart Lord, Perforce Software, Inc.

As part of Perforce's continued commitment towards providing excellent customer support, we introduce the Perforce Knowledge Base. The Knowledge Base is an internally developed web application that leverages the power of Perforce. See how we merge common web development software (PHP, MySQL, Smarty) with Perforce to provide version control for the documents stored in the Knowledge Base.

The Knowledge Base contains articles written and used by our technical staff, some of which have not been previously published. The bulk of the content is geared towards specific environments and configurations, featuring more dynamic information than what is found in our online documentation. The Knowledge Base is designed as a self-service central repository for tips, tricks, and useful information.

Highly specialized Perforce client? Content Management System? Regardless of what category it's placed in, it sure is cool.

Optimizing Perforce Infrastructure for Software Build Management

by Slava Imeshev, Viewtier Systems

Growing sizes of software projects combined with using modern approaches to building software present new performance challenges for SCM systems. This talk provides advanced tips on optimizing Perforce infrastructure for high-speed, high-volume software build automation and management.

Life on the Edge: Monitoring and Running a Very Large Perforce Installation

by Dan Bloch, Google

Although Perforce does a remarkable job of scaling, Google's main server is at the limits of what Perforce can do, and eternal vigilance is the price of being able to provide service to our users. This talk discusses the monitoring tools and techniques used at Google and the actions that we (or the tools) take in response to the information they provide, as well as various additional issues encountered at large sites.

A key result, which applies to smaller sites, is that server load is often caused by a few users or a few commands. The ability to identify them allows performance improvement without the purchase of additional hardware or software.

Perforce Load Testing: Configuration and Execution

by Dan Healy, Bank of America

In this presentation, I'll share my experiences during recent load testing of Perforce at BofA. I'll focus on the motivations for conducting the test, how I coordinated with US and UK colleagues to emulate hundreds of simultaneous users, and Perforce technical support's invaluable central processing engine. Additionally, I'll discuss the software monitoring tools I utilized, how usage was escalated, final analysis, lessons learned, and suggested refinements.

Authentication Options in Perforce

by Dan Steele, Perforce Software, Inc.

Perforce provides several security models for handling user authentication. This presentation discusses what these options are and how to make them work for you.

Perforce Performance

by Michael Shields, Perforce Software, Inc.

As the number of customers using Perforce increases, the collective wisdom continues to expand. While the vast majority of this wisdom recorded throughout the digital universe is accurate, there exist a few misconceptions regarding Perforce performance. And, there are at least a few tidbits that can affect Perforce performance that are not yet common knowledge.

This presentation will discuss some of the misconceptions and lesser known realities of Perforce performance. And while discussing these, related Perforce server internals will also be discussed.

Standardizing on Perforce

by Neal Firth, SageRight, Inc., RJ Allen and Karen Brooks, WSI Corporation

In early 2006, WSI found themselves with code averaging histories of over five years, and residing in several different source control systems. WSI's business unit organization, coupled with their broad breadth of offerings, had resulted in a heterogeneous development environment. After a review process, WSI chose to standardize on Perforce. This paper discusses transitioning the inherently diverse development processes of multiple SCM systems into a common Perforce-based environment.

This paper discusses what worked, what didn't work, and who was involved. Project considerations included branching strategies, legacy applications, case sensitivity, Visual Studio Web projects, user training, and SCM artifacts that didn't have Perforce equivalents. The project conversion process required the development of migration tools that could deal with incremental conversions.

Migrating from Subversion to Perforce: The Methodology and the Migrating Tool

by Vitalii Pokrovskii and Mark Fridrich, Blue Coat Systems

This talk describes a methodology for the full Subversion (SVN) to Perforce (P4) migration. It also describes a tool that is suitable for migrating SVN repositories of arbitrary size and complexity.

To migrate the complete change history, we present the "sync and replay" solution, wherein SVN revisions are migrated to P4 in sequence, one at a time. To this end, the SVN revision log is used as a source of the change information required for the migration. In some cases, multiple migration paths are possible and can be explicitly selected depending on site preferences.

To address practical needs, we have developed a new migration tool called svn2p4. svn2p4 is available free of charge from the Perforce Public Depot (public.perforce.com:1666)://guest/vitalii_pokrovskii/svn2p4. The tool is a single, self-contained Perl script that contains both configuration data and actual code. In its basic mode, the tool unconditionally migrates an entire SVN repository to P4, beginning with SVN revison 1. The tool also provides additional features to optimize migration time and performance.

Product Engineering at Synopsys Using Perforce

by Vishnu Pendyala and Joe Leon Guerrero, Synopsys, Inc.

Managing a huge code base with a complex structure poses quite a few problems, for which solutions are not so straightforward. Product Engineering of a huge, complex code base involves plenty of manipulations, and can be discovered only through experience and deep involvement.

This presentation is aimed at giving the audience useful clues and insights into using Perforce for Product Engineering. We will highlight some of the ways Perforce is used for integrating software code at a reasonably large company, and give insights into a working model of how Product Engineering uses Perforce.

A Walk on the Wild Side: Migrating and Merging

by Tony Smith, Perforce Software, Inc.

This talk will tour how to migrate Perforce servers from Windows to Unix platforms, and merge Perforce repositories together. It will also cover the issues involved, and the tools available to solve them.

User Conferences: 2007 | 2005 | 2003 | 2001 | 2000 | 1999 | 1998 | European User Conference