Halide icon indicating copy to clipboard operation
Halide copied to clipboard

Merging GPU autoscheduler

Open BachiLi opened this issue 4 years ago • 11 comments

We should at some point port the GPU autoscheduler (in standalone_autoscheduler_gpu) to the main branch. @aekul

BachiLi avatar Dec 31 '20 17:12 BachiLi

What is the plan of this issue?

neoskypig avatar May 07 '21 06:05 neoskypig

Hopefully it will be merged in the near future but there are no concrete plans at the moment.

aekul avatar May 24 '21 16:05 aekul

@aekul Is there concern of bitrot on the standalone_autoscheduler_gpu branch? I would offer to help if I was a bit more familiar with halide internals. I would hate to see that branch not get merged in.

ryanstout avatar May 24 '21 20:05 ryanstout

I am trying to push this forward, here's my rough plan:

  1. Submit an initial PR to merge gpu autoscheduler code from the branch into src/autoschedulers/anderson2021. This PR aims to fix incompatibility between the old code base and master. Build pass and minimal tests are what we need at this moment. (1 giant PR)
  2. Since adams2019 and anderson2021 shares some code(e.g. Weights.cpp), it makes sense to me that we extract the common parts and make them reusable across schedulers. We need to make sure this will not damage the existing plugin system and will not break existing tests (if any). (1 or several refactoring PRs)
  3. Adding tests, CMake, documentations to anderson2021 (several PRs)

cc @BachiLi @abadams @aekul

TH3CHARLie avatar Oct 21 '21 00:10 TH3CHARLie

Is this still active?

steven-johnson avatar Jul 12 '22 17:07 steven-johnson

@steven-johnson I would love to see it land at some point, not holding my breath at this point though :-)

ryanstout avatar Jul 12 '22 17:07 ryanstout

@steven-johnson I would love to see it land at some point, not holding my breath at this point though :-)

What are the obstacles to moving forward with it, as far as you know?

steven-johnson avatar Jul 12 '22 18:07 steven-johnson

@steven-johnson I think it's just really stale at this point. I wasn't involved in it though, so thats an outsider's look at it. I'm sure there's a lot of details to get it brought up before it could be merged. Thanks!

ryanstout avatar Jul 12 '22 18:07 ryanstout

yeah the biggest obstacle is that Luke or myself could not find time to push this forward before, I will meet with Andrew and Derek later today and I will bring this up to them and see if we can have a swift plan to merge this.

TH3CHARLie avatar Jul 12 '22 18:07 TH3CHARLie

I haven't had a lot of time to work on this but have been preparing a basic PR lately that should be ready sometime this week. It doesn't attempt to merge/de-duplicate the code that's shared with adams2019 so if that is a blocker, then more time/work will be required.

aekul avatar Jul 12 '22 19:07 aekul

Been meaning to try this out too but was unable to hack out something from the branch to use. I would welcome a quick "v.1" version as an end user.

ashishUthama avatar Jul 13 '22 02:07 ashishUthama

Hi I noticed the PR #6856 has been merged around 4 days ago. What is the release schedule? v16.0 ?

Asking because I am compiling the Halide binary from source, which I found is not scalable in a long run.

antonysigma avatar Apr 10 '23 14:04 antonysigma

Yes, this should go out in Halide 16

abadams avatar Apr 10 '23 15:04 abadams