GPU resource allocation on sidecar transforms

I have a sidecar transform that needs to use a GPU. How should I configure the resources?

  1. @sidecar(image="my-compute-module", tag="0.0.1", volumes=[Volume("shared")], resource_profile="LARGE_CPU_LARGE_MEMORY_GPU_ENABLED")

  2. @configure(["NUM_EXECUTORS_1", "EXECUTOR_GPU_ENABLED", "EXECUTOR_GPUS_1"])

  3. both?

Hey Michaello,

A: Both

  • @sidecar(resource_profile="…GPU_ENABLED) allocates GPU to the sidecar
  • @@configure([“EXECUTOR_GPU_ENABLED”, …]) allocates GPU to the Spark Exec.

They’re separate processes, so you need both. If only one side has GPU, the other falls back to CPU silently.


Felipe Montes
Development Advisor
Follow me @ Linkedin: Felipe Montes; or GitHub: Brazillianerd

Found the answer - in my case I only needed option 1
@sidecar(image="my-compute-module", tag="0.0.1", volumes=[Volume("shared")], resource_profile="LARGE_CPU_LARGE_MEMORY_GPU_ENABLED")
The executor itself doesn’t need a GPU, only the sidecar does