Я всегда думал, что технология Hyper-Q — это не что иное, как потоки в GPU. Позже я обнаружил, что ошибался (правда?). Итак, я читал о Hyper-Q и еще больше запутался. Я просматривал одну статью, и в ней было два утверждения:
А. Hyper-Q – это гибкое решение, позволяющее разделять подключения из нескольких потоков CUDA, из нескольких процессов интерфейса передачи сообщений (MPI) или даже из нескольких потоков внутри процесса.
Б. Hyper-Q увеличивает общее количество подключений (очередей работ) между хостом и графическим процессором GK110, обеспечивая 32 одновременных аппаратно-управляемых подключения (по сравнению с одним подключением, доступным с Fermi)
В вышеупомянутых пунктах пункт B говорится, что может быть создано несколько подключений к одному графическому процессору с хоста. Означает ли это, что я могу создать несколько контекстов на простом графическом процессоре с помощью разных приложений? Означает ли это, что мне придется выполнять все приложения в разных потоках? Что, если все мои соединения потребляют память и вычислительные ресурсы, кто управляет планированием ресурсов (памяти/ядер)?