Vertical migration of numerical routines in software and microcode

Vertical migration is a widely acknowledged technique for improving the performance of critical sections of code. Migration may be to the assembly‐language level or, for machines with writable control store, into microcode. The former is easier to implement and allows a degree of portability, albeit limited, of the target routines, although performance gains may not be as great as those resulting from migration into microcode. The latter however, requires considerable programming effort and the size of available control store may well place restrictions upon the amount of code which can be migrated to this level. Given the task of improving the performance of a large software base, full migration is rarely practical, so time must be spent determining the best migration strategy for a ‘target set’ of critical routines.