В течение последнего десятилетия среди производителей процессоров наблюдается тенденция по наращиванию производительности чипов за счёт роста количества ядер. Двухъядерные и четырёхъядерные микропроцессоры отлично демонстрируют себя в играх и ежедневных задачах рядовых пользователей, но переход на 8-, 10- либо 16-ядерные микропроцессоры не даёт ожидаемого прироста производительности. Главной неувязкой при написании программ для многоядерных микропроцессоров является задача равномерного рассредотачивания нагрузки на всех ядрах. И чем их больше, тем труднее программистам реализовать весь потенциал многоядерных CPU.

Intel

Одним из вероятных решений данной проблемы может стать новая разработка специалистов компании Intel и учённых из Института Северной Каролины. Которые предлагают переложить задачу равномерного рассредотачивания нагрузки с программной части на аппаратную: «Это практически конвертирует многоступенчатые программные операции в три обыкновенные инструкции: добавить данные в очередь, получить данные из очереди и поместить данные туда, где они будут необходимы на следующем шаге». Как отметили исследователи, использование «аппаратного управления очередью» в реальных задачах на 16-ядерном микропроцессоре сумеет обеспечить 20-кратный прирост производительности.