-
Notifications
You must be signed in to change notification settings - Fork 22
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
bad_alloc #1
Comments
@ronghongbo The HLS backend cannot be used with JIT (i.e. func.realize()) yet. |
jingpu
pushed a commit
that referenced
this issue
Aug 30, 2016
Tools::Image<T> constructs from array
jingpu
pushed a commit
that referenced
this issue
Jun 14, 2017
Two changes: 1) Use 32 free bits in the IRNode to store the IRNodeType, so that it can be gotten at by a load instead of having to call a virtual function 2) Change things to a style where any function that's going to make a copy of an Expr takes it by value, and then does a std::move internally at its last use. This avoids a bunch of atomic ops and conditional branches in caller code in the case where you're passing in an rvalue. With these changes, lowering local laplacian gets about 12% faster (1.5s -> 1.33s). Most of the win is from change #1 These are being done in advance of a planned change to simplify the simplifier to be more concise and use less stack space, so hopefully the fact that this represents a partial reversion of #1810 won't bite us.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hello Jing,
Here is a small test case that runs into a bad_alloc error:
Halide-HLS]$ g++ -std=c++11 -g -fno-omit-frame-pointer -fno-rtti -Wall -Werror -Wno-unused-function -Wcast-qual -Wignored-qualifiers -Wno-comment -Wsign-compare -O3 test/correctness/gpu_dynamic_shared.cpp -Iinclude -Lbin -lHalide -lpthread -ldl -lz -rdynamic -Wl,--rpath=/home/hrong/Halide-HLS/bin -o t
Halide-HLS]$ ./t
Warning at test/correctness/gpu_dynamic_shared.cpp:34:
No linebuffer inserted after function f.
Warning at test/correctness/gpu_dynamic_shared.cpp:34:
No linebuffer inserted after function .
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted (core dumped)
Thanks!
Hongbo
The text was updated successfully, but these errors were encountered: