Linx Main Linx Help

Linx Benchmark Tool

In order to help users test Linx or test their system setup, they can use this Linx Benchmark Tool.

Why Benchmark?

  • Understand Linx’s capabilities
  • Get performance of current setup
  • Compare performance to other setups
  • Discover the unknowns and pinpoint bottlenecks
  • Can provide standardised reference times to clients
  • Help with sizing of hardware based on requirements
  • Learn optimisation through examples

What does this benchmarking tool do?

  • Read 100,000+ records, each with 60+ columns from a CSV file
  • Insert Records to Database
  • Do a calculation on each record, based on values in the record
  • Do a lookup in the table, based on a value in the record and update the record with the lookup value.

5 Tests These test are not necessary in performance order, as it will depend on the system.

  • Test 1: No optimization
  • Test 2: Some optimization on the lookup
  • Test 3: Add a Transaction for a single connection
  • Test 4: Optimize the updates
  • Test 5: Optimize upload, updates and lookups

Download the Linx Benchmark Tool (Linx 5.18+): Benchmark.zip (2.2 MB)

How to use?

  • Unzip Tool to any folder
  • Use 7zip to unzip the MOCK_DATA.7z file to any Folder
  • Open the Solution in Linx Designer, or Upload to your Linx Server
  • Update the Solution’s Settings to point to your SQL Server and MOCK_DATA.csv file location
  • For the first time, on the solution, run the Tools > B1_CreateTables_RunOnce process to set up the required tables in the database
  • Run the RunAllTests process to run the benchmark. Allow an hour or so depending on your system. To save the results directly to a file, set the SavetoFile parameter to True and give a Filepath.

To help with building up a Benchmark Library, please add your results below in this format:


Test Name: This is my test
Server Details:
CPU: 4 x vCPU, 3.2 GHz
RAM: 16 GB
HDD: SATA
SQL Server: Local MS SQL Express
Server/Designer: Designer

Linx Benchmark Results

1: Test 1 - No Optimization - 00:32:16.6030000 Ran on: 2020-05-28 08:48:00
2: Test 2 - Optimised Lookup - 00:05:35.9330000 Ran on: 2020-05-28 09:20:17
3: Test 3 - Optimised Lookup with Transaction - 00:05:14.8200000 Ran on: 2020-05-28 09:25:53
4: Test 4 - Bulk DB Copy and Optimized Calc and Update - 00:10:36.7570000 Ran on: 2020-05-28 09:31:08
5: Test 5 - Bulk DB Copy and Optimized Calc and Improved Update - 00:01:39.6070000 Ran on: 2020-05-28 09:41:44


1 Like

Really cool Dawie!

Have you considered having the Linx process spit out the log file in your desired format automatically?

Using cmd line calling the “systeminfo” command and piping it to the log file, then you can append the start, end and elapsed time of each test into a log file?