OptimizeToolboxPerformance

Copies binary versions of typecastc to toolbox for better performance

Contents

Syntax

OptimizeToolboxPerformance

Description

This script automates toolbox optimization. The private functions wordbytes2dec and dec2wordbytes are very frequently called and thus most critical for performance (mostly, but not only CPU load), especially at high packet rates (USB). Profiling shows the bottleneck: typecast. When using the binary version from the MATLAB directory, speed-ups up to 300% can be experienced. However this binary version is in a private directory, so cannot be called directly. Also it depends on the OS, CPU architecture and MATLAB version used. So, the only solution: We copy those binary files to our own toolboxes private directory.

The script asks the user for permission and performs the file actions automatically. After each step the results will be checked to avoid a corrupt toolbox.

During the process, the m-files for the above named functions will be overwritten. This is the reason we provide 2 versions in the private dir, .m.slow (the original with typecast) and .m.fast (optimized version that needs binary typecastc files in the same directory).

Note: The optimization is not possible anymore since MATLAB Release 2010a (i.e. since MATLAB version 7.10 and greater). As typecast is now a built-in function, optimization is probably not necessary anymore anyway.

Example

  OptimizeToolboxPerformance

Signature