Hello.. I am still in look for a re-endrant version of glpk..
With the Google help I found:

"Probably I have been misunderstood. Multitasking does not assume
> reenterability and vice versa, so even if glpk routines were reentrant
> (which they will in the next release), this would not involve
> parallelizing the branch-and-bound. Reenterability simply means that
> the code does not modify static data like reusability means that the
> code does not modify itself. In principle, any code can be easily made
> reentrant by using appropriate programming technique, i.e.
> reenterability is a property of the code, not of the algorithm.
>
> Andrew Makhorin"
>

(http://osdir.com/ml/gnu.glpk/2003-10/msg00015.html)

I am little confused, as Iast year I asked the same thing and I got answered
that "non-reentrancy is only due to the LIBENV
structure (see glplib.h), which is shared among more problems."

I tried to have a look at the code even if I'm not a programmer.. on
glplib02.c there is:

 static void *tls = NULL;
/* in a re-entrant version of the package this variable must be placed
   in the Thread Local Storage (TLS) */

Of course I don't understand anything of it, but with the help of Wikipedia
I read that, at least in GNU/C++ you have to use the keyword "__thread" ...
so.. don't tell me that it is enought to have it like:  "static __thread
void *tls = NULL; " to have glpk re-endrant ?? Or it is already re-endrant
(it would be fantastic ;-) ) ??

Antonello

-- 
Antonello Lobianco
http://www.lobianco.org/antonello
antonello a.t lobianco.org
sip:[email protected] <sip%[email protected]>
_______________________________________________
Help-glpk mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-glpk

Reply via email to