<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Vikram,<div class=""><br class=""></div><div class="">It is a bit more that just “efficient (de)serialization” as there is some amount of tradeoff to make between “size” vs “speed” vs “flexibility” (which are all some sort of “efficient”).</div><div class="">For instance what if we get a faster deserialization but got larger size? That might be an issue for some people who’d like to ship bitcode.</div><div class="">Another thing is that we may get better speed/size by optimizing for the “streaming” case but losing the flexibility of loading only a subpart of the bitcode.</div><div class=""><br class=""></div><div class="">This is where I’d be interested (and I’ll pay attention) during the BoF to hear about all the use cases folks are envisioning.</div><div class=""><br class=""></div><div class="">— </div><div class="">Mehdi<br class=""><div><blockquote type="cite" class=""><div class="">On Oct 17, 2016, at 6:55 AM, Adve, Vikram Sadanand <<a href="mailto:vadve@illinois.edu" class="">vadve@illinois.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" class="">

<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Hi Mehdi,
<div class=""><br class="">
</div>
<div class="">Yes, we did see your earlier post.  Efficient (de)serialization is definitely important for both exporting (a la LTO and ThinLTO) and for shipping code as IR.  I expect most use cases of the latter would benefit.</div>
<div class=""><br class="">
</div>
<div class="">-—Vikram</div>
<div class="">
<div class="">
<div class=""><br class="">
// Vikram S. Adve<br class="">
// Professor, Department of Computer Science<br class="">
// University of Illinois at Urbana-Champaign<br class="">
// <a href="mailto:vadve@illinois.edu" class="">vadve@illinois.edu</a><br class="">
// <a href="http://llvm.org/" class="">http://llvm.org</a><br class="">
</div>
<div class=""><br class="webkit-block-placeholder">
</div>
<br class="">
<div class="">
<blockquote type="cite" class="">
<div class="">On Oct 14, 2016, at 2:41 PM, Mehdi Amini <<a href="mailto:mehdi.amini@apple.com" class="">mehdi.amini@apple.com</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Hi,
<div class=""><br class="">
</div>
<div class="">I think as soon as you want to have long-lived IR, the bitcode serialization is a corner stone piece of the system. </div>
<div class="">Somehow related, I posted this recently to llvm-dev: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.llvm.org_pipermail_llvm-2Ddev_2016-2DSeptember_105273.html&d=DQMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=b7uK7dJM4Fx7J_ehsuohEdD-6NdkoLyTwBFfHX-XKcc&m=2ty5V_F2rdMdBJPJVLuXAmeH-EXUvcMMe-ug_QqIqZA&s=byMygV6Z_7kXGJPWr5dD1wi0Gy13O7j0EXYEXDeW5Is&e=" class="">http://lists.llvm.org/pipermail/llvm-dev/2016-September/105273.html</a> ;
 I’d be interested how we could leverage a better serialization for various use-cases!</div>
<div class=""><br class="">
</div>
<div class="">Best,</div>
<div class=""><br class="">
</div>
<div class="">— </div>
<div class="">Mehdi<br class="">
<div class=""><br class="">
</div>
<div class=""><br class="">
<div class="">
<blockquote type="cite" class="">
<div class="">On Oct 14, 2016, at 11:32 AM, Will Dietz via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">
<div class="">Hi LLVM’ers!</div>
<div class=""><br class="">
</div>
<div class="">We are hosting a BoF at this year's Dev Meeting on a subject we hope will be of interest to some (many?) of you:</div>
<div class="">shipping software (entirely) as LLVM IR.</div>
<div class=""><br class="">
</div>
<div class="">You can find our proposal in the meeting schedule online:</div>
<div class=""><br class="">
</div>
<div class=""><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__llvmdevelopersmeetingbay2016.sched.org_event_8Yzq_shipping-2Dsoftware-2Das-2Dllvm-2Dir&d=DQMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=b7uK7dJM4Fx7J_ehsuohEdD-6NdkoLyTwBFfHX-XKcc&m=2ty5V_F2rdMdBJPJVLuXAmeH-EXUvcMMe-ug_QqIqZA&s=f7oVXD0X8QKcnInXVH2m-a2ddcj04_t-Qnwbj8dUwmA&e=" class="">https://llvmdevelopersmeetingbay2016.sched.org/event/8Yzq/shipping-software-as-llvm-ir</a></div>
<div class=""><br class="">
</div>
<div class="">The BoF is scheduled to last 45 minutes, which will go by very quickly!</div>
<div class="">To make the best use of the time, we'd like to get a head-start on some of the discussions,</div>
<div class="">and get a feel for what topics people are most interested in discussing.</div>
<div class="">To start things off, here are a few suggestions for things to discuss.</div>
<div class="">Thoughts -- and suggestions for additional topics -- welcome.</div>
<div class=""><br class="">
</div>
<div class="">* Do you ship software as IR today? What lessons have you learned?</div>
<div class="">* Challenges of shipping software as IR</div>
<div class="">* Representing software: Beyond a single module</div>
<div class="">* From build systems to LLVM IR: toolchains and more</div>
<div class="">* What would you do with a platform where everything was available as LLVM IR?</div>
<div class="">* What tools or infrastructure would help make that happen?</div>
<div class=""><br class="">
</div>
<div class="">(Some background to explain why we’re interested in this topic.)</div>
<div class="">ALLVM: We have a project in our group exploring the benefits of shipping</div>
<div class="">*all* software on a system as IR.  We are building a prototype ALLVM system</div>
<div class="">that makes it relatively easy to package and ship software in this way.</div>
<div class="">We are researching the benefits this could provide for performance and</div>
<div class="">for general software development.  We aim to make the ALLVM prototype</div>
<div class="">available in open source form to enable other groups to explore these goals.</div>
<div class="">Contact us off-list if you’d like to learn more about the ALLVM project.</div>
<div class=""><br class="">
</div>
<div class="">~Will (and Vikram)</div>
</div>
_______________________________________________<br class="">
LLVM Developers mailing list<br class="">
<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class="">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" class="">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="">
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>

</div></blockquote></div><br class=""></div></body></html>