Jump to content


System for Unreal Engine


  • Please log in to reply
1 reply to this topic

#1 Twist

Twist

    Newbie

  • Members
  • Pip
  • 2 posts

Posted 23 August 2020 - 10:03 PM

I am new to Perforce and will be using it with Unreal Engine for version control. I will eventually host my server at home with friends so they will need to access it remotely.

My questions are:

-  What operating system (Windows or Linux) works best with Perforce Helix Core Server?

-  How much storage would all databases take up roughly and how quickly? I am trying to work out if i should get an extra SSD.
   I see in the manual it is recommended that the Journal should be on a different drive to the metadata. I would also need to find a way to connect another drive in case one begins to fill up .

#2 Sambwise

Sambwise

    Advanced Member

  • Members
  • PipPipPip
  • 1192 posts

Posted 01 September 2020 - 02:53 PM

View PostTwist, on 23 August 2020 - 10:03 PM, said:

What operating system (Windows or Linux) works best with Perforce Helix Core Server?

If you're running a large-scale commercial server, I'd say Linux, unhesitatingly.

If you're hosting a personal project, I'd say use whichever you're more comfortable with.  I've seen many posts on this forum from people who have never used Linux before and are trying to set up a Linux server to use for an Unreal project (because some tutorial said to) and consequently struggling with very basic system administration tasks (managing disk space, etc) that would have been trivial on a platform they were familiar with.  So the hypothetical filesystem performance benefits of using Linux (which, tbh, I'm not sure still exist -- the last time I looked at performance benchmarks was more than a decade ago, and Windows has made some strides since then) may not outweigh the hassle, and in any case aren't really a factor with a relatively small server.

Quote

How much storage would all databases take up roughly and how quickly? I am trying to work out if i should get an extra SSD.

The database doesn't grow very quickly; its size is proportionate to the number of files (not the combined size of the actual files) and the number of users.  Unless your project has a very large number of generated files, the database for a project that only has a few people working on it is going to be measured in megabytes rather than gigabytes.

The depot (which can live on a different drive from the database, and does not need to be on a fast SSD because it's accessed much less frequently) is a function of the actual files in your project, including all their revisions.  For an Unreal project this is likely to actually reach a significant size since the art assets are likely to get pretty big.  If you have a rough idea of how big a snapshot of your project is, multiply that by about ten to allow for versioning (and keep in mind that you might want to cap the number of revisions you store for large assets, or plan to upgrade your disk once the average number of versions per file exceeds ten).

Quote

I see in the manual it is recommended that the Journal should be on a different drive to the metadata. I would also need to find a way to connect another drive in case one begins to fill up .

Storing the journal on a different drive is mostly a matter of resiliency, where if the disk holding the database fails completely you want to be able to use the journal to restore it with absolutely zero data loss.  Again, for a small personal project, you may not care that much; assuming you're taking daily backups/checkpoints and storing them offsite (which is trivial in the modern days of commodity cloud storage), you can never lose more than a day of work (which for a five-person project is a much smaller financial loss than a five-thousand-person project), you probably don't have stringent auditing/compliance requirements that require you to ensure a record of every transaction no matter what, and in a worst-case disaster scenario (like, the entire server machine gets destroyed AND you forgot to take any backups ever), the latest content will probably live in someone's workspace, and can just be resubmitted (minus the history).

Being able to handle eventualities like connecting another drive (which you might want to do to expand storage, etc) plus routine maintenance (backups, monitoring, etc) goes back to my earlier recommendation that you run this on a platform you're comfortable with.  :)




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users