Ctrl + k

or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/pyopencl@2025.2.x
tile.json

tessl/pypi-pyopencl

tessl install tessl/pypi-pyopencl@2025.2.0

Python wrapper for OpenCL enabling GPU and parallel computing with comprehensive array operations and mathematical functions

Agent Success

Agent success rate when using this tile

86%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.28x

Baseline

Agent success rate without this tile

67%

rubric.jsonevals/scenario-7/

{
  "context": "This criteria evaluates an engineer's proficiency in using PyOpenCL's OpenGL interoperability features, specifically the acquire and release operations for sharing graphics resources between OpenGL and OpenCL compute contexts. The focus is on correct usage of buffer sharing, synchronization primitives, and resource lifecycle management.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "GL context creation",
      "description": "Creates an OpenCL context with OpenGL sharing enabled using appropriate context properties (e.g., cl.context_properties with GL context and platform specifications)",
      "max_score": 15
    },
    {
      "name": "Buffer wrapping",
      "description": "Correctly wraps the OpenGL buffer using cl.GLBuffer.from_gl_buffer() or equivalent to create a shared OpenCL buffer object",
      "max_score": 15
    },
    {
      "name": "Acquire operation",
      "description": "Uses cl.enqueue_acquire_gl_objects() to gain exclusive compute access to the GL buffer before performing any OpenCL operations",
      "max_score": 20
    },
    {
      "name": "Release operation",
      "description": "Uses cl.enqueue_release_gl_objects() to return the buffer to OpenGL control after compute operations complete",
      "max_score": 20
    },
    {
      "name": "Kernel execution",
      "description": "Executes an OpenCL kernel or operation that processes the shared buffer data between acquire and release calls",
      "max_score": 15
    },
    {
      "name": "Event synchronization",
      "description": "Properly uses wait_for parameter or event.wait() to ensure acquire completes before processing and processing completes before release",
      "max_score": 10
    },
    {
      "name": "Error handling",
      "description": "Handles exceptions that may occur during acquire/release operations or validates input parameters as specified in the API",
      "max_score": 5
    }
  ]
}