On Thu, Nov 4, 2021 at 5:43 AM quin...@gmail.com <quint...@gmail.com> wrote:
> Hi, > > Has anyone got any experience of high performance image processing in go? > > By this I mean doing complex image processing in real time at 4K > resolution on commodity hardware. This is really pushing it using carefully > written C++ but when we tried writing similar code using go slices we go a > significant slowdown (x4 over gcc). > > We experimented using unsafe pointers thinking it is go's slice range > checking that cause the problems, but surprisingly saw no improvement. > > Has anyone had success saturating the memory bandwidth using go? Is my > result a surprise to people? Is it just that gcc's code generator is very > mature and Go's is less so, or should I keep looking for dropoffs in my > code? > This doesn't particularly surprise me. The Go GC compiler is optimised for fast compile-times and does very limited vectorization. I think the general advice in cases where one needs better optimization paths has been to use gccgo or gollvm (if possible). > > I haven't looked at the generated assembly yet, but that is my next step. > > Any opinions? > > -Steve > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/8419a816-8058-48c1-874b-09a34be0f3fcn%40googlegroups.com > <https://groups.google.com/d/msgid/golang-nuts/8419a816-8058-48c1-874b-09a34be0f3fcn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CANrC0Bgua02tU4h1QayM%2BHVmOWNznKnYiSdzFTsKkUT_wVZNYw%40mail.gmail.com.