Hello all, The rich history of binary distribution formats based on LLVM [0][1][2][3][4] has proven LLVM's viability as a launchpad for stable platforms. However, issues with compilation time and compiler size have suggested that the translator must do too much, i.e. LLVM IR isn't a low-level enough virtual machine. So we introduce DAGIR ("dagger"), a new portable close to the metal format, designed to unlock the potential of any architecture for the digital world. DAGIR is a stable binary format derived from LLVM's SelectionDAG virtual machine, a proven platform for optimization and selection of machine architectures. Together with a new linker ("celestia") and the well-known STABS ("stabs") debugging format, this is a platform with a bright future and a host of possibilities for stable, portable software that will power a sea of nodes of the coming internet of virtual things. We look forward to working with the community in supporting this exciting new development in pervasive portable performance. [0] http://developer.android.com/guide/topics/renderscript/compute.html [1] https://developer.chrome.com/native-client/nacl-and-pnacl [2] https://www.khronos.org/spir [3] http://www.hsafoundation.com/hsa-developer-tools/ [4] https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html#//apple_ref/doc/uid/TP40012582-CH35-SW2 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160401/79f37d1b/attachment.html>
Hi Derek, I don't understand your message. Is this an announcement or a proposal? If it is an announcement, is the software available somewhere? The SelectionDAG has various phases; on which phase are you basing your DAGIR? Is this pre-legalization, is it type legalized, operation legalized, etc? Our current SDAG-based isel is indeed expensive, but I'm not under the impression that the SDAGBuilder process is a large contributor. Rather, it is the rest of the legalization and selection process that is expensive. However, if you base your distribution IR on a post-legalization SDAG to avoid that expense, then I don't understand why that will be particularly portable. As an optimizer IR, the SelectionDAG, being basic-block local, has unfortunate limitations, and the community is working on a replacement (GlobalISel). The basic set of operations probably won't change, but if you're closely tied to the current SDAG infrastructure, you'll need a migration plan. -Hal ----- Original Message -----> From: "Derek Schuff via llvm-dev" <llvm-dev at lists.llvm.org> > To: "llvm-dev" <llvm-dev at lists.llvm.org> > Sent: Friday, April 1, 2016 11:02:27 AM > Subject: [llvm-dev] DAGIR> Hello all, > The rich history of binary distribution formats based on LLVM > [0][1][2][3][4] has proven LLVM's viability as a launchpad for > stable platforms. However, issues with compilation time and compiler > size have suggested that the translator must do too much, i.e. LLVM > IR isn't a low-level enough virtual machine. So we introduce DAGIR > ("dagger"), a new portable close to the metal format, designed to > unlock the potential of any architecture for the digital world. > DAGIR is a stable binary format derived from LLVM's SelectionDAG > virtual machine, a proven platform for optimization and selection of > machine architectures. Together with a new linker ("celestia") and > the well-known STABS ("stabs") debugging format, this is a platform > with a bright future and a host of possibilities for stable, > portable software that will power a sea of nodes of the coming > internet of virtual things. We look forward to working with the > community in supporting this exciting new development in pervasive > portable performance.> [0] > http://developer.android.com/guide/topics/renderscript/compute.html > [1] https://developer.chrome.com/native-client/nacl-and-pnacl > [2] https://www.khronos.org/spir > [3] http://www.hsafoundation.com/hsa-developer-tools/ > [4] > https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html#//apple_ref/doc/uid/TP40012582-CH35-SW2> _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev-- Hal Finkel Assistant Computational Scientist Leadership Computing Facility Argonne National Laboratory -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160401/34267469/attachment-0001.html>
Hi Derek, just a quick question:> So we introduce DAGIR ("dagger"),Who is "we"? Google? A specific group within Google? Somebody else? What is your roadmap? Is it sponsored, or a volunteer effort? These questions have a lot of overlap, so feel free to post a summary answer. Regards, Jo
I think there are a lot of people on this list who are not familiar with April Fools Day. On Fri, Apr 1, 2016 at 10:46 AM, Joachim Durchholz via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi Derek, > > just a quick question: > > So we introduce DAGIR ("dagger"), >> > > Who is "we"? > Google? A specific group within Google? Somebody else? > What is your roadmap? Is it sponsored, or a volunteer effort? > > These questions have a lot of overlap, so feel free to post a summary > answer. > > Regards, > Jo > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160401/3f51e1cf/attachment.html>
If the linker were named something like Binary Linker for Active DEvelopers, or Extensible DaG Emitter ("blade" or "edge") to go along with "dagger" and "stabs" I'd be absolutely sure what was going on. --paulr From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Hal Finkel via llvm-dev Sent: Friday, April 01, 2016 9:18 AM To: Derek Schuff Cc: llvm-dev Subject: Re: [llvm-dev] DAGIR Hi Derek, I don't understand your message. Is this an announcement or a proposal? If it is an announcement, is the software available somewhere? The SelectionDAG has various phases; on which phase are you basing your DAGIR? Is this pre-legalization, is it type legalized, operation legalized, etc? Our current SDAG-based isel is indeed expensive, but I'm not under the impression that the SDAGBuilder process is a large contributor. Rather, it is the rest of the legalization and selection process that is expensive. However, if you base your distribution IR on a post-legalization SDAG to avoid that expense, then I don't understand why that will be particularly portable. As an optimizer IR, the SelectionDAG, being basic-block local, has unfortunate limitations, and the community is working on a replacement (GlobalISel). The basic set of operations probably won't change, but if you're closely tied to the current SDAG infrastructure, you'll need a migration plan. -Hal ________________________________ From: "Derek Schuff via llvm-dev" <llvm-dev at lists.llvm.org> To: "llvm-dev" <llvm-dev at lists.llvm.org> Sent: Friday, April 1, 2016 11:02:27 AM Subject: [llvm-dev] DAGIR Hello all, The rich history of binary distribution formats based on LLVM [0][1][2][3][4] has proven LLVM's viability as a launchpad for stable platforms. However, issues with compilation time and compiler size have suggested that the translator must do too much, i.e. LLVM IR isn't a low-level enough virtual machine. So we introduce DAGIR ("dagger"), a new portable close to the metal format, designed to unlock the potential of any architecture for the digital world. DAGIR is a stable binary format derived from LLVM's SelectionDAG virtual machine, a proven platform for optimization and selection of machine architectures. Together with a new linker ("celestia") and the well-known STABS ("stabs") debugging format, this is a platform with a bright future and a host of possibilities for stable, portable software that will power a sea of nodes of the coming internet of virtual things. We look forward to working with the community in supporting this exciting new development in pervasive portable performance. [0] http://developer.android.com/guide/topics/renderscript/compute.html [1] https://developer.chrome.com/native-client/nacl-and-pnacl [2] https://www.khronos.org/spir [3] http://www.hsafoundation.com/hsa-developer-tools/ [4] https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html#//apple_ref/doc/uid/TP40012582-CH35-SW2 _______________________________________________ LLVM Developers mailing list llvm-dev at lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -- Hal Finkel Assistant Computational Scientist Leadership Computing Facility Argonne National Laboratory -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160401/c0543a0b/attachment.html>