NetSolve is a project that aims to bring together disparate computational resources connected by computer networks. It is a RPC based client/agent/server system that allows one to remotely access both hardware and software components.
I provide here a patched version of NetSolve-1.4.1 which works with Scilab : NetSolve-1.4.1 for Scilab
This patched version will work with a Scilab cvs version (Sept 23 2002 or newer. For example, it is supposed to work with the rpm provided in this page) and I have only tested the code on Linux (RedHat 7.3).
A make scilab
target is added in the NetSolve-1.4.1 Makefiles, and
using make scilab
should build a Scilab toolbox as a shared library.
<li>You can then test scilab/netsolve using make tests
in the
directory NetSolve-1.4.1/src/Testing/scilab
. make tests
will
test some blas routines, ma28 and superlu solvers (assuming that
ma28 and superlu solvers are present on the netsolve servers you are using).
A lapack_test.tst
file is also provided, but with at least one
uncorrected bug (A first call to netsolve('dgesv',a,b)
returns a
wrong result and subsequent calls return correct results).
feebacks are welcome.
You can also manually run a scilab test just be executing one of the .tst
script (NetSolve-1.4.1/src/Testing/scilab/*.tst
) in Scilab :
clio% scilab -nw ========== Scilab ========== scilab-2.7-CVS Copyright (C) 1989-2002 INRIA/ENPC Startup execution: loading initial environment -->exec ma28.tst -->// test for MA28 -->exec('loader.sce'); shared archive loaded -->//[A,rhs] = generate(1); -->//A1=mtlb_sparse(A); -->N=20; -->A= int(N*sprand(N,N,95/100)); -->A1=mtlb_sparse(A); -->rhs = ones(N,1); -->x = netsolve('sparse_direct_solve','MA28',A1,rhs,0.3,1); Sending Input to Server clio.enpc.fr Downloading Output from Server clio.enpc.fr -->if netsolve_check(0)== %f then pause,end -->r = norm(full(A*x-rhs))/(norm(full(A))*norm(full(x))*%eps); -->if r>50 then pause,end
The netsolve toolbox is loaded in Scilab by executing
the loader.sce
script file found in
NetSolve-1.4.1/bin/xxxx/loader.sce
where xxx
is to be replaced by the proper bin
architecture. For example, on my Linux machine, the
NetSolve binaries are stored in
NetSolve-1.4.1/bin/i686_pc_linux_gnu/
and the toolbox Scilab loader is installed in that directory.