Я заметил, что графический процессор может иметь сотни ядер, так что параллельные вычисления с ними можно значительно ускорить. Похоже, что в ядре ОС для ускорения не используются параллельные алгоритмы.
Люди выполняют параллельные вычисления в пользовательском темпе с помощью OpenMP, но почему не в пространстве ядра? Я предполагаю, что внутри ОС есть множество задач, требующих параллельной обработки, таких как обработка нескольких сетевых подключений и пакетов, выполнение операций криптографии, управление памятью, поиск? ... Некоторые брандмауэры фильтруют и контролируют сетевые потоки, сопоставляя шаблоны, ориентированные на исследования ОС может также проанализировать программу перед ее запуском, что отнимает много времени и может быть распараллелено.
Так почему же операционные системы не используют графические процессоры для повышения производительности и пропускной способности? Имеет ли смысл выполнять вычисления ОС на графическом процессоре?