Недавно я заменил свой Toshiba Satellite L70-B-12H с процессорами i7-4700 HQ на ASUS GL553VD с процессорами i7-7700 HQ. Я выполняю некоторый числовой анализ с помощью программы, написанной на C/C++, с интерфейсом к GNU Octave с Mex; он использует параллельные потоки благодаря Open MP. Я разочарован тем, что мой новый компьютер с лучшими процессорами в 2 раза медленнее, чем старый, с меньшими процессорами, выполняет ту же задачу.
Мониторинг на более новом компьютере (ASUS) показывает, что все 8 процессоров работают на частоте 3,40 ГГц, без дросселирования процессора (в большинстве испытаний).
Какие факторы могут объяснить такую худшую производительность предположительно лучшими процессорами?
Единственное существенное отличие, которое я могу себе представить, заключается в том, что у более старого компьютера (Toshiba) было 16 ГБ ОЗУ, а у более нового (ASUS) - только 8 ГБ. Может ли этого быть достаточно, чтобы объяснить такую резкую разницу в скорости? Задача занимает до 2,4 ГБ в памяти, поэтому 8 ГБ ОЗУ не могут быть переполнены (и я подтверждаю, что нет, и подкачка не используется).