Do you have good communication performance between the runtime and your database?

2 minute read time.

Did you know that Sage provides a test program to measure the performance?

From the Sage X3 Version 11 Architecture and System Requirements Guide (available in the Online help and KB ID 81934)

"To help determine the quality of an infrastructure regardless of its nature (physical or virtual, single or multi-tier, Oracle or SQL Server, Unix-Linux or Windows, etc.), Sage can provide a test program to meter X3’s performance by performing a set of data I/O operations of the reference folder to simulate some high-demand transactions."

What does this mean?

There is a performance measurement tool (KB ID 75064) that tests the communication at the X3 core level between the runtime and the database only. There is no interaction with Syracuse, MongoDB, Elastic Search, nor any other SAFE X3 Component. 

What exactly does the performance measurement tool do?

  1. Read 100,000 records from ATEXTE

  2. Read 100,000 records from APLSTD

  3. Read 100,000 records from POSCOD

  4. Read 100,000 records from ADOCUMENT

  5. Read 100,000 records from ATEXTRA

    • The reads happen twice. The first read populates the database buffers. The second set of reads are used for collecting metrics.
    • Create a test table, YYYY, based on ATEXTE
  6. Write 100,000 records into YYYY table

  7. Erase 100,000 records from YYYY table

    • Delete the YYYY temporary table

How do I run it?

  1. Download the ZX3IOBENCH_V2.src from KB ID 75064
  2. Place the ZX3IOBENCH_V2.src in your X3\TRT directory on your application server
  3. Go into Sage X3 and switch to the X3 reference folder endpoint
  4. Go to Development, Scripts dictionary, Scripts, Script editor (ADOTRT) to compile the file
  5. Go to Development, Utilities, Miscellaneous, Run processes (EXETRT)
  6. Enter the Script name of ZX3IOBENCH_V2 and click OK
  7. A log will be produced. Find the value of LEGACY PERFORMANCE INDEX.

Notes:

  • This program must be run against the X3 reference folder
  • It is better to run the program while users are not in Sage X3
  • You can establish a baseline value and you can automate the running of the tool using KB ID 81955
  • If you make environmental changes for a day, you can review the performance measurement that was run automatically overnight

What is good and what is bad?

What if my number is too high?

  1. It is probably a good idea to work with your IT department to decrease the latency
  2. You might want to consider setting a recurring task to run the performance measurement tool automatically using KB ID 81955. You then have a baseline and more data points to review.
  3. If you are using virtualization with your servers, make sure that you are using best practices. Some documents have been collected and added to KB ID 83823
  4. Review other methods in How to troubleshoot slow performance for Sage X3 (KB ID 76348)

Conclusion

Troubleshooting performance issues can seem like a frustrating and daunting task. There are many variables that may need to be considered and there are many non-Sage tools that you can utilize to provide insight into your environment. Sage does provide tools to help investigate Sage X3 components. The Sage Performance Measurement tool can be run with minimal effort and can be automated with a schedule that works for you. The Sage Performance Measurement tool provides you with a good starting point and an idea of how the Sage X3 core components are communicating.

ZX3IOBENCH_V2.zip