Test Process Method For Identifying Non-linear Function Calls Which Affect Code Execution Speed and Quality
Original Publication Date: 2004-Jul-27
Included in the Prior Art Database: 2004-Jul-27
Test Process for Isolating Non-Linear Functions in an Embedded System.
Test Process Method For Identifying Non -linear Function Calls Which Affect Code Execution Speed and Quality
Isolation of Non-Linear Functions in an Embedded System
Herein described is a proposal for a test process which would detect non-linear performance in functions in an embedded system or any other system for that matter in which performance is critical. It is advantageous to isolate functions exhibiting non-linear behavior, because in some cases they may be prime candidates for re-engineering for improved performance.
Periods of non-linear growth for allocation/ delete time may cause degraded performance.
Y-Axis optim. norm.
New method has a linear slope.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Figure 1.1 Example of Non-Linear Behavior Leading to Degraded Performance
Shown in Figure 1.1 is a real occurrence of non-linear behavior on an embedded system. On the Y-Axis is the cumulative time in milliseconds consumed, and on the X-Axis is the total number of calls to a given function. In this example the original
function is shown in green growing with periods of non-linear growth. The test process
described herein would examine embedded microcode in an automated fashion, and automatically detect and isolate functions exhibiting behavior like the function in green, so that an engineer could analyze the product code for possible improvement. Shown in red is the optimized function after an engineer made improvements to the function to make it more linear. The example demonstrated in Figure 1.1 was a performance degradation which was not easily detected. In fact it existed in a mature oper...