Для получения приемлемых временных данных в части сортировки (IndexedList) потребовалось оптимизировать функции сравнения элементов, в частности, сравнения строк. Для этого проводились измерения времени сортировки с разными функциями сравнения. Например, для 8-бит:
1. WinApi - с функцией WinApi.lstrcmpA;
2. BlackBox - с функцией Keys.SStringCompare;
3. ASM - с функцией Keys.ASStringCompare, реализованной как code на ассемблере.
Результаты для строк приведены на рисунке.
Вложение:
CompareRoutines.png [ 10.88 КБ | Просмотров: 10921 ]

Для дальнейших сравнений и использования берется ассемблерная реализация.