Как увеличить скорость оптимизации

Если в Ваших ежедневных задачах стоят пункты по тестированию и оптимизации большого количества стратегий, Вам может быть полезно делать данные операции намного быстрее. Для этого нужно правильно перераспределить работу логичемких ядер процессора.

Вообще, что дает количество ядер процессора? Процессор - это мозг компьютера. Разные программы могут задействовать как одно, так и все ядра сразу. Важна конечно и архитектура и частота ядра. Главное, что нужно понимать, количество ядер процессора, влияет на производительность и быстродействие.

Для увеличения скорости оптимизации нужно правильно назначить количество потоков.
Откройте ETS\ Настройки\ Основные \ Оптимизация \ Количество потоков
Логические процессоры напрямую связаны с потоками. Работают они на технологии Hyper-Threading для Intel и Hyper Transport для AMD. Расчет происходит просто - два потока на ядро, т.е. логические ядра - это количество физических ядер умноженное на количество потоков, которые может выполнять каждое ядро, а именно на 2.

Потоки - это данные, идущих от программы к процессору.

Чтобы проверить сколько логических процессоров у Вас нужно зайти в диспетчер Задач Windows (Ctrl + Alt +Del). Вкладка "Производительность". Под большим графиком можно увидеть количество логических процессоров. В моем случае их 8.
Так какое количество потоков выставить в ETS? Правило простое. Количество логических процессов минус один (на нужды других программ)
Т.е. в моем случае оптимальным - будет значение 8 - 1 =7 потоков.
Проводя тестирование оптимизации одних и тех же данных по скорости исполнения с разным количеством потоков имеем следующие данные.

Количество потоков 1 - Скорость исполнения 42,182
Количество потоков 5 - Скорость исполнения 15,249
Количество потоков 7 - Скорость исполнения 13,350
Количество потоков 10 - Скорость исполнения 13,953

Вывод прост - при правильно установленном значении количества потоков, потоки используются рациональнее и получаем более высокую скорость выполнения оптимизации.