1Name 2 3 NV_device_cuda 4 5Name Strings 6 7 EGL_NV_device_cuda 8 9Contributors 10 11 Michael Chock 12 James Jones 13 14Contact 15 16 Michael Chock (mchock 'at' nvidia.com) 17 18Status 19 20 Complete 21 22Version 23 24 Version 1, June 21, 2014 25 26Number 27 28 EGL Extension #74 29 30Extension Type 31 32 EGL device extension 33 34Dependencies 35 36 This extension is written against the language of EGL 1.5 as 37 modified by EGL_EXT_device_base. 38 39 EGL_EXT_device_base is required. 40 41Overview 42 43 EGL and CUDA both have the capability to drive multiple devices, 44 such as GPUs, within a single system. To interoperate with one 45 another, both APIs must have compatible notions of such devices. 46 This extension defines a mapping from an EGL device to a CUDA device 47 enumerant. 48 49IP Status 50 51 No known claims. 52 53New Types 54 55 None. 56 57New Procedures and Functions 58 59 None. 60 61New Tokens 62 63 Accepted as a queried <attribute> in eglQueryDeviceAttribEXT: 64 65 EGL_CUDA_DEVICE_NV 0x323A 66 67Add a new section 2.1.3 (CUDA Devices) after 2.1.2 (Devices) 68 69 "Somewhat analogous to an EGL device, a CUDA device establishes a 70 namespace for CUDA operations. In the CUDA API, such a device is 71 represented by a C int. For more details, see the CUDA 72 documentation." 73 74Changes to section 3.2 (Device Enumeration) 75 76 Replace the paragraph immediately following the prototype for 77 eglQueryDeviceAttribEXT: 78 79 "The only valid value of <attribute> is EGL_CUDA_DEVICE_NV. On 80 success, EGL_TRUE is returned, and a valid CUDA device handle 81 corresponding to the EGL device is returned in <value>. This handle 82 is compatible with CUDA API functions." 83 84Issues 85 86 None 87 88Revision History 89 90 Version 1, 2014/06/24 (Michael Chock) 91 - initial version. 92