Package org.lwjgl.opengl
Class GLXAMDGPUAssociation
- java.lang.Object
-
- org.lwjgl.opengl.GLXAMDGPUAssociation
-
public class GLXAMDGPUAssociation extends java.lang.Object
Native bindings to the GLX_AMD_gpu_association extension.There currently is no way for applications to efficiently use GPU resources in systems that contain more than one GPU. Vendors have provided methods that attempt to split the workload for an application among the available GPU resources. This has proven to be very inefficient because most applications were never written with these sorts of optimizations in mind.
This extension provides a mechanism for applications to explicitly use the GPU resources on a given system individually. By providing this functionality, a driver allows applications to make appropriate decisions regarding where and when to distribute rendering tasks.
Requires
OpenGL 1.5
,GLX 1.3
,EXT_framebuffer_object
andGLX_ARB_get_proc_address
.
-
-
Field Summary
Fields Modifier and Type Field Description static int
GLX_GPU_CLOCK_AMD
GLX_GPU_FASTEST_TARGET_GPUS_AMD
GLX_GPU_NUM_PIPES_AMD
GLX_GPU_NUM_RB_AMD
GLX_GPU_NUM_SIMD_AMD
GLX_GPU_NUM_SPI_AMD
GLX_GPU_OPENGL_VERSION_STRING_AMD
GLX_GPU_RAM_AMD
GLX_GPU_RENDERER_STRING_AMD
GLX_GPU_VENDOR_AMDAccepted by theproperty
parameter ofGetGPUInfoAMD
.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
glXBlitContextFramebufferAMD(long dstCtx, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter)
static long
glXCreateAssociatedContextAMD(int id, long share_list)
Creates an associated context.static long
glXCreateAssociatedContextAttribsAMD(int id, long share_context, int[] attribList)
Array version of:CreateAssociatedContextAttribsAMD
static long
glXCreateAssociatedContextAttribsAMD(int id, long share_context, java.nio.IntBuffer attribList)
Creates an associated context and requests a specific GL version.static boolean
glXDeleteAssociatedContextAMD(long ctx)
Deletes an associated context.static int
glXGetContextGPUIDAMD(long ctx)
Determines which GPU a context is attached to.static long
glXGetCurrentAssociatedContextAMD()
Queries the crrent associated context.static int
glXGetGPUIDsAMD(int maxCount, int ids)
Queries the IDs for available GPUs.static int
glXGetGPUInfoAMD(int id, int property, int dataType, java.nio.ByteBuffer data)
Queries GPU properties.static boolean
glXMakeAssociatedContextCurrentAMD(long ctx)
Makes an associated context current in the current thread.static long
nglXCreateAssociatedContextAttribsAMD(int id, long share_context, long attribList)
Unsafe version of:CreateAssociatedContextAttribsAMD
static int
nglXGetGPUInfoAMD(int id, int property, int dataType, int size, long data)
Unsafe version of:GetGPUInfoAMD
-
-
-
Field Detail
-
GLX_GPU_VENDOR_AMD, GLX_GPU_RENDERER_STRING_AMD, GLX_GPU_OPENGL_VERSION_STRING_AMD, GLX_GPU_FASTEST_TARGET_GPUS_AMD, GLX_GPU_RAM_AMD, GLX_GPU_CLOCK_AMD, GLX_GPU_NUM_PIPES_AMD, GLX_GPU_NUM_SIMD_AMD, GLX_GPU_NUM_RB_AMD, GLX_GPU_NUM_SPI_AMD
Accepted by theproperty
parameter ofGetGPUInfoAMD
.
-
-
Method Detail
-
glXBlitContextFramebufferAMD
public static void glXBlitContextFramebufferAMD(long dstCtx, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter)
-
glXCreateAssociatedContextAMD
public static long glXCreateAssociatedContextAMD(int id, long share_list)
Creates an associated context.
-
nglXCreateAssociatedContextAttribsAMD
public static long nglXCreateAssociatedContextAttribsAMD(int id, long share_context, long attribList)
Unsafe version of:CreateAssociatedContextAttribsAMD
-
glXCreateAssociatedContextAttribsAMD
public static long glXCreateAssociatedContextAttribsAMD(int id, long share_context, java.nio.IntBuffer attribList)
Creates an associated context and requests a specific GL version.
-
glXDeleteAssociatedContextAMD
public static boolean glXDeleteAssociatedContextAMD(long ctx)
Deletes an associated context.- Parameters:
ctx
- the GLXContext
-
glXGetContextGPUIDAMD
public static int glXGetContextGPUIDAMD(long ctx)
Determines which GPU a context is attached to.- Parameters:
ctx
- the GLXContext
-
glXGetCurrentAssociatedContextAMD
public static long glXGetCurrentAssociatedContextAMD()
Queries the crrent associated context.
-
glXGetGPUIDsAMD
public static int glXGetGPUIDsAMD(int maxCount, int ids)
Queries the IDs for available GPUs.
-
nglXGetGPUInfoAMD
public static int nglXGetGPUInfoAMD(int id, int property, int dataType, int size, long data)
Unsafe version of:GetGPUInfoAMD
-
glXGetGPUInfoAMD
public static int glXGetGPUInfoAMD(int id, int property, int dataType, java.nio.ByteBuffer data)
Queries GPU properties.
-
glXMakeAssociatedContextCurrentAMD
public static boolean glXMakeAssociatedContextCurrentAMD(long ctx)
Makes an associated context current in the current thread.- Parameters:
ctx
- the GLXContext
-
glXCreateAssociatedContextAttribsAMD
public static long glXCreateAssociatedContextAttribsAMD(int id, long share_context, int[] attribList)
Array version of:CreateAssociatedContextAttribsAMD
-
-