"J . A . Magallon" wrote:
> 
> On 20010613 Kurt Garloff wrote:
> >
> > What I do in my numerics code to avoid this problem, is to create all the
> > threads (as many as there are CPUs) on program startup and have then wait
> > (block) for a condition. As soon as there's something to to, variables for
> > the thread are setup (protected by a mutex) and the thread gets signalled
> > (cond_signal).
> > If you're interested in the code, tell me.
> >
> 
> I use the reverse approach. you feed work to the threads, I create the threads
> and let them ask for work to a master until it says 'done'. When the
> master is queried for work, it locks a mutex, decide the next work for
> that thread, and unlocks it. I think it gives the lesser contention and
> is simpler to manage.
> 

        BTW. 
        Question was poping in my mind and finally got negative answer by my mind ;-)

        Is it possible to make somethis like:


        char a[100] = {...}
        char b[100] = {...}
        char c[100];
        char d[100];
        
        1: { // run this on first CPU
                for (int i=0; i<100; i++) c[i] = a[i] + b[i];
        };
        2: { // run this on any other CPU
                for (int i=0; i<100; i++) d[i] = a[i] * b[i];
        };
        
        ...
        // do something else...
        ...
        
        wait 1,2; // to be sure c[] and d[] are ready.


        what was popping in my mind - some prefix (like 0x66 Intel used for 32
instructions) to say this instruction should run on other CPU?
        I know - stupid idea. Too many questions will arise. 
        If we will do 

        PREFIX jmp far some_routing

        and this routing will run on other CPU not blocking current execution thread.
        (who will clean stack? when?.. question without answers...)

        Is there anything like this in computerworld? I heard about old computers that
have a speacial instruction set to implicit run code on given processor.
        Is it possible to emulate this behavior on PCs?
begin:vcard 
n:Filiapau;Ihar
tel;pager:+375 (0) 17 2850000#6683
tel;fax:+375 (0) 17 2841537
tel;home:+375 (0) 17 2118441
tel;work:+375 (0) 17 2841371
x-mozilla-html:TRUE
url:www.iph.to
org:Enformatica Ltd.;Linux Developement Department
adr:;;Kalinine str. 19-18;Minsk;BY;220012;Belarus
version:2.1
email;internet:[EMAIL PROTECTED]
title:Software Developer
note:(none)
x-mozilla-cpt:;18368
fn:Philips
end:vcard

Reply via email to