rudi-cilibrasi / classic-complearn

The pre-2015 version of libcomplearn, a data-compression based machine learning library. Minor bugfixes for legacy code.
Other
1 stars 0 forks source link

Binary Output writes nothing #2

Closed davidmascharka closed 7 years ago

davidmascharka commented 7 years ago

I'm having some trouble getting ncd to actually write binary output. On my local machine, complearn and qsearch work perfectly and I'm able to generate an output matrix with

ncd -d examples/10-mammals examples/10-mammals -b

However, I've installed complearn on an AWS machine (c4.4xlarge) and even though I get valid output to stdout, no binary distance matrix file is created. Here's the stdout output from that machine:

ncd -d 10-mammals/ 10-mammals/ -b
blueWhale 0.000000 0.919028 0.614154 0.893007 0.923245 0.906680 0.901882 0.923490 0.891838 0.921037 
mouse 0.915612 0.000000 0.928828 0.919107 0.931597 0.912967 0.926512 0.934022 0.917987 0.845826 
finWhale 0.606357 0.922631 0.000000 0.897390 0.922649 0.908055 0.897241 0.926669 0.900357 0.919432 
graySeal 0.902570 0.924487 0.908946 0.000000 0.928216 0.878782 0.889022 0.925278 0.383320 0.919705 
human 0.923842 0.936966 0.927620 0.930205 0.000000 0.931827 0.923842 0.659181 0.924921 0.934381 
cat 0.903929 0.916896 0.911788 0.866012 0.926719 0.000000 0.887623 0.922004 0.869352 0.914931 
horse 0.889467 0.916900 0.890444 0.880056 0.919467 0.877014 0.000000 0.920707 0.875792 0.906488 
chimpanzee 0.917329 0.927266 0.921701 0.919714 0.651630 0.923772 0.921502 0.000000 0.914620 0.925477 
harborSeal 0.893819 0.916204 0.907884 0.385103 0.924128 0.872102 0.882726 0.919176 0.000000 0.914620 
rat 0.916817 0.847857 0.918233 0.913329 0.927023 0.916699 0.913696 0.926073 0.911846 0.000000

Is there any straightforward reason it might fail to create the binary file on the AWS machine but run on my own?

My machine is a Lenovo x260 running ArchLinux. The AWS machine is a c4.4xlarge machine running Ubuntu 16.04.

rudi-cilibrasi commented 7 years ago

Thank you for this bug report.

I have not compiled nor tested classic complearn with the native 16.04 versions of libraries yet. For me, it does not compile using the 1.1.7 distribution and I had not yet decided that the classic complearn necessarily needs updating ever again since the docker solution became available in 2015. I run 16.04 also however whenever I use complearn I run it from the docker image documented in the page http://complearn.org/quickstart.html

I would suspect using docker on AWS should work fine anywhere. You can use docker host mounts to get files in and out of the docker container or use docker cp commands. Please let me know if this solution works for you.

davidmascharka commented 7 years ago

The docker image does produce the output I'd expect. Much appreciated!