Skip to content

FR: reorganize the autoscheduler(s) in the codebase #4053

@steven-johnson

Description

@steven-johnson

From a Gitter discussion:

The 'classic' autoscheduler lives in src/.

The ML-based autoscheduler lives primarily in apps/autoscheduler; it can't quite live in Halide proper (as it depends on Halide itself) but it isn't really an app either.

It would be nice if the autoschedulers could be refactored into their own area (e.g., src/autoschedule, or a new toplevel dir, etc) to make their distinctions and dependencies clear; this might also allow for other special-purpose autoschedulers to be more easily added (e.g. a dumb compute_root everything variants).

It would make it much easier for newcomers trying to understand the codebase wrt autoscheduler(s).

(This would likely be entirely a code-shuffling and buildsystem-hacking exercise, but one worth doing for longterm code health.)

Metadata

Metadata

Assignees

Labels

autoschedulerRelated to one or more of the Autoschedulerscode_cleanupNo functional changes. Reformatting, reorganizing, or refactoring existing code.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions