OpenCL
Skrót od „Open Computing Language”. OpenCL to otwarty standard programowania równoległego wieloplatformowego. Został pierwotnie opracowany przez firmę Apple w 2008 roku, a obecnie jest rozwijany przez organizację Khronos Group. Pierwszym dużym systemem operacyjnym obsługującym OpenCL był Snow Leopard (Mac OS X 10.6), wydany w 2009 roku.
OpenCL udostępnia API, które pozwala programom uzyskiwać jednocześnie dostęp do wielu procesorów w celu wykonywania przetwarzania równoległego. Przykłady obejmują CPU, GPU, procesory sygnałowe (DSP) oraz układy FPGA (field-programmable gate arrays). Rozdzielenie obciążenia obliczeniowego między wiele procesorów zwiększa wydajność przetwarzania i może znacznie poprawić działanie programu.
Chociaż OpenCL obsługuje wiele różnych typów procesorów, jest najczęściej używany do uzyskiwania dostępu do GPU w celu wykonywania ogólnych zadań obliczeniowych. Technika ta, nazywana również GPGPU, wykorzystuje moc obliczeniową GPU i pozwala mu pomagać CPU w wykonywaniu obliczeń. Przed powstaniem OpenCL procesor graficzny często pozostawał bezczynny, gdy CPU działał z pełną wydajnością. OpenCL umożliwia GPU pomaganie CPU w przetwarzaniu obliczeń niezwiązanych z grafiką.
Aby korzystać z OpenCL, zarówno sprzęt, jak i oprogramowanie muszą obsługiwać API OpenCL. Ze względu na zapewnianą przez OpenCL przewagę wydajnościową większość kart graficznych opracowanych przez firmy NVIDIA i AMD obsługuje obecnie OpenCL. OpenCL obsługuje również wiele mobilnych procesorów graficznych, takich jak te używane w smartfonach i tabletach.
Sprawdź swoją wiedzę