Pilot release

UE5 Local Benchmark.

Import-and-push benchmark against the Unreal Engine 5.7.3 source code. The project contains 350,334 files amounting to 85 GiBs. Run with PLV version 0.1.0. All tests were run locally for maximum throughput.

Raw numbers

A lot to chew on.

Epic Games' Unreal Engine 5 is a great project to use as a baseline. It contains tons of small and large files, and is a decently sized project.

350,334
Files in repository
92 Gigabytes
Size on disk
PLV
2m 23s

Local plv server, create repo, stage, commit, push.

Perforce
27m 31s

Local p4d server, full file list, add, submit.

Git
1h 14m

Local bare remote, forced full-tree add, commit, push.

Total comparison

The need for speed.

When working with large repositories, high file counts and massive binary files can slow you down. Not so much with PLV.

PLV
2m 23s
Plastic
3m 59s
Perforce
27m 31s
Subversion
37m 43s
Git
1h 14m

Lower is better

PLV
31x faster
Plastic
19x faster
Perforce
2.7x faster
Subversion
2x faster
Git
1x baseline

Higher is better

Phase times

Where the time went.

When benchmarking, it is always good to understand where time was spent and on which tasks.

PLV
2m 23s
Plastic
3m 59s
Perforce
26m 17s
Submitting
27m 31s
Subversion
37m 43s
Importing
37m 43s
Git
27m 16s
39m 34s
7m 09s
Indexing Committing Pushing
1h 14m
PLV
27%
6%
67%
Indexing Committing Pushing
2m 23s
Plastic
99%
Checking in
3m 59s
Perforce
96%
Submitting
27m 31s
Subversion
100%
Importing
37m 43s
Git
37%
53%
10%
Indexing Committing Pushing
1h 14m
Command Time Notes
plv state 39s Indexed 350,330 files from the source tree.
plv stage 5s Staged the changes for commit.
plv commit 3s Wrote the commit to the local PLV repo.
plv push 1m 35s Uploaded the commit and indirect file bytes to the local PLV server.
Command Time Notes
Build full file list 8s Generated a BOM-free list of every source-tree file so Perforce received the same full-tree workload.
p4 add -I -f 1m Opened 350,334 files. -I bypassed Perforce ignore rules and -f allowed UE filenames containing Perforce wildcard characters.
p4 submit 26m 17s Submitted the opened changelist into a local p4d depot.
Command Time Notes
git add -f -A 27m 16s Tracked 350,334 files. Combines the initial add work and the forced correction needed to include files Git would otherwise exclude.
git commit 39m 34s Git ran automatic maintenance/repack during commit.
git push 7m 9s Pushed to a local bare repository.
Command Time Notes
Create Repo and Workspace 1s Initialized a local Plastic repository and a workspace pointing at it.
cm add -R . --silent 3s Recursively added the full source tree to the workspace.
cm ci . 3m 55s Checked the source tree in to the local Plastic SCM repository.
Command Time Notes
svn import 37m 43s Imported the entire source tree as a single initial revision.

Run details

How it was measured.

Date May 28, 2026
Source Epic Games Unreal Engine 5 Source Code
Versions PLV 0.1.0, Plastic 11.0.16, Perforce 2025.3, Subversion 1.14.5, Git 2.54.0
Operating System Windows 11 Pro 25H2 26200.8457
Hardware Ryzen 9950X3D, 256 GB DDR5 RAM, 8 TB M.2 PCIe 5

← Back to the comparison