-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Always ensure gpu_threads count >= warp size of 32 #8656
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
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,7 +18,8 @@ add_halide_generator(iir_blur.generator SOURCES iir_blur_generator.cpp) | |
add_halide_library(iir_blur FROM iir_blur.generator) | ||
add_halide_library(iir_blur_auto_schedule FROM iir_blur.generator | ||
GENERATOR iir_blur | ||
AUTOSCHEDULER Halide::Mullapudi2016) | ||
AUTOSCHEDULER Halide::Mullapudi2016 | ||
PARAMS autoscheduler.experimental_gpu_schedule=1) | ||
|
||
# Main executable | ||
add_executable(iir_blur_filter filter.cpp) | ||
|
@@ -31,11 +32,18 @@ target_link_libraries(iir_blur_filter PRIVATE | |
# Test that the app actually works! | ||
set(IMAGE ${CMAKE_CURRENT_LIST_DIR}/../images/rgba.png) | ||
if (EXISTS ${IMAGE}) | ||
configure_file(${IMAGE} rgba.png COPYONLY) | ||
add_test(NAME iir_blur_filter | ||
COMMAND iir_blur_filter rgba.png out.png) | ||
set_tests_properties(iir_blur_filter PROPERTIES | ||
LABELS iir_blur | ||
PASS_REGULAR_EXPRESSION "Success!" | ||
SKIP_REGULAR_EXPRESSION "\\[SKIP\\]") | ||
if (Halide_TARGET MATCHES "opencl") | ||
# Error message: | ||
# | ||
# Error: OpenCL error: CL_INVALID_COMMAND_QUEUE clFinish failed | ||
message(WARNING "Skipping Mullapudi2016's GPU auto-schedules for OpenCL target.") | ||
else () | ||
configure_file(${IMAGE} rgba.png COPYONLY) | ||
add_test(NAME iir_blur_filter | ||
COMMAND iir_blur_filter rgba.png out.png) | ||
set_tests_properties(iir_blur_filter PROPERTIES | ||
LABELS iir_blur | ||
PASS_REGULAR_EXPRESSION "Success!" | ||
SKIP_REGULAR_EXPRESSION "\\[SKIP\\]") | ||
endif () | ||
Comment on lines
-34
to
+48
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @alexreinking Help wanted to troubleshoot the CMake (re-)configure error:
How do I skip There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Or, is it simply a regression of the Buildbot server? |
||
endif () |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Errors on the Buildbot
halide-testbranch-main-llvm20-x86-64-osx-cmake
:I don't have an OSX machine to reproduce the error. Any insights?
Here's the corresponding IR that might trigger the error:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The buffer allocation of more than 2GB is outside of this IR. Either way strange that Metal complains about big buffers...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am running out of ideas... I am not even sure if I am correctly reproducing the errors on the Buildbot. And I don't have an Mac machine to test on. Any insights?
How expensive (as in cash) is to run a job on the Halide Buildbot? I plan to run ad hoc debugging code on this PR to print the
stmt
on the server as the error log, but I am not sure if it is frown upon by server owners....There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well you can always generate the IR and the code. You'll not be able to execute it though. But nothing stops you from locally compiling a Metal pipeline.