- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all,
I have been experiencing something quite odd for the past two days and cannot manage to figure out the exact reason. What happens is that I get the following error message when compiling my kernel with v14.1: system_integrator: hdl.cpp:459: hdl::signal1::dimension::dimension(int, int): assertion `size > 0' failed.error: system integrator failed.
In my kernel, I start with declaring a 2D table in the private memory space, something like: int tab[15][16000]. Next, I use 2 nested loops to initialize each entry to 0. So far, no problem at compilation. Then comes the "meat" of the kernel: another 2 nested loops that performs some computation based on the 2D tab values and stores updated values back to it. I have no problem retrieving values: code line such as " int tmp_val = tab[j]; " works normally and compilation succeeds.
what actually causes problem is when i try to update the value in the table using code like this: " tab[j] = tmp_val; ". As a result, I get the error message cited above. Checking the compilation report shows that only 58% of the memory blocks are used, which I assume means that the error is not caused by a lack of private memory. I have tried several things such as declaring the tab in the local memory space. Result: the same error remains. Surprisingly, when placing the tab in the global memory space, compilation ends without any trouble, which makes me very confused and forces me to review my assumption about private memory shortage... Has anyone experienced or tried something similar? Any help or comment is welcome. Thanks in advance. David
Link Copied
0 Replies

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page