Re: Pthread Library - SGI
This is a discussion on Re: Pthread Library - SGI ; Hi,
Thanks for the information. Pthread library is available for Irix6.5
the most stable version of Irix6.x. I tried to take that library and
put in Irix5.3. It is not able to resolve following symbols used in
that library,
__test_and_set32
...
-
Re: Pthread Library
Hi,
Thanks for the information. Pthread library is available for Irix6.5
the most stable version of Irix6.x. I tried to take that library and
put in Irix5.3. It is not able to resolve following symbols used in
that library,
__test_and_set32
__test_then_add32
__add_then_test32
__vp_active
Probably these symbols are defined in some other library. I want to
know, in which library of Irix6.5 they are defined, so that I can try
to bring that library also and run it on Irix5.3
I was able to use this approach to resolve __libc_attr, for which
someone has put a .c file on www. But I am not able to find such files
for these symbols.
How can I find this or is anything wrong with my approach? I believe
that there will be support in hardware for these atomic instructions
as Irix simulates sprocs. The only thing missing should be the
software part.
I will appreciate if you correct me or help me out.
Thanks,
Nitin
roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson) wrote in message news:...
> In article <7e16d4b1.0307121512.33502f0@posting.google.com>,
> Nitin Gupta wrote:
> :I want to install pthread library on Irix5.3. Can you tell me from
> :where I can get it?
>
> It does not exist. IRIX 6.2 was the first IRIX with pthread.
>
> See also,
>
> http://groups.google.ca/groups?hl=en...do.asd.sgi.com
-
Re: Pthread Library
IRIX 6.5 libpthread.so requires pthread support in kernel, which IRIX
5.3 doesn't have - you can't make the 6.5 version work on 5.3. Most
every SGI machine since Indigo R4K can run IRIX 6.5, so you should be
able to upgrade.
Ralph
ngupta@paul.rutgers.edu (Nitin Gupta) wrote:
> Hi,
> Thanks for the information. Pthread library is available for Irix6.5
> the most stable version of Irix6.x. I tried to take that library and
> put in Irix5.3. It is not able to resolve following symbols used in
> that library,
> __test_and_set32
> __test_then_add32
> __add_then_test32
> __vp_active
>
> Probably these symbols are defined in some other library. I want to
> know, in which library of Irix6.5 they are defined, so that I can try
> to bring that library also and run it on Irix5.3
>
> I was able to use this approach to resolve __libc_attr, for which
> someone has put a .c file on www. But I am not able to find such files
> for these symbols.
>
> How can I find this or is anything wrong with my approach? I believe
> that there will be support in hardware for these atomic instructions
> as Irix simulates sprocs. The only thing missing should be the
> software part.
>
> I will appreciate if you correct me or help me out.
>
> Thanks,
> Nitin
>
>
> roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson) wrote in message
> news:...
> > In article <7e16d4b1.0307121512.33502f0@posting.google.com>,
> > Nitin Gupta wrote:
> > :I want to install pthread library on Irix5.3. Can you tell me from
> > :where I can get it?
> >
> > It does not exist. IRIX 6.2 was the first IRIX with pthread.
> >
> > See also,
> >
> > http://groups.google.ca/groups?hl=en...do.asd.sgi.com
-
Re: Pthread Library
In article <7e16d4b1.0307131653.20cac6dd@posting.google.com>,
Nitin Gupta wrote:
:Thanks for the information. Pthread library is available for Irix6.5
:the most stable version of Irix6.x. I tried to take that library and
ut in Irix5.3. It is not able to resolve following symbols used in
:that library,
:__test_and_set32
:__test_then_add32
:__add_then_test32
:__vp_active
:Probably these symbols are defined in some other library. I want to
:know, in which library of Irix6.5 they are defined, so that I can try
:to bring that library also and run it on Irix5.3
They are not defined in any IRIX 5.3 library. They are nominally
defined in libc in IRIX 6.5, but if I follow correctly, they are
hooks for kernel routines.
:I was able to use this approach to resolve __libc_attr, for which
:someone has put a .c file on www. But I am not able to find such files
:for these symbols.
That "someone" was me, and __libc_attr was easy because it was all
user-level data. Any routine involving *test*32 is going to require
using an atomic hardware instruction to achieve the mutex. My
recollection is that the R3000 does not have the necessary
atomic hardware instructions.
:How can I find this or is anything wrong with my approach? I believe
:that there will be support in hardware for these atomic instructions
:as Irix simulates sprocs.
That's where your approach failed. The R3000 hardware does NOT
have the instructions.
http://www.kaffe.org/pipermail/kaffe...ry/007101.html
--
Warning: potentially contains traces of nuts.
-
Re: Pthread Library
Knowing far too much about this subject, I will second Ralph's statement.
It is completely impossible to get a 6.5.x libpthread working on IRIX 5.3
due to library-kernel interaction. The threading model for Pthreads
changed in very fundamental ways, and there is simply none of the necessary
kernel infrastructure in 6.4/6.3, let alone anything earlier.
Sorry,
Brent
On Mon, 14 Jul 2003, Ralph Thomas wrote:
> IRIX 6.5 libpthread.so requires pthread support in kernel, which IRIX
> 5.3 doesn't have - you can't make the 6.5 version work on 5.3. Most
> every SGI machine since Indigo R4K can run IRIX 6.5, so you should be
> able to upgrade.
>
> Ralph
>
>
> ngupta@paul.rutgers.edu (Nitin Gupta) wrote:
>
> > Hi,
> > Thanks for the information. Pthread library is available for Irix6.5
> > the most stable version of Irix6.x. I tried to take that library and
> > put in Irix5.3. It is not able to resolve following symbols used in
> > that library,
> > __test_and_set32
> > __test_then_add32
> > __add_then_test32
> > __vp_active
> >
> > Probably these symbols are defined in some other library. I want to
> > know, in which library of Irix6.5 they are defined, so that I can try
> > to bring that library also and run it on Irix5.3
> >
> > I was able to use this approach to resolve __libc_attr, for which
> > someone has put a .c file on www. But I am not able to find such files
> > for these symbols.
> >
> > How can I find this or is anything wrong with my approach? I believe
> > that there will be support in hardware for these atomic instructions
> > as Irix simulates sprocs. The only thing missing should be the
> > software part.
> >
> > I will appreciate if you correct me or help me out.
> >
> > Thanks,
> > Nitin
> >
> >
> > roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson) wrote in message
> > news:...
> > > In article <7e16d4b1.0307121512.33502f0@posting.google.com>,
> > > Nitin Gupta wrote:
> > > :I want to install pthread library on Irix5.3. Can you tell me from
> > > :where I can get it?
> > >
> > > It does not exist. IRIX 6.2 was the first IRIX with pthread.
> > >
> > > See also,
> > >
> > > http://groups.google.ca/groups?hl=en...do.asd.sgi.com
>
>
>
--
Brent Casavant Silicon Graphics, Inc. Where am I? And what am I
IRIX O.S. Engineer http://www.sgi.com/ doing in this handbasket?
bcasavan@sgi.com 44.8562N 93.1355W 860F -- Unknown
-
Re: Pthread Library
In article ,
Walter Roberson wrote:
>In article <7e16d4b1.0307131653.20cac6dd@posting.google.com>,
>Nitin Gupta wrote:
>:Thanks for the information. Pthread library is available for Irix6.5
>:the most stable version of Irix6.x. I tried to take that library and
>
ut in Irix5.3. It is not able to resolve following symbols used in
>:that library,
>:__test_and_set32
>:__test_then_add32
>:__add_then_test32
>:__vp_active
>
>:Probably these symbols are defined in some other library. I want to
>:know, in which library of Irix6.5 they are defined, so that I can try
>:to bring that library also and run it on Irix5.3
>That's where your approach failed. The R3000 hardware does NOT
>have the instructions.
Since IRIX 6.5 we've been compiling everything MIPS2 or higher.
But the R3000 is MIPS1.
So no IRIX 6.5 library is likely to work on an R3000!
(And of course folks comments about kernel interactions
are correct, so even if libpthread.so in 6.5 were MIPS1 it won't help
on an R3000.)
There are also rld(1) interactions with pthreads, libc interactions, ....
IRIX 6.2 is a better bet. I mean install 6.2, drop 5.3.
But then why use R3000? Any R4K system is 4-5x faster (still
not fast, but good grief, R3000....???)
davea@sgi.com
-
Re: Pthread Library
Hi,
I appreciate your help for resoving my doubts.
I think I have no other option left, rather to change my code which
uses pthreads to use sprocs. I have following issues in mind:
- Is there difference between the usage of sprocs in Irix5.3 and
Irix6.5?
Actually the problem is, I only have Irix6.5 machine with me, I have
to use the SIMOS simulator which simulates only Irix5.3. Till now what
I was doing is, I compile my application in Irix6.5 with -o32 option
and run it on Irix5.3. I was able to do for smaller application. Can
this be done in the case of code using sprocs?
- Can you direct me to any reference material for how to use sproc in
Irix5.3?
Thanks again,
Nitin Gupta
roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson) wrote in message news:...
> In article <7e16d4b1.0307140758.7921e234@posting.google.com>,
> Nitin Gupta wrote:
> :Thank you for the information. It surprises me that Irix5.3 doesn't
> :have test_and_set hardware atomic instruction.
>
> IRIX 5.3 runs on R3000 machines, and those do not have the instructions.
>
> :Actually I was using SIMOS simulator by stanford univ. It only
> :simulates Irix5.3 kernel. The application I want to test uses pthreads
> :for which the support in Irix5.3 doesn't exist.
>
> :Can you tell me, is there any thread library in Irix5.3 or we cannot
> :have threads in Irix5.3?
>
> According to previous postings, there was a limited Ada thread library,
> for use with Ada programs only.
>
> Other than that, you have to use sproc() instead of threads. sproc
> and pthreads have fairly different semantics.