Learn OpenScript

What is the OpenScript performance estimator and how does it work?

by Derek_Kang on ‎01-19-2012 05:04 PM (83 Views)

The OpenScript engine provides the capability to estimate the performance of a given OpenScript code in connections per second.

When you compile an OpenScript code, the system will provide the estimated performance number upon successful compilation as follows:

ServerIronADX 1000(config)#script compile reset.pl
This script is compiled successfully.
Performance for this script:
- Approximately 1029 connections/second at 10% CPU utilization
- Approximately 5148 connections/second at 50% CPU utilization
- Approximately 10296 connections/second at 100% CPU utilization


For the estimation, the OpenScript engine takes into account two factors such as the fixed overhead of runtime environment and the overhead of APIs in an OpenScript code. Basically, each APIs are assigned different overhead cost and the OpenScript engine counts the number of APIs  in the code to calculate total API overhead. The final estimation is made using the fixed runtime overhead and API overhead.

The CPS number is given per application processor. In order to get the system wide performance number, multiply the CPS by the number of application processors the system has. I the above example, let's assume that the ADX 1000 has 4 application processors. At 100% application processor utilization, the system can process 10,296 x 4 CPS.

Note that if you have multiple OpenScript codes running at the same time, the performance will be reduced accordingly. The performance estimator assumes that there is is a single OpenScript code running on the system.

In future, Brocade may change the performance estimator algorithms without a notice to improve the accuracy.