How does Plastic compare to other version control systems in pure speed?
We frequently benchmark Plastic against other key version control systems in key operations such as add, checkin, add + checkin (adding the entire codebase to the version control) and update (downloading the entire codebase to a clean directory).
We've compared Plastic SCM v 8.0, Git version 2.20.1.windows.1 and a Perforce (Helix) version 2018.2. We've done so with 2 types of codebases: small and medium.
SMALL - 63,105 files 4,212 directories - 775 MB
The code for the SMALL repo is the Linux kernel
Plastic is 8 times faster than Perforce Helix Core doing add + checkin
Plastic is 5.7 times faster than Git – consider that Git is checking in locally while Plastic is sending data through the network from client to server
MEDIUM - 182,749 files 14,852 directories - 7.16GB
The code for the MEDIUM repo is created as follows: linux + mono + openoffice + alienarena + war.dat
Plastic is 5.2 times faster than Perforce Helix Core doing add + checkin
Plastic is 5.3 times faster than Git – consider that Git is checking in locally while Plastic is sending data through the network from client to server.
Hardware configuration:
-
Hardware setup
CPU: 4 vCPUs, (x64) / Intel(R) Xeon(R) CPU E5-26700 @ 2.60GHz
RAM: 15 GB
Network: 1.3Gbps
Windows Server 2012
-
Disk IO:
Read speed: 325MB/sec (HDTune)
Write speed: 195Mb/s (cm iostats)
Software configuration:
-
Plastic SCM is configured for concurrency as follows:
DownloadPoolSize = 3
UploadCompressionSize = 3
UploadReadPoolSize = 3
Upload_SendDataThreadCount = 3
-
Perforce Helix Core is configured for concurrency as follows:
--parallel=threads=3 for submit (checkin) and sync (update).
-
Git does not allow concurrency configuration