Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove access to underlying contiguous TL buffer in Flip op #3280

Merged
merged 2 commits into from
Aug 26, 2021

Conversation

klecki
Copy link
Contributor

@klecki klecki commented Aug 24, 2021

Description

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactoring (Redesign of existing code that doesn't affect functionality)
  • Other (e.g. Documentation, Tests, Configuration)

What happened in this PR

Remove only the mutable_data and data usage
in GPU variant.

Tested with enforced shapes.
This op still uses per-sample approach in both
CPU and GPU variants, this is left unchanged.

Additional information

  • Affected modules and functionalities:
    Flip

  • Key points relevant for the review:

Checklist

Tests

  • Existing tests apply
  • New tests added
    • Python tests
    • GTests
    • Benchmark
    • Other
  • N/A

Documentation

  • Existing documentation applies
  • Documentation updated
    • Docstring
    • Doxygen
    • RST
    • Jupyter
    • Other
  • N/A

DALI team only

Requirements

  • Implements new requirements
  • Affects existing requirements
  • N/A

REQ IDs: N/A

JIRA TASK: N/A

@klecki
Copy link
Contributor Author

klecki commented Aug 24, 2021

!build

@dali-automaton
Copy link
Collaborator

CI MESSAGE: [2833186]: BUILD STARTED

@klecki klecki changed the title Remove access to underlying contiguous TL buffers in Flip Remove access to underlying contiguous TL buffer in Flip Aug 24, 2021
@klecki klecki changed the title Remove access to underlying contiguous TL buffer in Flip Remove access to underlying contiguous TL buffer in Flip op Aug 24, 2021
@dali-automaton
Copy link
Collaborator

CI MESSAGE: [2833186]: BUILD PASSED

Comment on lines 31 to 37
input.type().id(), DType, auto in_shape = TransformShapes(input.shape(), input.GetLayout());
auto in_view = reshape<flip_ndim>(view<const DType>(input), in_shape);
kernels::KernelContext ctx; ctx.gpu.stream = stream; kernels::FlipGPU<DType> kernel;
auto reqs = kernel.Setup(ctx, in_view);
kernels::OutListGPU<DType, flip_ndim> out_view(output.mutable_data<DType>(),
reqs.output_shapes[0].to_static<flip_ndim>());
kernel.Run(ctx, out_view, in_view, depthwise, vertical, horizontal);
)
auto out_view =
reshape<flip_ndim>(view<DType>(output), reqs.output_shapes[0].to_static<flip_ndim>());
kernel.Run(ctx, out_view, in_view, depthwise, vertical, horizontal);)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it justified to have multiple statements per line? Generally we'd rather avoid such...

I'd be in favour of extracting these to a separate function:

template<typename DType>
void f(...) {
      auto in_shape = TransformShapes(input.shape(), input.GetLayout());
      auto in_view = reshape<flip_ndim>(view<const DType>(input), in_shape);
      kernels::KernelContext ctx;
      ctx.gpu.stream = stream;
      kernels::FlipGPU<DType> kernel;
      auto reqs = kernel.Setup(ctx, in_view);
      auto out_view =
          reshape<flip_ndim>(view<DType>(output), reqs.output_shapes[0].to_static<flip_ndim>());
      kernel.Run(ctx, out_view, in_view, depthwise, vertical, horizontal);)
}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no idea why it happened here, probably due to the old DALI_TYPE_SWITCH the formatter got confused.

I will fix it, I don't think we need additional function though.

Signed-off-by: Krzysztof Lecki <[email protected]>
@klecki
Copy link
Contributor Author

klecki commented Aug 26, 2021

!build

@dali-automaton
Copy link
Collaborator

CI MESSAGE: [2848854]: BUILD STARTED

@dali-automaton
Copy link
Collaborator

CI MESSAGE: [2848854]: BUILD PASSED

@klecki klecki merged commit cc80b7f into NVIDIA:main Aug 26, 2021
@JanuszL JanuszL mentioned this pull request Mar 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants