Снижающийся эффект повышения внутрикристальной частоты
Снижающийся эффект повышения внутрикристальной частоты вкупе с ограничениями потребления энергии и отвода тепла заставляют поставщиков аппаратных средств размещать в одном кристалле несколько процессорных ядер и полагаться на параллелизм на уровне потоков управления для повышения производительности. В сегодняшних многоядерных процессорах в одном восьмиядерном чипе поддерживается 64 аппаратных контекста, и спросом пользуются многоядерные процессоры с еще большим числом контекстов, ориентированные на специализированное использование. Эксперты из индустрии и академии предсказывают, что число ядер в одном кристалле будет возрастать в соответствии с законом Мура, т.е. в геометрической прогрессии.
По мере экспоненциального роста числа аппаратных контекстов в одном чипе становится возможно параллельно выполнять небывалое число потоков управления, конкурурирующих за доступ к совместно используемым ресурсам. Приложениям, распараллеливаемым на уровне потоков управления, таким как приложения оперативной обработки транзакций (online transaction processing, OLTP), свойственны все более длительные задержки при вхождении в сильно конфликтные критические участки (critical section), что отрицательно влияет на производительность [14]. Для полезного использования вычислительной мощности многоядерных процессоров необходимо ослабить влияние таких конфликтных узких мест в программных системах и добиться соразмерного возрастания производительности при росте числа ядер.
OLTP необходима для большинства предприятий. В последние десятилетия системы обработки транзакций превратились в сложные программные системы, базы кода которых включают миллионы строк. Однако со времени зарождения таких систем почти неизменными остались основные принципы их разработки. При обработке транзакций имеется множество критических участков [14]. Поэтому при использовании высокопараллельной аппаратуры таким системам свойственны проблемы производительности и масштабирования. Чтобы справиться с проблемами масштабируемости, исследователи предлагают использовать конфигурации без совместного использования ресурсов [6] в одном чипе [21] и/или отказываться от каких-либо свойств ACID [5].