> Couldn't your accelerator backend simply read in the proposed IR string and optimize/codegen it?<br><br>Sure, it does, but that IR is long way from the final target-specific IR to be specialized in runtime. And in the proposed design both host and accelerator code seem to be intended for codegen before application execution. This is not always the case, moreover it implicitly reduces the visible use-scope of Polly, which is much more powerful and can also work together with JIT.<br>
<br>- D.<br><br><div class="gmail_quote">2012/7/26  <span dir="ltr"><<a href="mailto:dag@cray.com" target="_blank">dag@cray.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">"Dmitry N. Mikushin" <<a href="mailto:maemarcus@gmail.com">maemarcus@gmail.com</a>> writes:<br>
<br>
> Proposal made by Tobias is very elegant, but it seems to be addressing<br>
> the case when host and sub-architectures' code exist in the same time.<br>
<br>
</div>I don't know why that would have to be the case.  Couldn't your<br>
accelerator backend simply read in the proposed IR string and<br>
optimize/codegen it?<br>
<div class="im"><br>
> May I kindly point out that to our experience the really efficient<br>
> deeply specialized sub-architectures code may simply not exist at<br>
> compile time, while the generic baseline host code always can.<br>
<br>
</div>As I mentioned earlier, I am more concerned about the case where there<br>
is no accelerator compiler executed at runtime.  All the code for the<br>
host and accelerate needs to be available in native format at run time.<br>
A string representation in the object file doesn't allow that.<br>
<br>
                                   -Dave<br>
</blockquote></div><br>