GopherCon 2018 - CGo Performance

conference, golang, gophercon2018, notes

These are some notes from my experiences at the GopherCon 2018. I don’t expect these will be laid out in any particularly useful way; I am mostly taking them so I can remember some of the bits I found most useful in the future.


Calling Go from Pony

Why???

  • Wallaroo (go and python)
  • For “big data stuff”
  • Framework for horizontally scaling event stream processing

Performance

  • From cockroachdb blog post
  • Calling go -> go is ~2ns
  • Calling go -> C is ~171ns
  • Calling C -> go is ~1-6ms (milli, not micro)

    • WTF?!?!
    • Thread started outside go trying to call into go runtime
    • LOTS of work
  • Try to batch calls