Coder Social home page Coder Social logo

Comments (3)

rimolive avatar rimolive commented on June 9, 2024

Can you ellaborate? I understand you would like to test pipelines locally but depending on the resources required to train that model you need a production-ready kubernetes cluster. If you can provide code snippets, configuration files, or else it will help us understand the problem.

from pipelines.

Nishikoh avatar Nishikoh commented on June 9, 2024

The example above is an example of object detection using YOLOX. In the production environment, I will be using Vertex AI pipelines for training, but first I want to make sure that the components work as intended in the local environment. As the local execution is a behaviour check, I run with small datasets and a small number of epochs. Full size datasets and epochs will be run on Vertex AI pipelines for the production environment.

I will give an example that is difficult to prepare as a code snippet for YOLOX above, but requires CUDA for execution. This requires an option to be GPU aware at runtime.

from kfp import dsl, local

local.init(runner=local.DockerRunner())


@dsl.container_component
def gpu_processing():
    return dsl.ContainerSpec(
        image="gcr.io/google_containers/cuda-vector-add:v0.1",
    )


task = gpu_processing()

When I run it, it does not detect CUDA and gives me an error.

02:21:39.615 - INFO - Executing task 'gpu-processing'
02:21:39.615 - INFO - Streamed logs:

    Pulling image 'gcr.io/google_containers/cuda-vector-add:v0.1'
    Image pull complete

    Failed to allocate device vector A (error code CUDA driver version is insufficient for CUDA runtime version)!
    [Vector addition of 50000 elements]

I expect the following results.

10:43:49.816 - INFO - Executing task 'gpu-processing'
10:43:49.816 - INFO - Streamed logs:

    Found image 'gcr.io/google_containers/cuda-vector-add:v0.1'

    [Vector addition of 50000 elements]
    Copy input data from the host memory to the CUDA device
    CUDA kernel launch with 196 blocks of 256 threads
    Copy output data from the CUDA device to the host memory
    Test PASSED
    Done
10:43:51.690 - INFO - Task 'gpu-processing' finished with status SUCCESS
10:43:51.691 - INFO - Task 'gpu-processing' has no outputs

If the user can configure the Docker runtime options, the results will be as expected.

from pipelines.

rimolive avatar rimolive commented on June 9, 2024

Are you following this method to execute the pipeline? https://www.kubeflow.org/docs/components/pipelines/v2/local-execution/

from pipelines.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.