[LLVMdev] RFC: Binary format for instrumentation based profiling data

Evan Cheng evan.cheng at apple.com
Fri Apr 18 15:24:44 PDT 2014


On Apr 18, 2014, at 12:47 PM, Chandler Carruth <chandlerc at google.com> wrote:

> 
> On Fri, Apr 18, 2014 at 12:22 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> I agree the top priority should always be "getting it right”. But I can’t agree with this thinking completely. This has to be balanced with pragmatism. If we completely disregard the practical concerns of commercial use, it makes LLVM hostile towards an important group of users.
> 
> Clearly, I can't argue with that. =] We benefit from it as well. And I don't think I'm arguing against a pragmatic approach in this case, although I'm sorry if it comes off that way.

I didn’t think that’s what you were suggesting. But I wanted to make sure we are on the same page. Sometimes I felt like the arguments in these threads are starting to take on a “religious” tone. I really don’t want to see that happen.

> 
> Just so we're on the same page, the only real question in my mind is: can we make breaking changes as we iterate on the design.
> 
> What I would like to do is figure out the right design first, incrementally, trying one format, and seeing how it does, but potentially with backwards incompatible changes. Once we have the experience and know what the right format is, *then* we should consider pragmatic concerns such as how to structure support for reading legacy formats, or formats outside of the control of the project. I think if we start off with a format that we can't change because of external reasons (whatever they may be), it will be much harder to incrementally get to the right design. Does that seem reasonable (and hopefully help explain the concrete suggestion I'm making)?


Yes and no. I agree that we should try to get the design right. We should not be afraid to make changes to drop technical debts even if it’s inconvenient. In this specific discussion, I obviously agree we should come up with a method to support non-mainline formats. However, I don’t think it’s always possible to come up with the a design that’s 100% perfect. And the only way we can get real world feedback is to get it out there so people can use it. I fear we are straying a little too far from iterative approach that LLVM has always encouraged.

Evan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140418/7a1017e6/attachment.html>


More information about the llvm-dev mailing list