Selecting a dedicated device to run your PBX is not always a straightforward process. Your PBX usage has to be planned, forecasted and then translated into machine specifications before clicking the "Add to cart" button. This post gives you all the information you may need to simplify this task, always keeping in mind your specific project requirements and restrictions.

Maximize Number Crunching

Maximize the CPU number crunching for your PBX appliance.

The processor is the brains of your system. Ideally, you should select a CPU that strikes the right balance between processing oomph, cost and power consumption:

  • Architecture: Decide on the processor architecture to fit your purpose. For instance, to install a PBX for a small office with 10 extensions, the ARM processor on the latest Raspberry Pi is more than sufficient and very cost-effective. If however, you are setting up a PBX with room for company growth, the x86_64 from Intel or AMD is a better choice.
  • Cache Size: The size of the built-in CPU cache is important, as a smaller size significantly degrades performance due to cache misses. As a rule of thumb, the bigger the cache size the better the PBX performance.
  • Number of Cores: Having more CPU cores allows the CPU to handle more operations in parallel, e.g. handling more voice and video calls. The latest x86 and ARM processors come with at least 2 cores and in most cases 4+. Each core can handle 2 execution threads resulting in more active calls and queues.
  • Nano-etching Size: This is the actual nanometer (nm) size of the processor's transistors, directly affecting the CPU performance, thermal and power efficiency. Smaller transistors are more power-efficient and perform more calculations without getting too hot, i.e. the chip's performance is less limited. A smaller transistor size also reduces the cost, shrinking silicon die sizes while increasing the CPU core density, e.g. CPUs etched at 7nm can provide more cores per chip than 14nm ones.

Enhance Your Memory

Enhance the memory for your PBX appliance.

The speed and size of the system's RAM are at least as important, if not more so than the performance of the processor. A high-performing CPU with a small amount of memory is akin to a Lamborghini fitted with a tiny fuel tank - it won't get you very far. Select the memory for your PBX based on:

  • Size: To select the RAM size for your new 3CX PBX, you need to take into account:
    • 1-2GB for the base OS and PBX system.
    • 5MB for each IP phone extension with 10 configured BLFs.
    • Your mileage may vary depending on your use:
      • Plan for additional memory for Web Client sessions, Recordings, custom CoDecs, etc.
      • Memory requirements for CFD voice apps deployed on your PBX, depending on the app’s functions and complexity.
  • Speed: Specified in MHz (Megahertz), higher memory speeds essentially allow the CPU to load and access in-memory data and code faster. This results in better communication between the CPU and RAM, upping the overall system performance and allowing your PBX to handle more calls, with better efficiency.

Efficient Networking

Ensure efficient networking for your PBX appliance.

Your connection to the network can determine the responsiveness of your PBX, as well as how many users and calls it can handle. If the rest of your hardware is up to it, a capable 1Gb LAN ethernet card enables your PBX to handle up to 1000 extensions. Network performance depends on the number of simultaneous calls and usage of other network applications, keeping in mind these major factors:

  • Latency: This needs to be under 100ms for practical VoIP and video conferencing applications. From 150ms and up, voice and video quality is degraded.
  • Call Bandwidth: Consider an average of 85 Kb/second for each call.
  • Packet Loss: Preferred to be as low as possible, practically under 0.3% of transmitted packets.

Solid Storage Area

Create a solid storage area for your PBX appliance.

Storage comes into play when considering the database I/O operations, call recordings, backups and logs generated by your PBX. Widely available SSD (Solid State Disk) drives, tip the scale in their favor, having higher read / write performance over electromechanical drives. Investing less than $100 on a good specced 500GB SSD drive is a good choice to avoid IO bottlenecks and have ample storage at your command.

OS Considerations

Let's say it upfront: We don't want to start a which-is-the-better-OS flame war. From a strictly technical viewpoint, Windows consumes more CPU and RAM due to the GUI and services loaded by default. Linux, on the other hand, is leaner on system resources but demands a steeper learning curve. That said, both OS can provide the basis for a capable PBX, provided you include in your specifications and planning, their particular differences and capabilities.

Use these general guidelines for planning and optimizing the specifications for your 3CX PBX deployment on a dedicated device. Don't hesitate to give us your valuable feedback in our forum.