What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
Unfortunately the SSA back end slows down the overall compilation by about 2x compared to using the old back end. This is not fundamental: we've spent almost all the development time focused on correctness and completeness, not on making it fast. The compiler work in the Go 1.7 cycle will focus on recovering much of that compile time loss.
--
You received this message because you are subscribed to the Google Groups "golang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
What about multy-valued channels?
- I'm going to complete the new export format. It's a binary format, so there will also be a mechanism to display it in a human-readable form.
Hi,
I'd like to go forward with the 'reflect.StructOf' proposal:
https://golang.org/cl/9251
And perhaps, work on the 'plugin' package.
-s
sent from my droid
--
Hi,
I'd like to go forward with the 'reflect.StructOf' proposal:
https://golang.org/cl/9251And perhaps, work on the 'plugin' package.
The Go 1.6 release candidate is looking good. Hopefully in a few weeks it will be out, and we'll open the tree for Go 1.7 development. That makes now a good time to talk about what we want to do in Go 1.7 as far as technical work.
I'm interested in having a streaming interface added to encoding/gob and encoding/json so that there is no need to marshal/unmarshal data into/from a buffer before/after writing/reading. The current implementation is causing us some pain. If I can get in-principle agreement on this enhancement, I'll plan and scope out the work and either do it myself or assign one of my team to do it.
--
The first step is to file an issue describing what you'd like to add.After that we can determine whether a full proposal is required. (probably not)
The Go 1.6 release candidate is looking good. Hopefully in a few weeks it will be out, and we'll open the tree for Go 1.7 development. That makes now a good time to talk about what we want to do in Go 1.7 as far as technical work.Keith intends to merge the SSA-based compiler back end (amd64 only right now) into the main tree at the beginning of the Go 1.7 cycle. It works, and it generates code that on average runs about as fast as the current compiler. In many cases the SSA back end generates significantly better code than the old back end with little effect on performance: x86-64 chips (at least the server-class ones) are remarkably good at executing bad code quickly. We expect that the effect on non-x86 chips will be more pronounced, and there is still significant room for improvement in the x86 code quality, so we may yet see significant wins there. Unfortunately the SSA back end slows down the overall compilation by about 2x compared to using the old back end. This is not fundamental: we've spent almost all the development time focused on correctness and completeness, not on making it fast. The compiler work in the Go 1.7 cycle will focus on recovering much of that compile time loss.Robert has a new, more compact export format for the compilers nearly ready. This should speed compilation a small amount and save a bit of disk space, and it fixes a few small problems in the old format. But most importantly it gives us a much cleaner base on which to make future changes to the export data, which will make it easier to do more interprocedural optimizations like escape analysis and inlining that work no matter where package boundaries are.Rick and Austin have been working on further improvements to the garbage collector, especially in terms of throughput. That's a long effort and may not be ready for Go 1.7.Another effort we'd like to do for Go 1.7 (but don't have concrete plans for yet) is collection and display of historical performance data, as a replacement for the old performance dashboard we had that no longer runs. The part that I believe is most important is the separation of collection from display. We want to make it possible for anyone to run a benchmarking system, just as anyone can run a builder, and have all that data feed into a database of some kind that anyone can fetch (perhaps as a Git repository) and analyze. It requires significant expertise to collect useful data and it requires significant but different expertise to analyze and display it well, and we think that separating these two parts will help let experts make progress on their halves independently.In general I would encourage people once again to focus on cleanup and polish for Go 1.7. There are many parts of the tree that work but are not as good as they could be. For example we know that math/big is missing assembly support to varying degrees on some architectures. We also know there are many minor problems, missing examples, and so on that are significant collectively, even if not taken one at a time.
What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
David, do you mean gc or GC? (Capitals means garbage collector, lower is go compiler)
If GC, I don't know which bug you're talking about.
--
I second Brad's call for a focus on recovering the speed of the current compiler.
This is imperative to maintain Go’s web development demographic.
According to the commander in chief, "most Go programmers come from languages like Python and Ruby" and here is why: "Python and Ruby programmers come to Go because they don't have to surrender much expressiveness, but gain performance and get to play with concurrency." (http://commandcenter.blogspot.com/2012/06/less-is-exponentially-more.html)
When developing a web application or a software prototype, people need a "tight feedback loop".
Python and Ruby provide this near 0 second waiting time to see the results via interpretation.
2 seconds is a feedback loop too long.
Please do not drive these web developers back to use Python or Ruby.
I am not sure why Go is a must to compile Go. If the 2x slowdown cannot be recouped due to a switch from C to Go, then switching back to C does not seem like a crazy idea to me.
Even Swift uses C++ to compile itself. Can we be pragmatic and keep the developer (the end user) happy for what the language was designed for?
Thanks,
JPro
>Again, a reminder this is a thread for people working on Go.
You would have to define *working on Go* for that to work.
The Go 1.6 release candidate is looking good. Hopefully in a few weeks it will be out, and we'll open the tree for Go 1.7 development. That makes now a good time to talk about what we want to do in Go 1.7 as far as technical work.Keith intends to merge the SSA-based compiler back end (amd64 only right now) into the main tree at the beginning of the Go 1.7 cycle. It works, and it generates code that on average runs about as fast as the current compiler. In many cases the SSA back end generates significantly better code than the old back end with little effect on performance: x86-64 chips (at least the server-class ones) are remarkably good at executing bad code quickly. We expect that the effect on non-x86 chips will be more pronounced, and there is still significant room for improvement in the x86 code quality, so we may yet see significant wins there. Unfortunately the SSA back end slows down the overall compilation by about 2x compared to using the old back end. This is not fundamental: we've spent almost all the development time focused on correctness and completeness, not on making it fast. The compiler work in the Go 1.7 cycle will focus on recovering much of that compile time loss.Robert has a new, more compact export format for the compilers nearly ready. This should speed compilation a small amount and save a bit of disk space, and it fixes a few small problems in the old format. But most importantly it gives us a much cleaner base on which to make future changes to the export data, which will make it easier to do more interprocedural optimizations like escape analysis and inlining that work no matter where package boundaries are.Rick and Austin have been working on further improvements to the garbage collector, especially in terms of throughput. That's a long effort and may not be ready for Go 1.7.Another effort we'd like to do for Go 1.7 (but don't have concrete plans for yet) is collection and display of historical performance data, as a replacement for the old performance dashboard we had that no longer runs. The part that I believe is most important is the separation of collection from display. We want to make it possible for anyone to run a benchmarking system, just as anyone can run a builder, and have all that data feed into a database of some kind that anyone can fetch (perhaps as a Git repository) and analyze. It requires significant expertise to collect useful data and it requires significant but different expertise to analyze and display it well, and we think that separating these two parts will help let experts make progress on their halves independently.In general I would encourage people once again to focus on cleanup and polish for Go 1.7. There are many parts of the tree that work but are not as good as they could be. For example we know that math/big is missing assembly support to varying degrees on some architectures. We also know there are many minor problems, missing examples, and so on that are significant collectively, even if not taken one at a time.
What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
Please reply to this email thread and we'll make a doc out of the responses.Thanks.Russ
What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
The Go 1.6 release candidate is looking good. Hopefully in a few weeks it will be out, and we'll open the tree for Go 1.7 development. That makes now a good time to talk about what we want to do in Go 1.7 as far as technical work.Keith intends to merge the SSA-based compiler back end (amd64 only right now) into the main tree at the beginning of the Go 1.7 cycle. It works, and it generates code that on average runs about as fast as the current compiler. In many cases the SSA back end generates significantly better code than the old back end with little effect on performance: x86-64 chips (at least the server-class ones) are remarkably good at executing bad code quickly. We expect that the effect on non-x86 chips will be more pronounced, and there is still significant room for improvement in the x86 code quality, so we may yet see significant wins there. Unfortunately the SSA back end slows down the overall compilation by about 2x compared to using the old back end. This is not fundamental: we've spent almost all the development time focused on correctness and completeness, not on making it fast. The compiler work in the Go 1.7 cycle will focus on recovering much of that compile time loss.Robert has a new, more compact export format for the compilers nearly ready. This should speed compilation a small amount and save a bit of disk space, and it fixes a few small problems in the old format. But most importantly it gives us a much cleaner base on which to make future changes to the export data, which will make it easier to do more interprocedural optimizations like escape analysis and inlining that work no matter where package boundaries are.Rick and Austin have been working on further improvements to the garbage collector, especially in terms of throughput. That's a long effort and may not be ready for Go 1.7.Another effort we'd like to do for Go 1.7 (but don't have concrete plans for yet) is collection and display of historical performance data, as a replacement for the old performance dashboard we had that no longer runs. The part that I believe is most important is the separation of collection from display. We want to make it possible for anyone to run a benchmarking system, just as anyone can run a builder, and have all that data feed into a database of some kind that anyone can fetch (perhaps as a Git repository) and analyze. It requires significant expertise to collect useful data and it requires significant but different expertise to analyze and display it well, and we think that separating these two parts will help let experts make progress on their halves independently.In general I would encourage people once again to focus on cleanup and polish for Go 1.7. There are many parts of the tree that work but are not as good as they could be. For example we know that math/big is missing assembly support to varying degrees on some architectures. We also know there are many minor problems, missing examples, and so on that are significant collectively, even if not taken one at a time.
What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
Please reply to this email thread and we'll make a doc out of the responses.Thanks.Russ
--
You received this message because you are subscribed to the Google Groups "golang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
What are you planning to do in the Go 1.7 cycle?
I'd like to see net/context + net/http integration as per https://groups.google.com/forum/#!topic/golang-dev/TerfinvPffw (an associated issue does not seem to exist for it).
The Go 1.6 release candidate is looking good. Hopefully in a few weeks it will be out, and we'll open the tree for Go 1.7 development. That makes now a good time to talk about what we want to do in Go 1.7 as far as technical work.Keith intends to merge the SSA-based compiler back end (amd64 only right now) into the main tree at the beginning of the Go 1.7 cycle. It works, and it generates code that on average runs about as fast as the current compiler. In many cases the SSA back end generates significantly better code than the old back end with little effect on performance: x86-64 chips (at least the server-class ones) are remarkably good at executing bad code quickly. We expect that the effect on non-x86 chips will be more pronounced, and there is still significant room for improvement in the x86 code quality, so we may yet see significant wins there. Unfortunately the SSA back end slows down the overall compilation by about 2x compared to using the old back end. This is not fundamental: we've spent almost all the development time focused on correctness and completeness, not on making it fast. The compiler work in the Go 1.7 cycle will focus on recovering much of that compile time loss.Robert has a new, more compact export format for the compilers nearly ready. This should speed compilation a small amount and save a bit of disk space, and it fixes a few small problems in the old format. But most importantly it gives us a much cleaner base on which to make future changes to the export data, which will make it easier to do more interprocedural optimizations like escape analysis and inlining that work no matter where package boundaries are.Rick and Austin have been working on further improvements to the garbage collector, especially in terms of throughput. That's a long effort and may not be ready for Go 1.7.Another effort we'd like to do for Go 1.7 (but don't have concrete plans for yet) is collection and display of historical performance data, as a replacement for the old performance dashboard we had that no longer runs. The part that I believe is most important is the separation of collection from display. We want to make it possible for anyone to run a benchmarking system, just as anyone can run a builder, and have all that data feed into a database of some kind that anyone can fetch (perhaps as a Git repository) and analyze. It requires significant expertise to collect useful data and it requires significant but different expertise to analyze and display it well, and we think that separating these two parts will help let experts make progress on their halves independently.In general I would encourage people once again to focus on cleanup and polish for Go 1.7. There are many parts of the tree that work but are not as good as they could be. For example we know that math/big is missing assembly support to varying degrees on some architectures. We also know there are many minor problems, missing examples, and so on that are significant collectively, even if not taken one at a time.
What are you planning to do in the Go 1.7 cycle? Or what GitHub issues do we not have marked with a Go 1.7 milestone yet but merit one, in your opinion?
--
You received this message because you are subscribed to the Google Groups "golang-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I will bring external linking to linux/ppc64 and linux/mips64{,le}.I will also upstream the disassembler into x/arch and thenintegrate it into cmd/objdump. These should make linux/ppc64port more complete.Cherry and I also have plans for the linux/mips64 cgo support.