GMUEClab / ecj

ECJ Evolutionary Computation Toolkit
http://cs.gmu.edu/~eclab/projects/ecj/
123 stars 42 forks source link

Are there issues with `eval.compression = true`? #81

Open ZvikaZ opened 2 years ago

ZvikaZ commented 2 years ago

I've seen https://github.com/GMUEClab/ecj/issues/52 - add zlib to pom.xml, which was closed as fixed by https://github.com/GMUEClab/ecj/commit/2c1020eba9623025f3dfdb95fabc4f28243738b4.

However, zlib was later removed from pom.xml, by https://github.com/GMUEClab/ecj/commit/59bcaf1c043bddea4a40cca2ff65dcc68d94429c , with the alarming comment:

Remove JZlib from POM. New version of JZlib that are available in the Maven central repo cause obscure errors in ECJ's distributed evolution functionality. Since master-worker communication is no longer compressed by default, it seems better to ship the Maven without JZlib.

However, I haven't seen any open issue regarding this.

So, my questions:

  1. Is it safe to use eval.compression = true?
  2. What JZlib version is recommended? I'm currently using com.jcraft/jzlib/1.1.3 ; there seem to be other jzlib implementation with other groupIds.
  3. If compression is currently not safe, I think it's better to disable it altogether, until it will be fixed.
  4. If compression is safe, I think it's better to return jzlib to pom.xml

Thanks