[go: up one dir, main page]

parallelise 'enter_edge'

I’ve been looking at speeding up enter_edge with multithreading. This is conceptually straightforward and I was going to post it without a tracking issue, but getting this working cross platform is turning out to be fiddly.

It seems worthwhile to think about the higher level concerns this raises:

  • Do we want a way to compile-time switch off multithreading? I was assuming yes, and was planning a build switch for it.
  • Do we want to enable this in both Autotools and CMake? CMake is not so bad. Autotools looks like a heavy lift.
  • Do we want a command line option to control this? I was assuming yes, something like -j … that defaults to the number of CPUs you have.

These questions are coming up because this would be the first use of multithreading in Graphviz.