Hardware Requirements for Helix GitSwarm Version 2015.2 Introduction This document describes the hardware requirements for Helix GitSwarm release 2015.2. Supported Operating System Platforms * Ubuntu 12.04 or 14.04 * CentOS 6.6 or 7 Supported Git Fusion Releases * Git Fusion 2015.2, or newer. Storage The necessary hard drive space largely depends on the size of the repos you want to store in GitSwarm. As a rule of thumb you should have at least twice as much free space as all your repos combined take up. You need twice the storage because GitSwarm satellites contain an extra copy of each repo. If you want to be flexible about growing your hard drive space in the future, consider mounting it using LVM so you can add more hard drives when you need them. Apart from a local hard drive, you can also mount a volume that supports the network file system (NFS) protocol. This volume might be located on a file server, a network attached storage (NAS) device, a storage area network (SAN) or on an Amazon Web Services (AWS) Elastic Block Store (EBS) volume. If you have enough RAM and a recent CPU, the speed of GitSwarm is mainly limited by hard drive seek times. Having a fast drive (7,200 RPM and up) or a solid state drive (SSD) will improve the responsiveness of GitSwarm. CPU We have found through testing that supporting fetch/pull/push operations via HTTP(S) requires a minimum of 2 cores. * 1 core works supports up to 100 users, but the application can be a bit slower due to having all workers and background jobs running on the same core * 2 cores is the recommended number of cores and supports up to 500 users * 4 cores supports up to 2,000 users * 8 cores supports up to 5,000 users * 16 cores supports up to 10,000 users * 32 cores supports up to 20,000 users * 64 cores supports up to 40,000 users Memory You need at least 2GB of addressable memory (RAM + swap) to install and use GitSwarm! With less memory, GitSwarm will give strange errors during the reconfigure run and 500 errors during usage. * 512MB RAM + 1.5GB of swap is the absolute minimum, but we strongly advise against this amount of memory. * 1GB RAM + 1GB swap supports up to 100 users * 2GB RAM is the recommended memory size and supports up to 500 users * 4GB RAM supports up to 2,000 users * 8GB RAM supports up to 5,000 users * 16GB RAM supports up to 10,000 users * 32GB RAM supports up to 20,000 users * 64GB RAM supports up to 40,000 users Note: The 25 workers of Sidekiq will show up as separate processes in your process overview (such as top or htop) but they share the same RAM allocation since Sidekiq is a multithreaded application. END