Big kernel with internal error

Big kernel with internal error

HiI developped a kernel with ARBB for solving Partial Differentiel Equation in 2D with stencil.Everything is fine with the emulator (ARBB_EMULATE=1)though being very slow comparing with a pure C++ version.Without the emulator, even withARBB_OPT_LEVL=O0, the code runs a long time ending with aLow level optimization (LLO) got the exceptions:ILLEGAL_MEM_OP: Access the illegal memory address => Accessing not mapped address [0x50] at IP[0x7fd6736ffad5]. Failed!terminate called after throwing an instance of 'arbb_2::internal_error' what(): Internal error: CTE_COMPILER_ERROR COMP_ERROR: Dynamic Compiler Internal ErrorAbortedLow level optimization (LLO) got the exceptions:ILLEGAL_MEM_OP: Access the illegal memory address => Accessing not mapped address [0x50] at IP[0x7fd6736ffad5]. Failed!terminate called after throwing an instance of 'arbb_2::internal_error' what(): Internal error: CTE_COMPILER_ERROR COMP_ERROR: Dynamic Compiler Internal ErrorAbortedAccording to you is it an error coming from my soft or an arbb bug ?Due to the message i suspect an arbb bug. I may be wrong.Sincerely yours

3 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione

The "dynamic compiler internal error" looks like an ArBB bug. But it is also very likely some user errors or misuses are involved. Without looking at your source code it is hard to say. Is it possible for you to narrow down the scope of the problem and provide us a minimal test case to reproduce the problem?

Hint: Because the exception appears to be related to illegal memory accesses, you'd first check the following things:

  • Do you use arbb::bind()? Are your ArBB containers bound C/C++ arrays correctly (e.g. sizes, strides, etc.)?
  • Are all ArBB dense containers passed to a function having the same size and shape?
  • Is your problem size too big? Do you need to ajust ARBB_INIT_HEAP or ARBB_MAX_HEAP?

Please let us know. Thanks.

Quoting Zhang Z (Intel)
The "dynamic compiler internal error" looks like an ArBB bug. But it is also very likely some user errors or misuses are involved. Without looking at your source code it is hard to say. Is it possible for you to narrow down the scope of the problem and provide us a minimal test case to reproduce the problem?

Hint: Because the exception appears to be related to illegal memory accesses, you'd first check the following things:

  • Do you use arbb::bind()? Are your ArBB containers bound C/C++ arrays correctly (e.g. sizes, strides, etc.)?
  • Are all ArBB dense containers passed to a function having the same size and shape?
  • Is your problem size too big? Do you need to ajust ARBB_INIT_HEAP or ARBB_MAX_HEAP?

Please let us know. Thanks.

Hi

  • I dont use any bind. Everything is done in ARBB
  • All dense containers have the same size and in debug mode memory verification should assure that i stay in the bounds
  • the problem is very small

I add the problem in 4 files.

Accedere per lasciare un commento.