Closed elieux closed 10 years ago
In the following commit I have made some tiny tweaks of this change (I removed waf from installed programs, because it is already shipped with Kaira and I split a long line because it does not fit into asciidoc html template, after running ./waf you can see generated html file in build directory)
For testing purpose, there is "tests" directory and "python alltests.py" should pass on a fully installed Kaira.
I ran the tests and I got one failure, in MpiBuildTest.
I noticed the tests require an X server. Is that by design, or should I open an issue for that?
What is your current MPI implementation? According to my testing this bug may be related with OpenMPI.
Tests build complete programs from .proj files to binary executables. It uses gui -> ptp -> gcc/make. We have a command line interface for GUI (building functions only) but it currently imports a big part of GUI including gtk. It would be quite a lot of work to separate it and I am not sure if it is worth it. So a dependency on X is not by design but we get used to live with it:)
Can you please in directory tests/projects/rpc/server run:
$ make mpi
$ CASERVER_PORT=40000 mpirun -np 4 ./rpc_server_mpi
It should do nothing (wait for connections) or write an error.
Did nothing.
Thank you. Please, while server is running, try to run in directory tests/projects/rpc
$ CACLIENT_HOST=localhost:40000 ./main
Ran it several times, output was this every time:
2000 31 31 9000 29700
I ran the tests again and the error was still there. I dug a little into the test code and after increasing the delay in Project.start_server, the test passed. Thank you for your help.
Thank you for your report. What is a sufficient delay value in your configuration?
So, I was finally able to figure it out. I couldn't reliably run the test because the rpc_server_mpi
process was staying alive after each successful test run, and was causing the next one to fail.
Sufficient delay for my setup turned out to be 1 second.
Thank you, I have increased sleep time to 1 second in the master branch.
I have compiled a short installation guide for Arch-based distributions. As for MPI implementation, I followed your choice of MPICH, but if ease of installation is to be preferred over consistency across distributions, it may be better to go with OpenMP, which is available as a binary package. I can test that combination on Arch, if you want.
Although the configuration script didn't complain, I'm not sure about octave and mhash, because I couldn't find any -dev packages. If you tell me how to test if the packages are sufficient for Kaira, I will do that.
I hope I don't have any typos in the package names.